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;
 | |
|         }        
 | |
|     }
 | |
| }
 |