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