using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace BLL.CQMS.ProcessControl { public class InspectionManagementApproveService { public static void DeleteAllApproveDetail(string InspectionId) { Model.SGGLDB db = Funs.DB; var q = (from x in db.ProcessControl_InspectionManagementApprove where x.InspectionId == InspectionId select x).ToList(); db.ProcessControl_InspectionManagementApprove.DeleteAllOnSubmit(q); db.SubmitChanges(); } public static Model.ProcessControl_InspectionManagementApprove GetSee(string InspectionId, string userId) { Model.SGGLDB db = Funs.DB; return db.ProcessControl_InspectionManagementApprove.FirstOrDefault(x => x.InspectionId == InspectionId && x.ApproveType == "S" && x.ApproveMan == userId && x.ApproveDate == null); } public static void See(string InspectionId, string userId) { using (var db = new Model.SGGLDB(Funs.ConnString)) { var res = db.ProcessControl_InspectionManagementApprove.FirstOrDefault(x => x.InspectionId == InspectionId && x.ApproveType == "S" && x.ApproveMan == userId && x.ApproveDate == null); if (res != null) { res.ApproveDate = DateTime.Now; db.SubmitChanges(); } } } public static IList getListData(string InspectionId) { Model.SGGLDB db = Funs.DB; var res = from x in db.ProcessControl_InspectionManagementApprove where x.InspectionId == InspectionId && x.ApproveDate != null && x.ApproveType != "S" orderby x.ApproveDate select x; return res.ToList(); } /// /// 根据施工方案发布Id获取对应组会签人id集合信息 /// /// 施工方案发布Id /// 施工方案审批集合 public static List GetUserIdsApprovesBySignType(string InspectionId, string signType) { return (from x in Funs.DB.ProcessControl_InspectionManagementApprove where x.InspectionId == InspectionId && x.ApproveType != "S" && x.SignType == signType select x.ApproveMan).ToList(); } /// /// 修改施工方案审批信息 /// /// 施工方案审批实体 public static void UpdateApprove(Model.ProcessControl_InspectionManagementApprove approve) { Model.SGGLDB db = Funs.DB; Model.ProcessControl_InspectionManagementApprove newApprove = db.ProcessControl_InspectionManagementApprove.FirstOrDefault(e => e.InspectionManagementApproveId == approve.InspectionManagementApproveId); newApprove.InspectionId = approve.InspectionId; newApprove.ApproveMan = approve.ApproveMan; newApprove.ApproveDate = approve.ApproveDate; newApprove.ApproveIdea = approve.ApproveIdea; newApprove.IsAgree = approve.IsAgree; newApprove.ApproveType = approve.ApproveType; newApprove.Edition = approve.Edition; db.SubmitChanges(); } public static List GetHandleConstruct(string InspectionId) { var list = Funs.DB.ProcessControl_InspectionManagementApprove.Where(p => p.InspectionId == InspectionId && p.ApproveType != "S" && p.ApproveDate != null ).ToList(); return list; } public static Model.ProcessControl_InspectionManagementApprove GetState(string InspectionId) { var q = from x in Funs.DB.ProcessControl_InspectionManagementApprove where x.InspectionId == InspectionId && x.ApproveType != "S" orderby x.ApproveDate descending select x; var res = q.ToList(); if (res != null && res.Count > 0) { var q1 = res.Where(x => x.ApproveDate == null); var res1 = q1.FirstOrDefault(); if (res1 != null) { return res1; } else { var q2 = res.Where(x => x.ApproveDate != null); var res2 = q2.FirstOrDefault(); if (res2 != null) { return res2; } else { return null; } } } else { return null; } } public static Model.ProcessControl_InspectionManagementApprove GetCurrentApprove(string InspectionId) { var q = from x in Funs.DB.ProcessControl_InspectionManagementApprove where x.InspectionId == InspectionId && x.ApproveType != "S" && x.ApproveDate == null select x; return q.FirstOrDefault(); } public static Model.ProcessControl_InspectionManagementApprove GetApproveByApproveMan(string InspectionId, string approveMan) { return Funs.DB.ProcessControl_InspectionManagementApprove.FirstOrDefault(x => x.InspectionId == InspectionId && x.ApproveMan == approveMan && x.ApproveType != "S" && x.ApproveDate == null); } /// /// 增加施工方案审批信息 /// /// 施工方案审批实体 public static void AddApprove(Model.ProcessControl_InspectionManagementApprove approve) { var db = Funs.DB; Model.ProcessControl_InspectionManagementApprove newApprove = new Model.ProcessControl_InspectionManagementApprove(); if (string.IsNullOrWhiteSpace(approve.InspectionManagementApproveId)) { newApprove.InspectionManagementApproveId = SQLHelper.GetNewID(typeof(Model.ProcessControl_InspectionManagementApprove)); } else { newApprove.InspectionManagementApproveId = approve.InspectionManagementApproveId; } newApprove.InspectionId = approve.InspectionId; newApprove.ApproveMan = approve.ApproveMan; newApprove.ApproveDate = approve.ApproveDate; newApprove.ApproveIdea = approve.ApproveIdea; newApprove.IsAgree = approve.IsAgree; newApprove.ApproveType = approve.ApproveType; newApprove.SignType = approve.SignType; newApprove.Edition = approve.Edition; db.ProcessControl_InspectionManagementApprove.InsertOnSubmit(newApprove); db.SubmitChanges(); } } }