175 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			175 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System; | |||
|  | using System.Collections.Generic; | |||
|  | using System.Linq; | |||
|  | using System.Text; | |||
|  | using System.Threading.Tasks; | |||
|  | 
 | |||
|  | namespace BLL | |||
|  | { | |||
|  |    public static class CheckNoticeService | |||
|  |     { | |||
|  |         /// <summary> | |||
|  |         /// 根据主键获取检查通知单 | |||
|  |         /// </summary> | |||
|  |         /// <param name="checkNoticeId"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static Model.ProjectSupervision_CheckNotice GetCheckNoticeById(string checkNoticeId) | |||
|  |         { | |||
|  |             return Funs.DB.ProjectSupervision_CheckNotice.FirstOrDefault(e => e.CheckNoticeId == checkNoticeId); | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 添加检查通知单 | |||
|  |         /// </summary> | |||
|  |         /// <param name="checkNotice"></param> | |||
|  |         public static void AddCheckNotice(Model.ProjectSupervision_CheckNotice checkNotice) | |||
|  |         { | |||
|  |             Model.ProjectSupervision_CheckNotice newCheckNotice = new Model.ProjectSupervision_CheckNotice(); | |||
|  |             newCheckNotice.CheckNoticeId = checkNotice.CheckNoticeId; | |||
|  |             //newCheckNotice.SubjectUnitId = checkNotice.SubjectUnitId; | |||
|  |             newCheckNotice.SubjectUnitAdd = checkNotice.SubjectUnitAdd; | |||
|  |             newCheckNotice.SubjectUnitMan = checkNotice.SubjectUnitMan; | |||
|  |             newCheckNotice.SubjectUnitTel = checkNotice.SubjectUnitTel; | |||
|  |             newCheckNotice.CheckStartTime = checkNotice.CheckStartTime; | |||
|  |             newCheckNotice.CheckEndTime = checkNotice.CheckEndTime; | |||
|  |             //newCheckNotice.SubjectObject = checkNotice.SubjectObject; | |||
|  |             newCheckNotice.CheckTeamLeader = checkNotice.CheckTeamLeader; | |||
|  |             newCheckNotice.CompileMan = checkNotice.CompileMan; | |||
|  |             newCheckNotice.CompileDate = checkNotice.CompileDate; | |||
|  |             newCheckNotice.CheckTeamLeaderName = checkNotice.CheckTeamLeaderName; | |||
|  |             newCheckNotice.UnitId = checkNotice.UnitId; | |||
|  |             newCheckNotice.SexName = checkNotice.SexName; | |||
|  |             newCheckNotice.SubjectProjectId = checkNotice.SubjectProjectId; | |||
|  |             Funs.DB.ProjectSupervision_CheckNotice.InsertOnSubmit(newCheckNotice); | |||
|  |             Funs.DB.SubmitChanges(); | |||
|  | 
 | |||
|  |             ////组长不为空时 自动将组长添加到检查组 | |||
|  |             if (!string.IsNullOrEmpty(newCheckNotice.CheckTeamLeader)) | |||
|  |             { | |||
|  |                 Model.ProjectSupervision_CheckTeam newCheckTeam = new Model.ProjectSupervision_CheckTeam | |||
|  |                 { | |||
|  |                     CheckTeamId = SQLHelper.GetNewID(typeof(Model.ProjectSupervision_CheckTeam)) | |||
|  |                 }; | |||
|  |                 ; | |||
|  |                 newCheckTeam.CheckNoticeId = newCheckNotice.CheckNoticeId; | |||
|  |                 newCheckTeam.UserId = newCheckNotice.CheckTeamLeader; | |||
|  |                 newCheckTeam.SortIndex = 1; | |||
|  |                 newCheckTeam.CheckPostName = "组长"; | |||
|  |                 newCheckTeam.CheckDate = newCheckNotice.CheckStartTime; | |||
|  |                 newCheckTeam.UserName = newCheckNotice.CheckTeamLeaderName; | |||
|  |                 newCheckTeam.UnitId = newCheckNotice.UnitId; | |||
|  |                 newCheckTeam.SexName = newCheckNotice.SexName; | |||
|  |                 BLL.CheckTeamService.AddCheckTeam(newCheckTeam); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 修改检查通知单 | |||
|  |         /// </summary> | |||
|  |         /// <param name="checkNotice"></param> | |||
|  |         public static void UpdateCheckNotice(Model.ProjectSupervision_CheckNotice checkNotice) | |||
|  |         { | |||
|  |             Model.ProjectSupervision_CheckNotice newCheckNotice = Funs.DB.ProjectSupervision_CheckNotice.FirstOrDefault(e => e.CheckNoticeId == checkNotice.CheckNoticeId); | |||
|  |             if (newCheckNotice != null) | |||
|  |             { | |||
|  |                 //newCheckNotice.SubjectUnitId = checkNotice.SubjectUnitId; | |||
|  |                 newCheckNotice.SubjectUnitAdd = checkNotice.SubjectUnitAdd; | |||
|  |                 newCheckNotice.SubjectUnitMan = checkNotice.SubjectUnitMan; | |||
|  |                 newCheckNotice.SubjectUnitTel = checkNotice.SubjectUnitTel; | |||
|  |                 newCheckNotice.CheckStartTime = checkNotice.CheckStartTime; | |||
|  |                 newCheckNotice.CheckEndTime = checkNotice.CheckEndTime; | |||
|  |                 //newCheckNotice.SubjectObject = checkNotice.SubjectObject; | |||
|  |                 newCheckNotice.CheckTeamLeader = checkNotice.CheckTeamLeader; | |||
|  |                 newCheckNotice.CompileMan = checkNotice.CompileMan; | |||
|  |                 newCheckNotice.CompileDate = checkNotice.CompileDate; | |||
|  |                 newCheckNotice.CheckTeamLeaderName = checkNotice.CheckTeamLeaderName; | |||
|  |                 newCheckNotice.UnitId = checkNotice.UnitId; | |||
|  |                 newCheckNotice.SexName = checkNotice.SexName; | |||
|  |                 newCheckNotice.SubjectProjectId = checkNotice.SubjectProjectId; | |||
|  |                 Funs.DB.SubmitChanges(); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 根据检查通知Id删除检查通知信息 | |||
|  |         /// </summary> | |||
|  |         /// <param name="checkNoticeId"></param> | |||
|  |         public static void DeleteCheckNoticeByCheckNoticeId(string checkNoticeId) | |||
|  |         { | |||
|  |             Model.ProjectSupervision_CheckNotice checkNotice = Funs.DB.ProjectSupervision_CheckNotice.FirstOrDefault(e => e.CheckNoticeId == checkNoticeId); | |||
|  |             if (checkNotice != null) | |||
|  |             { | |||
|  |                 //var checkFiles = from x in db.Check_CheckInfo_CheckFile where x.CheckInfoId == checkInfoId select x; | |||
|  |                 //if (checkFiles.Count() > 0) | |||
|  |                 //{ | |||
|  |                 //    foreach (var item in checkFiles) | |||
|  |                 //    { | |||
|  |                 //        BLL.CheckFileService.DeleteCheckFileByCheckFileId(item.CheckFileId); | |||
|  |                 //    } | |||
|  |                 //} | |||
|  |                 var checkTeams = from x in Funs.DB.ProjectSupervision_CheckTeam where x.CheckNoticeId == checkNoticeId select x; | |||
|  |                 if (checkTeams.Count() > 0) | |||
|  |                 { | |||
|  |                     foreach (var item in checkTeams) | |||
|  |                     { | |||
|  |                         BLL.CheckTeamService.DeleteCheckTeamByCheckTeamId(item.CheckTeamId); | |||
|  |                     } | |||
|  |                 } | |||
|  |                 Funs.DB.ProjectSupervision_CheckNotice.DeleteOnSubmit(checkNotice); | |||
|  |                 Funs.DB.SubmitChanges(); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 获取监督检查信息 | |||
|  |         /// </summary> | |||
|  |         /// <param name="CheckInfoName"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.ProjectSupervision_CheckNotice> GetCheckInfoList(string unitId, string userId, string roleId) | |||
|  |         { | |||
|  |             List<Model.ProjectSupervision_CheckNotice> checkInfoLists = new List<Model.ProjectSupervision_CheckNotice>(); | |||
|  |             var role = BLL.RoleService.GetRoleByRoleId(roleId); | |||
|  |             if (userId == BLL.Const.sysglyId || (BLL.CommonService.IsMainUnitOrAdmin(unitId) && role != null)) | |||
|  |             { | |||
|  |                 checkInfoLists = (from x in Funs.DB.ProjectSupervision_CheckNotice orderby x.CheckStartTime select x).ToList(); | |||
|  |             } | |||
|  |             else | |||
|  |             { | |||
|  |                 var sysUser = BLL.UserService.GetUserByUserId(userId); | |||
|  |                 if (sysUser != null) | |||
|  |                 { | |||
|  |                     var checkInfoIdList = (from x in Funs.DB.ProjectSupervision_CheckTeam | |||
|  |                                            where x.UserName == sysUser.UserName && x.UnitId == sysUser.UnitId | |||
|  |                                            select x.CheckNoticeId).Distinct().ToList(); | |||
|  |                     if (checkInfoIdList.Count() > 0) | |||
|  |                     { | |||
|  |                         checkInfoLists = (from x in Funs.DB.ProjectSupervision_CheckNotice | |||
|  |                                           where checkInfoIdList.Contains(x.CheckNoticeId) | |||
|  |                                           orderby x.CheckStartTime | |||
|  |                                           select x).ToList(); | |||
|  |                     } | |||
|  | 
 | |||
|  |                     var checkInfoIdList1 = (from x in Funs.DB.ProjectSupervision_CheckNotice | |||
|  |                                             where x.CompileMan == userId | |||
|  |                                             orderby x.CheckStartTime | |||
|  |                                             select x).ToList(); | |||
|  |                     if (checkInfoIdList1.Count() > 0) | |||
|  |                     { | |||
|  |                         if (checkInfoLists.Count() > 0) | |||
|  |                         { | |||
|  |                             checkInfoLists.AddRange(checkInfoIdList1); | |||
|  |                         } | |||
|  |                         else | |||
|  |                         { | |||
|  |                             checkInfoLists = checkInfoIdList1; | |||
|  |                         } | |||
|  |                     } | |||
|  | 
 | |||
|  |                     checkInfoLists = checkInfoLists.Distinct().ToList(); | |||
|  |                 } | |||
|  |             } | |||
|  |             return checkInfoLists; | |||
|  |         }         | |||
|  |     } | |||
|  | } |