using System; using System.Collections.Generic; using System.Data; using System.Linq; namespace BLL { public class CQMS_MainPlanApproveService { public static Model.SGGLDB db = Funs.DB; /// /// 获取总包施工计划模板列表 /// /// /// /// public static DataTable getListData(string MainPlanId) { var res = from x in db.Plan_MainPlanApprove where x.MainPlanId == MainPlanId && x.ApproveDate != null && x.ApproveType != "S" orderby x.ApproveDate select new { x.MainPlanApproveId, x.MainPlanId, ApproveMan = (from y in db.Person_Persons where y.PersonId == x.ApproveMan select y.PersonName).First(), x.ApproveDate, x.IsAgree, x.ApproveIdea, x.ApproveType, }; return Funs.LINQToDataTable(res); } /// /// 根据总包施工计划编号删除对应的所有总包施工计划审批信息 /// /// 总包施工计划编号 public static void DeleteMainPlanApprovesByMainPlanId(string MainPlanId) { Model.SGGLDB db = Funs.DB; var q = (from x in db.Plan_MainPlanApprove where x.MainPlanId == MainPlanId select x).ToList(); db.Plan_MainPlanApprove.DeleteAllOnSubmit(q); db.SubmitChanges(); } /// /// 获取登录人的通知信息 /// /// /// /// public static IQueryable getList(string userId) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { var res = from x in db.Plan_MainPlanApprove join ca in db.Plan_MainPlan on x.MainPlanId equals ca.MainPlanId where x.ApproveDate == null && x.ApproveType == "S" && x.ApproveMan == userId orderby x.ApproveDate select new { //x.MainPlanApproveId, x.MainPlanId, //x.ApproveDate, //x.IsAgree, //x.ApproveIdea, //x.ApproveType, }; return res.AsQueryable().Distinct(); } } /// /// 更新通知信息提醒 /// /// /// /// public static Model.Plan_MainPlanApprove GetSee(string MainPlanId, string userId) { return db.Plan_MainPlanApprove.FirstOrDefault(x => x.MainPlanId == MainPlanId && x.ApproveType == "S" && x.ApproveMan == userId && x.ApproveDate == null); } public static void See(string MainPlanId, string userId) { using (var db = new Model.SGGLDB(Funs.ConnString)) { var res = db.Plan_MainPlanApprove.FirstOrDefault(x => x.MainPlanId == MainPlanId && x.ApproveType == "S" && x.ApproveMan == userId && x.ApproveDate == null); if (res != null) { res.ApproveDate = DateTime.Now; db.SubmitChanges(); } } } /// /// 根据总包施工计划编号获取一个总包施工计划审批信息 /// /// 总包施工计划编号 /// 一个总包施工计划审批实体 public static Model.Plan_MainPlanApprove GetMainPlanApproveByMainPlanId(string MainPlanId) { return db.Plan_MainPlanApprove.FirstOrDefault(x => x.MainPlanId == MainPlanId && x.ApproveType != "S" && x.ApproveDate == null); } /// /// 根据总包施工计划编号获取总包施工计划审批信息集合 /// /// 总包施工计划编号 /// 总包施工计划审批集合 public static List GetMainPlanApprovesByMainPlanId(string MainPlanId) { return (from x in db.Plan_MainPlanApprove where x.MainPlanId == MainPlanId && x.ApproveType != "S" && x.ApproveDate == null select x).ToList(); } public static Model.Plan_MainPlanApprove GetAuditMan(string MainPlanId, string state) { return db.Plan_MainPlanApprove.OrderByDescending(x => x.ApproveDate).FirstOrDefault(x => x.MainPlanId == MainPlanId && x.ApproveType == state); } public static string GetHandleManName(string MainPlanId) { string name = string.Empty; var a = Funs.DB.Plan_MainPlanApprove.FirstOrDefault(x => x.MainPlanId == MainPlanId && x.ApproveDate == null); if (a != null) { name = BLL.Person_PersonsService.GetPersonsNameById(a.ApproveMan); } return name; } /// /// 修改总包施工计划审批信息 /// /// 总包施工计划审批实体 public static void UpdateMainPlanApprove(Model.Plan_MainPlanApprove approve) { Model.SGGLDB db = Funs.DB; Model.Plan_MainPlanApprove newApprove = db.Plan_MainPlanApprove.First(e => e.MainPlanApproveId == approve.MainPlanApproveId && e.ApproveDate == null); newApprove.MainPlanId = approve.MainPlanId; newApprove.ApproveMan = approve.ApproveMan; newApprove.ApproveDate = approve.ApproveDate; newApprove.ApproveIdea = approve.ApproveIdea; newApprove.IsAgree = approve.IsAgree; newApprove.ApproveType = approve.ApproveType; db.SubmitChanges(); } /// /// 增加总包施工计划审批信息 /// /// 总包施工计划审批实体 public static void AddMainPlanApprove(Model.Plan_MainPlanApprove approve) { Model.SGGLDB db = Funs.DB; string newKeyID = SQLHelper.GetNewID(typeof(Model.Plan_MainPlanApprove)); Model.Plan_MainPlanApprove newApprove = new Model.Plan_MainPlanApprove(); newApprove.MainPlanApproveId = newKeyID; newApprove.MainPlanId = approve.MainPlanId; newApprove.ApproveMan = approve.ApproveMan; newApprove.ApproveDate = approve.ApproveDate; newApprove.ApproveIdea = approve.ApproveIdea; newApprove.IsAgree = approve.IsAgree; newApprove.ApproveType = approve.ApproveType; db.Plan_MainPlanApprove.InsertOnSubmit(newApprove); db.SubmitChanges(); } /// /// 施工经理审核信息 /// /// /// public static Model.Plan_MainPlanApprove GetAudit1(string MainPlanId) { return db.Plan_MainPlanApprove.OrderByDescending(x => x.ApproveDate).FirstOrDefault(x => x.MainPlanId == MainPlanId && x.ApproveType == BLL.Const.MainPlan_Audit1); } /// /// 部门评审小组审批信息 /// /// /// public static List GetAudit3s(string MainPlanId) { return (from x in Funs.DB.Plan_MainPlanApprove where x.MainPlanId == MainPlanId && x.ApproveType == BLL.Const.MainPlan_Audit3 select x).ToList(); } /// /// 部门评审小组审批完成信息 /// /// /// public static List GetAudit3Ends(string MainPlanId) { return (from x in Funs.DB.Plan_MainPlanApprove where x.MainPlanId == MainPlanId && x.ApproveType == BLL.Const.MainPlan_Audit3 && x.ApproveDate != null select x).ToList(); } /// /// 根据人员Id获取审批待办信息 /// /// /// /// public static Model.Plan_MainPlanApprove GetAudit3(string MainPlanId, string userId) { return db.Plan_MainPlanApprove.FirstOrDefault(x => x.MainPlanId == MainPlanId && x.ApproveMan == userId && x.ApproveDate == null); } /// /// 部门评审小组审批人员Id集合 /// /// /// public static List GetAudit3PersonIds(string MainPlanId) { return (from x in db.Plan_MainPlanApprove where x.MainPlanId == MainPlanId && x.ApproveType == BLL.Const.MainPlan_Audit3 select x.ApproveMan).ToList(); } public static Model.Plan_MainPlanApprove GetComplie(string MainPlanId) { return db.Plan_MainPlanApprove.FirstOrDefault(x => x.MainPlanId == MainPlanId && x.ApproveType == BLL.Const.MainPlan_Compile); } public static List getApproveListDataByIdForApi(string MainPlanId) { using (var db = new Model.SGGLDB(Funs.ConnString)) { var q = from x in db.Plan_MainPlanApprove where x.MainPlanId == MainPlanId && x.ApproveDate != null && x.ApproveType != "S" orderby x.ApproveDate select new { x.MainPlanApproveId, x.MainPlanId, ApproveMan = (from y in db.Person_Persons where y.PersonId == x.ApproveMan select y.PersonName).First(), x.ApproveDate, x.IsAgree, x.ApproveIdea, x.ApproveType, }; List res = new List(); var list = q.ToList(); foreach (var item in list) { Model.Plan_MainPlanApprove cd = new Model.Plan_MainPlanApprove(); cd.MainPlanApproveId = item.MainPlanApproveId; cd.MainPlanId = item.MainPlanId; cd.ApproveMan = item.ApproveMan; cd.ApproveDate = item.ApproveDate; cd.IsAgree = item.IsAgree; cd.ApproveIdea = item.ApproveIdea; cd.ApproveType = item.ApproveType + "$" + CQMS_MainPlanService.ConvertState(item.ApproveType); res.Add(cd); } return res; } } } }