using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections; namespace BLL { /// /// 重大施工方案审批 /// public static class MajorPlanApprovalService { public static Model.SGGLDB db = Funs.DB; /// /// 记录数 /// private static int count { get; set; } /// /// 获取分页列表 /// /// /// /// /// /// /// public static IEnumerable GetListData(string projectId, string unitId, string cNProfessionalId, string UnitWorkId, int startRowIndex, int maximumRows) { IQueryable q = from x in db.Comprehensive_MajorPlanApproval where x.ProjectId == projectId orderby x.ApprovalDate descending select x; if (unitId != "0") { q = q.Where(e => e.UnitId == unitId); } if (cNProfessionalId != "0") { q = q.Where(e => e.CNProfessionalId == cNProfessionalId); } if (UnitWorkId != "0") { q = q.Where(e => e.UnitWorkId.Contains(UnitWorkId)); } count = q.Count(); if (count == 0) { return new object[] { "" }; } return from x in q.Skip(startRowIndex).Take(maximumRows) select new { x.MajorPlanApprovalId, x.ProjectId, UnitName = (from y in db.Base_Unit where y.UnitId == x.UnitId select y.UnitName).FirstOrDefault(), ProfessionalName = (from y in db.Base_CNProfessional where y.CNProfessionalId == x.CNProfessionalId select y.ProfessionalName).FirstOrDefault(), x.PlanCode, x.PlanName, x.ReviewMan, x.ApprovalDate, x.AuditMan, UnitWorkName = x.UnitWorkId != null ? BLL.UnitWorkService.GetUnitWorkName(x.UnitWorkId) : null, x.ApprovalMan, x.ImplementationDeviation, x.AttachUrl }; } /// /// 获取分页列表数 /// /// /// /// /// public static int GetListCount(string projectId, string unitId, string cNProfessionalId, string UnitWorkId) { return count; } /// /// 根据主键获取重大施工方案审批 /// /// /// public static Model.Comprehensive_MajorPlanApproval GetMajorPlanApprovalById(string majorPlanApprovalId) { return Funs.DB.Comprehensive_MajorPlanApproval.FirstOrDefault(e => e.MajorPlanApprovalId == majorPlanApprovalId); } /// /// 添加重大施工方案审批 /// /// public static void AddMajorPlanApproval(Model.Comprehensive_MajorPlanApproval majorPlanApproval) { Model.SGGLDB db = Funs.DB; Model.Comprehensive_MajorPlanApproval newMajorPlanApproval = new Model.Comprehensive_MajorPlanApproval(); newMajorPlanApproval.MajorPlanApprovalId = majorPlanApproval.MajorPlanApprovalId; newMajorPlanApproval.ProjectId = majorPlanApproval.ProjectId; newMajorPlanApproval.UnitId = majorPlanApproval.UnitId; newMajorPlanApproval.CNProfessionalId = majorPlanApproval.CNProfessionalId; newMajorPlanApproval.PlanCode = majorPlanApproval.PlanCode; newMajorPlanApproval.PlanName = majorPlanApproval.PlanName; newMajorPlanApproval.ReviewMan = majorPlanApproval.ReviewMan; newMajorPlanApproval.ApprovalDate = majorPlanApproval.ApprovalDate; newMajorPlanApproval.ApprovalMan = majorPlanApproval.ApprovalMan; newMajorPlanApproval.AuditMan = majorPlanApproval.AuditMan; newMajorPlanApproval.ImplementationDeviation = majorPlanApproval.ImplementationDeviation; newMajorPlanApproval.AttachUrl = majorPlanApproval.AttachUrl; newMajorPlanApproval.CompileMan = majorPlanApproval.CompileMan; newMajorPlanApproval.CompileDate = majorPlanApproval.CompileDate; newMajorPlanApproval.UnitWorkId = majorPlanApproval.UnitWorkId; newMajorPlanApproval.ExpertReviewMan = majorPlanApproval.ExpertReviewMan; newMajorPlanApproval.IsReview = majorPlanApproval.IsReview; newMajorPlanApproval.RemarkCode = majorPlanApproval.RemarkCode; newMajorPlanApproval.SchemeType = majorPlanApproval.SchemeType; newMajorPlanApproval.HazardType = majorPlanApproval.HazardType; newMajorPlanApproval.ExpectedTime = majorPlanApproval.ExpectedTime; newMajorPlanApproval.TrainPersonNum = majorPlanApproval.TrainPersonNum; newMajorPlanApproval.States = majorPlanApproval.States; db.Comprehensive_MajorPlanApproval.InsertOnSubmit(newMajorPlanApproval); db.SubmitChanges(); //查询是否有数据 有则更新 没有则新增 var largerHazard = BLL.LargerHazardService.GetLargerHazardByHazardId(majorPlanApproval.MajorPlanApprovalId); if (largerHazard != null) { UpdateLargerHazard(majorPlanApproval); } else { AddLargerHazard(majorPlanApproval); } } /// /// 修改重大施工方案审批 /// /// public static void UpdateMajorPlanApproval(Model.Comprehensive_MajorPlanApproval majorPlanApproval) { Model.SGGLDB db = Funs.DB; Model.Comprehensive_MajorPlanApproval newMajorPlanApproval = db.Comprehensive_MajorPlanApproval.FirstOrDefault(e => e.MajorPlanApprovalId == majorPlanApproval.MajorPlanApprovalId); if (newMajorPlanApproval != null) { newMajorPlanApproval.ProjectId = majorPlanApproval.ProjectId; newMajorPlanApproval.UnitId = majorPlanApproval.UnitId; newMajorPlanApproval.CNProfessionalId = majorPlanApproval.CNProfessionalId; newMajorPlanApproval.PlanCode = majorPlanApproval.PlanCode; newMajorPlanApproval.PlanName = majorPlanApproval.PlanName; newMajorPlanApproval.ReviewMan = majorPlanApproval.ReviewMan; newMajorPlanApproval.ApprovalDate = majorPlanApproval.ApprovalDate; newMajorPlanApproval.ApprovalMan = majorPlanApproval.ApprovalMan; newMajorPlanApproval.AuditMan = majorPlanApproval.AuditMan; newMajorPlanApproval.ImplementationDeviation = majorPlanApproval.ImplementationDeviation; newMajorPlanApproval.AttachUrl = majorPlanApproval.AttachUrl; newMajorPlanApproval.UnitWorkId = majorPlanApproval.UnitWorkId; newMajorPlanApproval.ExpertReviewMan = majorPlanApproval.ExpertReviewMan; newMajorPlanApproval.RemarkCode = majorPlanApproval.RemarkCode; newMajorPlanApproval.SchemeType = majorPlanApproval.SchemeType; newMajorPlanApproval.HazardType = majorPlanApproval.HazardType; newMajorPlanApproval.ExpectedTime = majorPlanApproval.ExpectedTime; newMajorPlanApproval.TrainPersonNum = majorPlanApproval.TrainPersonNum; newMajorPlanApproval.States = majorPlanApproval.States; newMajorPlanApproval.IsReview = majorPlanApproval.IsReview; db.SubmitChanges(); //查询是否有数据 有则更新 没有则新增 var largerHazard = BLL.LargerHazardService.GetLargerHazardByHazardId(majorPlanApproval.MajorPlanApprovalId); if (largerHazard != null) { UpdateLargerHazard(majorPlanApproval); } else { AddLargerHazard(majorPlanApproval); } } } /// /// 根据主键删除重大施工方案审批 /// /// public static void DeleteMajorPlanApproval(string majorPlanApprovalId) { Model.SGGLDB db = Funs.DB; Model.Comprehensive_MajorPlanApproval majorPlanApproval = db.Comprehensive_MajorPlanApproval.FirstOrDefault(e => e.MajorPlanApprovalId == majorPlanApprovalId); if (majorPlanApproval != null) { if (!string.IsNullOrEmpty(majorPlanApproval.AttachUrl)) { BLL.UploadAttachmentService.DeleteFile(Funs.RootPath, majorPlanApproval.AttachUrl);//删除附件 } db.Comprehensive_MajorPlanApproval.DeleteOnSubmit(majorPlanApproval); db.SubmitChanges(); } } #region 同时新增一条到安全管理中的“危大工程施工方案清单” public static void AddLargerHazard(Model.Comprehensive_MajorPlanApproval majorPlanApproval) { Model.SGGLDB db = Funs.DB; Model.Solution_LargerHazard newLargerHazard = new Model.Solution_LargerHazard { HazardId = majorPlanApproval.MajorPlanApprovalId, HazardCode = majorPlanApproval.PlanCode, HazardType = majorPlanApproval.HazardType, ProjectId = majorPlanApproval.ProjectId, Address = majorPlanApproval.UnitWorkId, ExpectedTime = majorPlanApproval.ExpectedTime, IsArgument = majorPlanApproval.IsReview, RecordTime = majorPlanApproval.ApprovalDate, RecardMan = majorPlanApproval.CompileMan, States = majorPlanApproval.States, TrainPersonNum = majorPlanApproval.TrainPersonNum, IsSuperLargerHazard = majorPlanApproval.SchemeType == "超危大工程" ? true : false, }; db.Solution_LargerHazard.InsertOnSubmit(newLargerHazard); db.SubmitChanges(); ////增加一条编码记录 BLL.CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitId(BLL.Const.ProjectLargerHazardListMenuId, newLargerHazard.ProjectId, null, newLargerHazard.HazardId, newLargerHazard.RecordTime); } public static void UpdateLargerHazard(Model.Comprehensive_MajorPlanApproval majorPlanApproval) { Model.SGGLDB db = Funs.DB; Model.Solution_LargerHazard newLargerHazard = db.Solution_LargerHazard.FirstOrDefault(e => e.HazardId == majorPlanApproval.MajorPlanApprovalId); if (newLargerHazard != null) { newLargerHazard.HazardCode = majorPlanApproval.PlanCode; newLargerHazard.HazardType = majorPlanApproval.HazardType; newLargerHazard.ProjectId = majorPlanApproval.ProjectId; newLargerHazard.Address = majorPlanApproval.UnitWorkId; newLargerHazard.ExpectedTime = majorPlanApproval.ExpectedTime; newLargerHazard.IsArgument = majorPlanApproval.IsReview; newLargerHazard.RecordTime = majorPlanApproval.ApprovalDate; newLargerHazard.States = majorPlanApproval.States; newLargerHazard.TrainPersonNum = majorPlanApproval.TrainPersonNum; newLargerHazard.IsSuperLargerHazard = majorPlanApproval.SchemeType == "超危大工程" ? true : false; db.SubmitChanges(); } } #endregion } }