151 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			151 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			C#
		
	
	
	
| using System;
 | |
| using System.Collections.Generic;
 | |
| using System.Linq;
 | |
| using System.Text;
 | |
| using System.Threading.Tasks;
 | |
| 
 | |
| namespace BLL
 | |
| {
 | |
|     /// <summary>
 | |
|     /// 开工前检查
 | |
|     /// </summary>
 | |
|     public static class Check_CheckWorkService
 | |
|     {
 | |
|         /// <summary>
 | |
|         /// 根据开工前检查ID获取开工前检查信息
 | |
|         /// </summary>
 | |
|         /// <param name="CheckWorkName"></param>
 | |
|         /// <returns></returns>
 | |
|         public static Model.Check_CheckWork GetCheckWorkByCheckWorkId(string checkWorkId)
 | |
|         {
 | |
|             return Funs.DB.Check_CheckWork.FirstOrDefault(e => e.CheckWorkId == checkWorkId);
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 根据时间段获取开工前检查信息集合
 | |
|         /// </summary>
 | |
|         /// <param name="startTime"></param>
 | |
|         /// <param name="endTime"></param>
 | |
|         /// <param name="projectId"></param>
 | |
|         /// <returns></returns>
 | |
|         public static int GetCountByCheckTime(DateTime startTime, DateTime endTime, string projectId)
 | |
|         {
 | |
|             return (from x in Funs.DB.Check_CheckWork where x.CheckTime >= startTime && x.CheckTime < endTime && x.ProjectId == projectId && x.States == BLL.Const.State_2 select x).Count();
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 根据时间段获取已完成的开工前检查整改数量
 | |
|         /// </summary>
 | |
|         /// <param name="startTime">开始时间</param>
 | |
|         /// <param name="endTime">结束时间</param>
 | |
|         /// <param name="projectId">项目号</param>
 | |
|         /// <returns>已完成的开工前检查整改数量</returns>
 | |
|         public static int GetIsOKViolationCountByCheckTime(DateTime startTime, DateTime endTime, string projectId)
 | |
|         {
 | |
|             return (from x in Funs.DB.Check_CheckWork
 | |
|                     join y in Funs.DB.Check_CheckWorkDetail on x.CheckWorkId equals y.CheckWorkId
 | |
|                     where x.CheckTime >= startTime && x.CheckTime <= endTime && x.ProjectId == projectId
 | |
|                     select y).Count();
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 添加安全开工前检查
 | |
|         /// </summary>
 | |
|         /// <param name="checkWork"></param>
 | |
|         public static void AddCheckWork(Model.Check_CheckWork checkWork)
 | |
|         {
 | |
|             Model.Check_CheckWork newCheckWork = new Model.Check_CheckWork
 | |
|             {
 | |
|                 CheckWorkId = checkWork.CheckWorkId,
 | |
|                 CheckWorkCode = checkWork.CheckWorkCode,
 | |
|                 ProjectId = checkWork.ProjectId,
 | |
|                 Area = checkWork.Area,
 | |
|                 CheckTime = checkWork.CheckTime,
 | |
|                 ThisUnitId = checkWork.ThisUnitId,
 | |
|                 MainUnitPerson = checkWork.MainUnitPerson,
 | |
|                 SubUnits = checkWork.SubUnits,
 | |
|                 SubUnitPerson = checkWork.SubUnitPerson,
 | |
|                 PartInPersonNames = checkWork.PartInPersonNames,
 | |
|                 MainUnitDeputy = checkWork.MainUnitDeputy,
 | |
|                 SubUnitDeputy = checkWork.SubUnitDeputy,
 | |
|                 MainUnitDeputyDate = checkWork.MainUnitDeputyDate,
 | |
|                 SubUnitDeputyDate = checkWork.SubUnitDeputyDate,
 | |
|                 AttachUrl = checkWork.AttachUrl,
 | |
|                 IsCompleted = checkWork.IsCompleted,
 | |
|                 States = checkWork.States,
 | |
|                 CompileMan = checkWork.CompileMan,
 | |
|                 IsAgree = checkWork.IsAgree
 | |
|             };
 | |
|             Funs.DB.Check_CheckWork.InsertOnSubmit(newCheckWork);
 | |
|             Funs.DB.SubmitChanges();
 | |
|             ////增加一条编码记录
 | |
|             BLL.CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitId(BLL.Const.ProjectCheckWorkMenuId, checkWork.ProjectId, null, checkWork.CheckWorkId, checkWork.CheckTime);
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 修改安全开工前检查
 | |
|         /// </summary>
 | |
|         /// <param name="checkWork"></param>
 | |
|         public static void UpdateCheckWork(Model.Check_CheckWork checkWork)
 | |
|         {
 | |
|             Model.Check_CheckWork newCheckWork = Funs.DB.Check_CheckWork.FirstOrDefault(e => e.CheckWorkId == checkWork.CheckWorkId);
 | |
|             if (newCheckWork != null)
 | |
|             {
 | |
|                 newCheckWork.Area = checkWork.Area;
 | |
|                 newCheckWork.CheckTime = checkWork.CheckTime;
 | |
|                 newCheckWork.ThisUnitId = checkWork.ThisUnitId;
 | |
|                 newCheckWork.MainUnitPerson = checkWork.MainUnitPerson;
 | |
|                 newCheckWork.SubUnits = checkWork.SubUnits;
 | |
|                 newCheckWork.SubUnitPerson = checkWork.SubUnitPerson;
 | |
|                 newCheckWork.PartInPersonNames = checkWork.PartInPersonNames;
 | |
|                 newCheckWork.MainUnitDeputy = checkWork.MainUnitDeputy;
 | |
|                 newCheckWork.SubUnitDeputy = checkWork.SubUnitDeputy;
 | |
|                 newCheckWork.MainUnitDeputyDate = checkWork.MainUnitDeputyDate;
 | |
|                 newCheckWork.SubUnitDeputyDate = checkWork.SubUnitDeputyDate;
 | |
|                 newCheckWork.AttachUrl = checkWork.AttachUrl;
 | |
|                 newCheckWork.IsCompleted = checkWork.IsCompleted;
 | |
|                 newCheckWork.States = checkWork.States;
 | |
|                 newCheckWork.IsAgree = checkWork.IsAgree;
 | |
|                 Funs.DB.SubmitChanges();
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 根据开工前检查ID删除对应开工前检查记录信息
 | |
|         /// </summary>
 | |
|         /// <param name="superviseCheckReportId"></param>
 | |
|         public static void DeleteCheckWork(string checkWorkId)
 | |
|         {
 | |
|             var q = (from x in Funs.DB.Check_CheckWork where x.CheckWorkId == checkWorkId select x).FirstOrDefault();
 | |
|             if (q != null)
 | |
|             {
 | |
|                 ///删除编码表记录
 | |
|                 BLL.CodeRecordsService.DeleteCodeRecordsByDataId(q.CheckWorkId);
 | |
|                 ////删除附件表
 | |
|                 BLL.CommonService.DeleteAttachFileById(q.CheckWorkId);
 | |
|                 ///删除工程师日志收集记录
 | |
|                 if (!string.IsNullOrEmpty(q.MainUnitPerson))
 | |
|                 {
 | |
|                     List<string> mainUnitPersonIds = Funs.GetStrListByStr(q.MainUnitPerson, ',');
 | |
|                     foreach (var item in mainUnitPersonIds)
 | |
|                     {
 | |
|                         BLL.HSSELogService.CollectHSSELog(q.ProjectId, item, q.CheckTime, "21", "开工前HSE检查", Const.BtnDelete, 1);
 | |
|                     }
 | |
|                 }
 | |
|                 if (!string.IsNullOrEmpty(q.SubUnitPerson))
 | |
|                 {
 | |
|                     List<string> subUnitPersonIds = Funs.GetStrListByStr(q.SubUnitPerson, ',');
 | |
|                     foreach (var item in subUnitPersonIds)
 | |
|                     {
 | |
|                         BLL.HSSELogService.CollectHSSELog(q.ProjectId, item, q.CheckTime, "21", "开工前HSE检查", Const.BtnDelete, 1);
 | |
|                     }
 | |
|                 }
 | |
|                 ////删除审核流程表
 | |
|                 BLL.CommonService.DeleteFlowOperateByID(q.CheckWorkId);
 | |
|                 Funs.DB.Check_CheckWork.DeleteOnSubmit(q);
 | |
|                 Funs.DB.SubmitChanges();
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| }
 |