2
This commit is contained in:
		
							parent
							
								
									1a2c37eb04
								
							
						
					
					
						commit
						df24bf4e9b
					
				@ -4930,9 +4930,9 @@ namespace APT.PP.WebApi.Controllers.Api
 | 
				
			|||||||
                        var checkTypes = this.GetEntities<T_SK_CHECK_TYPE>(t => t.IS_DELETED == false, new BaseFilter(filter.OrgId));
 | 
					                        var checkTypes = this.GetEntities<T_SK_CHECK_TYPE>(t => t.IS_DELETED == false, new BaseFilter(filter.OrgId));
 | 
				
			||||||
                        var checkTypeIds = checkTypes.Where(t => t.NAME == "岗位排查").Select(m => m.ID).ToList();
 | 
					                        var checkTypeIds = checkTypes.Where(t => t.NAME == "岗位排查").Select(m => m.ID).ToList();
 | 
				
			||||||
                        var departs = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId), "Nav_User");
 | 
					                        var departs = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId), "Nav_User");
 | 
				
			||||||
                        var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0 && !t.CODE.Contains("admin") && t.Nav_Person != null, new BaseFilter(filter.OrgId), "Nav_Person", "Nav_ApproveRole");
 | 
					                        var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0 && t.DEPARTMENT_ID != null && !t.CODE.Contains("admin") && t.Nav_Person != null, new BaseFilter(filter.OrgId), "Nav_Person", "Nav_ApproveRole");
 | 
				
			||||||
                        var checkCycles = setList.Select(t => t.CHECK_CYCLE).Distinct().ToList();
 | 
					                        var checkCycles = setList.Select(t => t.CHECK_CYCLE).Distinct().ToList();
 | 
				
			||||||
                        var librarys = this.GetEntities<T_SK_ENTERPRISE_LIBRARY>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_Area", "Nav_ProductionUnit").ToList();
 | 
					                        var librarys = this.GetEntities<T_SK_ENTERPRISE_LIBRARY>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_Area").ToList();
 | 
				
			||||||
                        var libraryDetails = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId)).ToList();
 | 
					                        var libraryDetails = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId)).ToList();
 | 
				
			||||||
                        var contents = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_Contents").ToList();
 | 
					                        var contents = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_Contents").ToList();
 | 
				
			||||||
                        var contentDeparts = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_CheckType", "Nav_Department").ToList();
 | 
					                        var contentDeparts = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_CheckType", "Nav_Department").ToList();
 | 
				
			||||||
@ -4958,13 +4958,12 @@ namespace APT.PP.WebApi.Controllers.Api
 | 
				
			|||||||
                                            foreach (var post in first)
 | 
					                                            foreach (var post in first)
 | 
				
			||||||
                                            {
 | 
					                                            {
 | 
				
			||||||
                                                //没角色的才取岗位
 | 
					                                                //没角色的才取岗位
 | 
				
			||||||
                                                var userRole = users.FirstOrDefault(t => t.Nav_Person != null && t.Nav_Person.POST_ID == post?.ID).APPROVE_ROLE_ID;
 | 
					                                                var userRole = users.FirstOrDefault(t => t.Nav_Person != null && t.Nav_Person.POST_ID != null && t.Nav_Person.POST_ID == post?.ID);
 | 
				
			||||||
                                                if (userRole == null)
 | 
					                                                if (userRole == null || (userRole != null && userRole.APPROVE_ROLE_ID == null))
 | 
				
			||||||
                                                {
 | 
					                                                {
 | 
				
			||||||
                                                    T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART de = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART();
 | 
					                                                    T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART de = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART();
 | 
				
			||||||
                                                    de.POST_NAME = post?.NAME;
 | 
					                                                    de.POST_NAME = post?.NAME;
 | 
				
			||||||
                                                    de.MineType = item.MineType;
 | 
					                                                    de.MineType = item.MineType;
 | 
				
			||||||
                                                    de.MINE_NAME = item.Nav_ProductionUnit?.NAME;
 | 
					 | 
				
			||||||
                                                    de.AREA_NAME = item.Nav_Area?.NAME;
 | 
					                                                    de.AREA_NAME = item.Nav_Area?.NAME;
 | 
				
			||||||
                                                    de.ENTERPRISE_LIBRARY_DETAIL_ID = contentFirst?.ENTERPRISE_LIBRARY_DETAIL_ID;
 | 
					                                                    de.ENTERPRISE_LIBRARY_DETAIL_ID = contentFirst?.ENTERPRISE_LIBRARY_DETAIL_ID;
 | 
				
			||||||
                                                    de.ENTERPRISE_LIBRARY_ID = item.ID;
 | 
					                                                    de.ENTERPRISE_LIBRARY_ID = item.ID;
 | 
				
			||||||
@ -4985,8 +4984,6 @@ namespace APT.PP.WebApi.Controllers.Api
 | 
				
			|||||||
                                            T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART de = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART();
 | 
					                                            T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART de = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART();
 | 
				
			||||||
                                            de.POST_NAME = "未配置辨识岗位";
 | 
					                                            de.POST_NAME = "未配置辨识岗位";
 | 
				
			||||||
                                            de.MineType = item.MineType;
 | 
					                                            de.MineType = item.MineType;
 | 
				
			||||||
                                            de.PRODUCTION_UNIT_ID = item.PRODUCTION_UNIT_ID;
 | 
					 | 
				
			||||||
                                            de.MINE_NAME = item.Nav_ProductionUnit?.NAME;
 | 
					 | 
				
			||||||
                                            de.AREA_NAME = item.Nav_Area?.NAME;
 | 
					                                            de.AREA_NAME = item.Nav_Area?.NAME;
 | 
				
			||||||
                                            de.ENTERPRISE_LIBRARY_DETAIL_ID = contentFirst?.ENTERPRISE_LIBRARY_DETAIL_ID;
 | 
					                                            de.ENTERPRISE_LIBRARY_DETAIL_ID = contentFirst?.ENTERPRISE_LIBRARY_DETAIL_ID;
 | 
				
			||||||
                                            de.ENTERPRISE_LIBRARY_ID = item.ID;
 | 
					                                            de.ENTERPRISE_LIBRARY_ID = item.ID;
 | 
				
			||||||
@ -5044,14 +5041,14 @@ namespace APT.PP.WebApi.Controllers.Api
 | 
				
			|||||||
                                    }
 | 
					                                    }
 | 
				
			||||||
                                }
 | 
					                                }
 | 
				
			||||||
                            }
 | 
					                            }
 | 
				
			||||||
                            var group = detailContents.Where(m => checkCycles.Contains(m.CHECK_CYCLE)).GroupBy(t => new { t.MineType,t.PRODUCTION_UNIT_ID, t.MINE_NAME,t.CHECK_TYPE, t.CHECK_CYCLE, t.DEPART_NAME, t.DEPARTMENT_ID, t.CHECK_TYPE_ID, t.TYPE_NAME, t.POST_NAME, t.POST_ID }).ToList();
 | 
					                            var group = detailContents.Where(m => checkCycles.Contains(m.CHECK_CYCLE)).GroupBy(t => new { t.MineType, t.CHECK_TYPE, t.CHECK_CYCLE, t.DEPART_NAME, t.DEPARTMENT_ID, t.CHECK_TYPE_ID, t.TYPE_NAME, t.POST_NAME, t.POST_ID }).ToList();
 | 
				
			||||||
                            foreach (var item in group)
 | 
					                            foreach (var item in group)
 | 
				
			||||||
                            {
 | 
					                            {
 | 
				
			||||||
                                CheckListNew listNew = new CheckListNew();
 | 
					                                CheckListNew listNew = new CheckListNew();
 | 
				
			||||||
                                listNew.PRODUCTION_UNIT_ID = item.Key.PRODUCTION_UNIT_ID;
 | 
					                                listNew.Mine = item.Key.MineType;
 | 
				
			||||||
                                listNew.Cycle = item.Key.CHECK_CYCLE;
 | 
					                                listNew.Cycle = item.Key.CHECK_CYCLE;
 | 
				
			||||||
                                listNew.DepartType = item.Key.CHECK_TYPE;
 | 
					                                listNew.DepartType = item.Key.CHECK_TYPE;
 | 
				
			||||||
                                listNew.MineType = item.Key.MINE_NAME;
 | 
					                                listNew.MineType = item.Key.MineType.GetDescription();
 | 
				
			||||||
                                listNew.CheckType = item.Key.TYPE_NAME;
 | 
					                                listNew.CheckType = item.Key.TYPE_NAME;
 | 
				
			||||||
                                listNew.CheckCycle = item.Key.CHECK_CYCLE.GetDescription();
 | 
					                                listNew.CheckCycle = item.Key.CHECK_CYCLE.GetDescription();
 | 
				
			||||||
                                listNew.CheckLevel = item.Key.CHECK_TYPE.GetDescription();
 | 
					                                listNew.CheckLevel = item.Key.CHECK_TYPE.GetDescription();
 | 
				
			||||||
@ -5082,7 +5079,7 @@ namespace APT.PP.WebApi.Controllers.Api
 | 
				
			|||||||
                                }
 | 
					                                }
 | 
				
			||||||
                                list.Add(listNew);
 | 
					                                list.Add(listNew);
 | 
				
			||||||
                            }
 | 
					                            }
 | 
				
			||||||
                            list = list.OrderBy(n => n.MineType).ThenBy(x => x.Num).ThenBy(n => n.CheckDepart).ToList();
 | 
					                            list = list.Where(m => m.CheckDepartId != null).OrderBy(y => y.MineType).ThenBy(x => x.Num).ThenBy(n => n.CheckDepart).ToList();
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                        DateTime dt = DateTime.Now;
 | 
					                        DateTime dt = DateTime.Now;
 | 
				
			||||||
                        if (filter.Parameter1 != null)
 | 
					                        if (filter.Parameter1 != null)
 | 
				
			||||||
@ -5110,8 +5107,11 @@ namespace APT.PP.WebApi.Controllers.Api
 | 
				
			|||||||
                        var baseFilter = new BaseFilter(filter.GetOrgId());
 | 
					                        var baseFilter = new BaseFilter(filter.GetOrgId());
 | 
				
			||||||
                        baseFilter.IgnoreDataRule = true;
 | 
					                        baseFilter.IgnoreDataRule = true;
 | 
				
			||||||
                        baseFilter.SelectField = new string[] { "MineType", "CHECK_TYPE_ID", "APPLY_DEPARTMENT_ID", "APPLY_USER_ID", "PLANCHECKFREQUENCY", "DEPARTMENT_TYPE" };   //指定字段,包括导航属性
 | 
					                        baseFilter.SelectField = new string[] { "MineType", "CHECK_TYPE_ID", "APPLY_DEPARTMENT_ID", "APPLY_USER_ID", "PLANCHECKFREQUENCY", "DEPARTMENT_TYPE" };   //指定字段,包括导航属性
 | 
				
			||||||
                        Expression<Func<T_SK_SECURITY_INSPECTION_NOTICE, bool>> expression = i => i.IS_DELETED == false && i.CREATE_TIME.Value.Date == dt.Date;
 | 
					                        Expression<Func<T_SK_SECURITY_INSPECTION_NOTICE, bool>> expression = i => i.IS_DELETED == false && i.CREATE_TIME > minTime && i.CREATE_TIME <= maxTime;
 | 
				
			||||||
                        List<T_SK_SECURITY_INSPECTION_NOTICE> noticeExsiss = this.GetOrderEntities(expression, baseFilter).ToList();
 | 
					                        List<T_SK_SECURITY_INSPECTION_NOTICE> noticeExsiss = this.GetOrderEntities(expression, baseFilter).ToList();
 | 
				
			||||||
 | 
					                        baseFilter.SelectField = new string[] { "MineType", "CHECK_TYPE_ID", "APPLY_DEPARTMENT_ID", "APPLY_USER_ID", "PLANCHECKFREQUENCY", "DEPARTMENT_TYPE" };
 | 
				
			||||||
 | 
					                        Expression<Func<T_SK_SECURITY_INSPECTION_RECORD, bool>> expressionR = i => i.IS_DELETED == false && i.CREATE_TIME > minTime && i.CREATE_TIME <= maxTime;
 | 
				
			||||||
 | 
					                        List<T_SK_SECURITY_INSPECTION_RECORD> recordExsiss = this.GetOrderEntities(expressionR, baseFilter).ToList();
 | 
				
			||||||
                        //取岗位排查表
 | 
					                        //取岗位排查表
 | 
				
			||||||
                        var postCheckList = list.Where(t => t.CheckTypeId != null && checkTypeIds.Contains((Guid)t.CheckTypeId)).ToList();
 | 
					                        var postCheckList = list.Where(t => t.CheckTypeId != null && checkTypeIds.Contains((Guid)t.CheckTypeId)).ToList();
 | 
				
			||||||
                        if (postCheckList != null && postCheckList.Any())
 | 
					                        if (postCheckList != null && postCheckList.Any())
 | 
				
			||||||
@ -5119,73 +5119,77 @@ namespace APT.PP.WebApi.Controllers.Api
 | 
				
			|||||||
                            foreach (var item in postCheckList)
 | 
					                            foreach (var item in postCheckList)
 | 
				
			||||||
                            {
 | 
					                            {
 | 
				
			||||||
                                //触发安全检查记录给对应的岗位工(有排班才触发)
 | 
					                                //触发安全检查记录给对应的岗位工(有排班才触发)
 | 
				
			||||||
                                var userInfo = users.FirstOrDefault(t => t.DEPARTMENT_ID == item.CheckDepartId && teamDepartIds.Contains(t.DEPARTMENT_ID) && t.Nav_Person != null && t.Nav_Person.POST_ID == item.CheckPostId);
 | 
					                                var userInfo = users.FirstOrDefault(t => t.DEPARTMENT_ID == item.CheckDepartId && teamDepartIds.Contains(t.DEPARTMENT_ID) && t.PERSON_ID != null && personIds.Contains((Guid)t.PERSON_ID) && t.Nav_Person != null && t.Nav_Person.POST_ID == item.CheckPostId);
 | 
				
			||||||
                                if (userInfo != null)
 | 
					                                if (userInfo != null)
 | 
				
			||||||
                                {
 | 
					                                {
 | 
				
			||||||
                                    T_SK_SECURITY_INSPECTION_RECORD record = new T_SK_SECURITY_INSPECTION_RECORD();
 | 
					                                    //判断是否重复触发
 | 
				
			||||||
                                    record.ORG_ID = filter.OrgId;
 | 
					                                    var exist = recordExsiss.FirstOrDefault(t => t.APPLY_USER_ID == userInfo.ID && t.CHECK_TYPE_ID == item.CheckTypeId && t.PLANCHECKFREQUENCY == item.Cycle);
 | 
				
			||||||
                                    record.APPLY_DEPARTMENT_ID = userInfo.DEPARTMENT_ID;
 | 
					                                    if (exist == null)
 | 
				
			||||||
                                    record.APPLY_USER_ID = userInfo.ID;
 | 
					 | 
				
			||||||
                                    record.MineType = item.Mine;
 | 
					 | 
				
			||||||
                                    record.PRODUCTION_UNIT_ID = item.PRODUCTION_UNIT_ID;
 | 
					 | 
				
			||||||
                                    record.CHECK_TYPE_ID = item.CheckTypeId;
 | 
					 | 
				
			||||||
                                    record.PLANCHECKFREQUENCY = item.Cycle;
 | 
					 | 
				
			||||||
                                    record.DEPARTMENT_TYPE = item.DepartType;
 | 
					 | 
				
			||||||
                                    record.STATUS = PFStandardStatus.Draft;
 | 
					 | 
				
			||||||
                                    record.ISAUTO = true;
 | 
					 | 
				
			||||||
                                    records.Add(record);
 | 
					 | 
				
			||||||
                                    if (item.details != null && item.details.Any())
 | 
					 | 
				
			||||||
                                    {
 | 
					                                    {
 | 
				
			||||||
                                        foreach (var item2 in item.details)
 | 
					                                        T_SK_SECURITY_INSPECTION_RECORD record = new T_SK_SECURITY_INSPECTION_RECORD();
 | 
				
			||||||
 | 
					                                        record.ORG_ID = filter.OrgId;
 | 
				
			||||||
 | 
					                                        record.APPLY_DEPARTMENT_ID = userInfo.DEPARTMENT_ID;
 | 
				
			||||||
 | 
					                                        record.APPLY_USER_ID = userInfo.ID;
 | 
				
			||||||
 | 
					                                        record.MineType = item.Mine;
 | 
				
			||||||
 | 
					                                        record.CHECK_TYPE_ID = item.CheckTypeId;
 | 
				
			||||||
 | 
					                                        record.PLANCHECKFREQUENCY = item.Cycle;
 | 
				
			||||||
 | 
					                                        record.DEPARTMENT_TYPE = item.DepartType;
 | 
				
			||||||
 | 
					                                        record.STATUS = PFStandardStatus.Draft;
 | 
				
			||||||
 | 
					                                        record.ISAUTO = true;
 | 
				
			||||||
 | 
					                                        records.Add(record);
 | 
				
			||||||
 | 
					                                        if (item.details != null && item.details.Any())
 | 
				
			||||||
                                        {
 | 
					                                        {
 | 
				
			||||||
                                            var i = 1;
 | 
					                                            foreach (var item2 in item.details)
 | 
				
			||||||
                                            //var repeat = safeDetialNotices.FirstOrDefault(t => t.SECURITY_INSPECTION_NOTICE_ID == safeNotice.ID && t.RISK_AREA_ID == item2.AREA_ID && t.CHECK_CONTENTS_ID == item2.CHECK_CONTENTS_ID);
 | 
					 | 
				
			||||||
                                            //if (repeat == null)
 | 
					 | 
				
			||||||
                                            {
 | 
					                                            {
 | 
				
			||||||
                                                T_SK_SECURITY_INSPECTION_RECORD_DETAIL detail = new T_SK_SECURITY_INSPECTION_RECORD_DETAIL();
 | 
					                                                var i = 1;
 | 
				
			||||||
                                                detail.ORG_ID = filter.OrgId;
 | 
					                                                //var repeat = safeDetialNotices.FirstOrDefault(t => t.SECURITY_INSPECTION_NOTICE_ID == safeNotice.ID && t.RISK_AREA_ID == item2.AREA_ID && t.CHECK_CONTENTS_ID == item2.CHECK_CONTENTS_ID);
 | 
				
			||||||
                                                detail.SECURITY_INSPECTION_RECORD_ID = record.ID;
 | 
					                                                //if (repeat == null)
 | 
				
			||||||
                                                detail.RISK_AREA_ID = item2.RISK_AREA_ID;
 | 
					                                                {
 | 
				
			||||||
                                                detail.CHECK_CONTENTS_ID = item2.CHECK_CONTENTS_ID;
 | 
					                                                    T_SK_SECURITY_INSPECTION_RECORD_DETAIL detail = new T_SK_SECURITY_INSPECTION_RECORD_DETAIL();
 | 
				
			||||||
                                                detail.CHECKCONTENT = item2.CHECK_CONTENTS_NAME;
 | 
					                                                    detail.ORG_ID = filter.OrgId;
 | 
				
			||||||
                                                detail.CHECKPROOF = item2.CHECKPROOF;
 | 
					                                                    detail.SECURITY_INSPECTION_RECORD_ID = record.ID;
 | 
				
			||||||
                                                detail.CHECKSTANDARD = item2.CHECKSTANDARD;
 | 
					                                                    detail.RISK_AREA_ID = item2.RISK_AREA_ID;
 | 
				
			||||||
                                                detail.NUM = i;
 | 
					                                                    detail.CHECK_CONTENTS_ID = item2.CHECK_CONTENTS_ID;
 | 
				
			||||||
                                                recordDetails.Add(detail);
 | 
					                                                    detail.CHECKCONTENT = item2.CHECK_CONTENTS_NAME;
 | 
				
			||||||
                                                i++;
 | 
					                                                    detail.CHECKPROOF = item2.CHECKPROOF;
 | 
				
			||||||
                                                T_SK_SECURITY_INSPECTION_RECORD_DETAIL_USER deUser = new T_SK_SECURITY_INSPECTION_RECORD_DETAIL_USER();
 | 
					                                                    detail.CHECKSTANDARD = item2.CHECKSTANDARD;
 | 
				
			||||||
                                                deUser.ORG_ID = filter.OrgId;
 | 
					                                                    detail.NUM = i;
 | 
				
			||||||
                                                deUser.SECURITY_INSPECTION_RECORD_DETAIL_ID = detail.ID;
 | 
					                                                    recordDetails.Add(detail);
 | 
				
			||||||
                                                deUser.USER_ID = userInfo.ID;
 | 
					                                                    i++;
 | 
				
			||||||
                                                deUser.ISMAINCHECK = true;
 | 
					                                                    T_SK_SECURITY_INSPECTION_RECORD_DETAIL_USER deUser = new T_SK_SECURITY_INSPECTION_RECORD_DETAIL_USER();
 | 
				
			||||||
                                                recordDetailUsers.Add(deUser);
 | 
					                                                    deUser.ORG_ID = filter.OrgId;
 | 
				
			||||||
 | 
					                                                    deUser.SECURITY_INSPECTION_RECORD_DETAIL_ID = detail.ID;
 | 
				
			||||||
 | 
					                                                    deUser.USER_ID = userInfo.ID;
 | 
				
			||||||
 | 
					                                                    deUser.ISMAINCHECK = true;
 | 
				
			||||||
 | 
					                                                    recordDetailUsers.Add(deUser);
 | 
				
			||||||
 | 
					                                                }
 | 
				
			||||||
                                            }
 | 
					                                            }
 | 
				
			||||||
                                        }
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        var date = DateTime.Now.Year + DateTime.Now.Month.PadLeft(2, '0') + DateTime.Now.Day.PadLeft(2, '0');
 | 
				
			||||||
 | 
					                                        var endtime = DateTime.Now.AddHours(24);
 | 
				
			||||||
 | 
					                                        if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Week)
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            endtime = DateTime.Now.AddDays(7);
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Month)
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            endtime = DateTime.Now.AddMonths(1);
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        if (item.Cycle == SKPLANCHECKFREQUENCYEnum.HalfYear)
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            endtime = DateTime.Now.AddMonths(6);
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Year)
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            endtime = DateTime.Now.AddMonths(12);
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Quarter)
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            endtime = DateTime.Now.AddMonths(3);
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        var notice = NotificationTaskService.InsertUserNoticeTaskModel(item.CheckCycle + "岗位排查记录" + date, record.ID, filter.OrgId, userInfo.ID, userInfo.NAME, DateTime.Now, endtime, (int)FMNoticeTypeEnum.消息, "SK010");
 | 
				
			||||||
 | 
					                                        notices.Add(notice);
 | 
				
			||||||
                                    }
 | 
					                                    }
 | 
				
			||||||
                                    var date = DateTime.Now.Year + DateTime.Now.Month.PadLeft(2, '0') + DateTime.Now.Day.PadLeft(2, '0');
 | 
					 | 
				
			||||||
                                    var endtime = DateTime.Now.AddHours(24);
 | 
					 | 
				
			||||||
                                    if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Week)
 | 
					 | 
				
			||||||
                                    {
 | 
					 | 
				
			||||||
                                        endtime = DateTime.Now.AddDays(7);
 | 
					 | 
				
			||||||
                                    }
 | 
					 | 
				
			||||||
                                    if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Month)
 | 
					 | 
				
			||||||
                                    {
 | 
					 | 
				
			||||||
                                        endtime = DateTime.Now.AddMonths(1);
 | 
					 | 
				
			||||||
                                    }
 | 
					 | 
				
			||||||
                                    if (item.Cycle == SKPLANCHECKFREQUENCYEnum.HalfYear)
 | 
					 | 
				
			||||||
                                    {
 | 
					 | 
				
			||||||
                                        endtime = DateTime.Now.AddMonths(6);
 | 
					 | 
				
			||||||
                                    }
 | 
					 | 
				
			||||||
                                    if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Year)
 | 
					 | 
				
			||||||
                                    {
 | 
					 | 
				
			||||||
                                        endtime = DateTime.Now.AddMonths(12);
 | 
					 | 
				
			||||||
                                    }
 | 
					 | 
				
			||||||
                                    if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Quarter)
 | 
					 | 
				
			||||||
                                    {
 | 
					 | 
				
			||||||
                                        endtime = DateTime.Now.AddMonths(3);
 | 
					 | 
				
			||||||
                                    }
 | 
					 | 
				
			||||||
                                    var notice = NotificationTaskService.InsertUserNoticeTaskModel(item.CheckCycle + "岗位排查记录" + date, record.ID, filter.OrgId, userInfo.ID, userInfo.NAME, DateTime.Now, endtime, (int)FMNoticeTypeEnum.消息, "SK010");
 | 
					 | 
				
			||||||
                                    notices.Add(notice);
 | 
					 | 
				
			||||||
                                }
 | 
					                                }
 | 
				
			||||||
                            }
 | 
					                            }
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
@ -5195,6 +5199,7 @@ namespace APT.PP.WebApi.Controllers.Api
 | 
				
			|||||||
                        {
 | 
					                        {
 | 
				
			||||||
                            foreach (var item in checkList)
 | 
					                            foreach (var item in checkList)
 | 
				
			||||||
                            {
 | 
					                            {
 | 
				
			||||||
 | 
					                                var setTime = setList.FirstOrDefault(t => t.MineType == item.Mine && t.CHECK_CYCLE == item.Cycle);
 | 
				
			||||||
                                var userInfo = users.FirstOrDefault(t => t.DEPARTMENT_ID == item.CheckDepartId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME == item.CheckPost);
 | 
					                                var userInfo = users.FirstOrDefault(t => t.DEPARTMENT_ID == item.CheckDepartId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME == item.CheckPost);
 | 
				
			||||||
                                //触发安全检查通知给对应的审批角色
 | 
					                                //触发安全检查通知给对应的审批角色
 | 
				
			||||||
                                if (item.CheckPost == "安环部安全员")
 | 
					                                if (item.CheckPost == "安环部安全员")
 | 
				
			||||||
@ -5204,76 +5209,75 @@ namespace APT.PP.WebApi.Controllers.Api
 | 
				
			|||||||
                                if (item.CheckPost == "班组负责人")
 | 
					                                if (item.CheckPost == "班组负责人")
 | 
				
			||||||
                                {
 | 
					                                {
 | 
				
			||||||
                                    //判断排班
 | 
					                                    //判断排班
 | 
				
			||||||
                                    userInfo = users.FirstOrDefault(t => t.DEPARTMENT_ID == item.CheckDepartId && teamDepartIds.Contains(t.DEPARTMENT_ID) && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME == item.CheckPost);
 | 
					                                    userInfo = users.FirstOrDefault(t => t.DEPARTMENT_ID == item.CheckDepartId && teamDepartIds.Contains(t.DEPARTMENT_ID) && t.PERSON_ID != null && personIds.Contains((Guid)t.PERSON_ID) && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME == item.CheckPost);
 | 
				
			||||||
                                }
 | 
					                                }
 | 
				
			||||||
                                if (userInfo == null)
 | 
					                                if (userInfo == null && item.CheckDepartId != null && item.CheckPost != "班组负责人")
 | 
				
			||||||
                                {
 | 
					                                {
 | 
				
			||||||
                                    userInfo = departs.FirstOrDefault(t => t.ID == (Guid)item.CheckDepartId)?.Nav_User;
 | 
					                                    userInfo = departs.FirstOrDefault(t => t.ID == (Guid)item.CheckDepartId)?.Nav_User;
 | 
				
			||||||
                                }
 | 
					                                }
 | 
				
			||||||
                                if (userInfo != null)
 | 
					                                if (userInfo != null)
 | 
				
			||||||
                                {
 | 
					                                {
 | 
				
			||||||
                                    var setTime = setList.FirstOrDefault(t => t.MineType == item.Mine && t.CHECK_CYCLE == item.Cycle && t.CHECKTIME.Value.Hour == dt.Hour);
 | 
					                                    //判断是否重复触发
 | 
				
			||||||
                                    if (item.CheckPost != "班组负责人" && setTime == null)
 | 
					                                    var exist = noticeExsiss.FirstOrDefault(t => t.APPLY_USER_ID == userInfo.ID && t.CHECK_TYPE_ID == item.CheckTypeId && t.PLANCHECKFREQUENCY == item.Cycle);
 | 
				
			||||||
 | 
					                                    if ((exist == null && item.CheckPost == "班组负责人") || (exist == null && item.CheckPost != "班组负责人" && setTime != null && dtNow.Hour == setTime.CHECKTIME.Value.Hour))
 | 
				
			||||||
                                    {
 | 
					                                    {
 | 
				
			||||||
                                        continue;
 | 
					                                        T_SK_SECURITY_INSPECTION_NOTICE safeNotice = new T_SK_SECURITY_INSPECTION_NOTICE();
 | 
				
			||||||
                                    }
 | 
					                                        safeNotice.ORG_ID = filter.OrgId;
 | 
				
			||||||
                                    T_SK_SECURITY_INSPECTION_NOTICE safeNotice = new T_SK_SECURITY_INSPECTION_NOTICE();
 | 
					                                        safeNotice.APPLY_DEPARTMENT_ID = userInfo.DEPARTMENT_ID;
 | 
				
			||||||
                                    safeNotice.ORG_ID = filter.OrgId;
 | 
					                                        safeNotice.APPLY_USER_ID = userInfo.ID;
 | 
				
			||||||
                                    safeNotice.APPLY_DEPARTMENT_ID = userInfo.DEPARTMENT_ID;
 | 
					                                        safeNotice.MineType = item.Mine;
 | 
				
			||||||
                                    safeNotice.APPLY_USER_ID = userInfo.ID;
 | 
					                                        safeNotice.CHECK_TYPE_ID = item.CheckTypeId;
 | 
				
			||||||
                                    safeNotice.MineType = item.Mine;
 | 
					                                        safeNotice.PLANCHECKFREQUENCY = item.Cycle;
 | 
				
			||||||
                                    safeNotice.PRODUCTION_UNIT_ID = item.PRODUCTION_UNIT_ID;
 | 
					                                        safeNotice.DEPARTMENT_TYPE = item.DepartType;
 | 
				
			||||||
                                    safeNotice.CHECK_TYPE_ID = item.CheckTypeId;
 | 
					                                        safeNotice.STATUS = PFStandardStatus.Draft;
 | 
				
			||||||
                                    safeNotice.PLANCHECKFREQUENCY = item.Cycle;
 | 
					                                        safeNotice.ISAUTO = true;
 | 
				
			||||||
                                    safeNotice.DEPARTMENT_TYPE = item.DepartType;
 | 
					                                        safeNotices.Add(safeNotice);
 | 
				
			||||||
                                    safeNotice.STATUS = PFStandardStatus.Draft;
 | 
					                                        if (item.details != null && item.details.Any())
 | 
				
			||||||
                                    safeNotice.ISAUTO = true;
 | 
					 | 
				
			||||||
                                    safeNotices.Add(safeNotice);
 | 
					 | 
				
			||||||
                                    if (item.details != null && item.details.Any())
 | 
					 | 
				
			||||||
                                    {
 | 
					 | 
				
			||||||
                                        foreach (var item2 in item.details)
 | 
					 | 
				
			||||||
                                        {
 | 
					                                        {
 | 
				
			||||||
                                            var i = 1;
 | 
					                                            foreach (var item2 in item.details)
 | 
				
			||||||
                                            //var repeat = safeDetialNotices.FirstOrDefault(t => t.SECURITY_INSPECTION_NOTICE_ID == safeNotice.ID && t.RISK_AREA_ID == item2.AREA_ID && t.CHECK_CONTENTS_ID == item2.CHECK_CONTENTS_ID);
 | 
					 | 
				
			||||||
                                            //if (repeat == null)
 | 
					 | 
				
			||||||
                                            {
 | 
					                                            {
 | 
				
			||||||
                                                T_SK_SECURITY_INSPECTION_NOTICE_DETAIL detail = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL();
 | 
					                                                var i = 1;
 | 
				
			||||||
                                                detail.ORG_ID = filter.OrgId;
 | 
					                                                //var repeat = safeDetialNotices.FirstOrDefault(t => t.SECURITY_INSPECTION_NOTICE_ID == safeNotice.ID && t.RISK_AREA_ID == item2.AREA_ID && t.CHECK_CONTENTS_ID == item2.CHECK_CONTENTS_ID);
 | 
				
			||||||
                                                detail.SECURITY_INSPECTION_NOTICE_ID = safeNotice.ID;
 | 
					                                                //if (repeat == null)
 | 
				
			||||||
                                                detail.RISK_AREA_ID = item2.RISK_AREA_ID;
 | 
					                                                {
 | 
				
			||||||
                                                detail.CHECK_CONTENTS_ID = item2.CHECK_CONTENTS_ID;
 | 
					                                                    T_SK_SECURITY_INSPECTION_NOTICE_DETAIL detail = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL();
 | 
				
			||||||
                                                detail.CHECKCONTENT = item2.CHECK_CONTENTS_NAME;
 | 
					                                                    detail.ORG_ID = filter.OrgId;
 | 
				
			||||||
                                                detail.CHECKPROOF = item2.CHECKPROOF;
 | 
					                                                    detail.SECURITY_INSPECTION_NOTICE_ID = safeNotice.ID;
 | 
				
			||||||
                                                detail.CHECKSTANDARD = item2.CHECKSTANDARD;
 | 
					                                                    detail.RISK_AREA_ID = item2.RISK_AREA_ID;
 | 
				
			||||||
                                                detail.NUM = i;
 | 
					                                                    detail.CHECK_CONTENTS_ID = item2.CHECK_CONTENTS_ID;
 | 
				
			||||||
                                                safeDetialNotices.Add(detail);
 | 
					                                                    detail.CHECKCONTENT = item2.CHECK_CONTENTS_NAME;
 | 
				
			||||||
 | 
					                                                    detail.CHECKPROOF = item2.CHECKPROOF;
 | 
				
			||||||
 | 
					                                                    detail.CHECKSTANDARD = item2.CHECKSTANDARD;
 | 
				
			||||||
 | 
					                                                    detail.NUM = i;
 | 
				
			||||||
 | 
					                                                    safeDetialNotices.Add(detail);
 | 
				
			||||||
 | 
					                                                }
 | 
				
			||||||
                                            }
 | 
					                                            }
 | 
				
			||||||
                                        }
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        var date = DateTime.Now.Year + DateTime.Now.Month.PadLeft(2, '0') + DateTime.Now.Day.PadLeft(2, '0');
 | 
				
			||||||
 | 
					                                        var endtime = DateTime.Now.AddHours(24);
 | 
				
			||||||
 | 
					                                        if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Week)
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            endtime = DateTime.Now.AddDays(7);
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Month)
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            endtime = DateTime.Now.AddMonths(1);
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        if (item.Cycle == SKPLANCHECKFREQUENCYEnum.HalfYear)
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            endtime = DateTime.Now.AddMonths(6);
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Year)
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            endtime = DateTime.Now.AddMonths(12);
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Quarter)
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            endtime = DateTime.Now.AddMonths(3);
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					                                        var notice = NotificationTaskService.InsertUserNoticeTaskModel(item.CheckCycle + "安全检查通知" + date, safeNotice.ID, filter.OrgId, userInfo.ID, userInfo.NAME, DateTime.Now, endtime, (int)FMNoticeTypeEnum.消息, "SK006");
 | 
				
			||||||
 | 
					                                        notices.Add(notice);
 | 
				
			||||||
                                    }
 | 
					                                    }
 | 
				
			||||||
                                    var date = DateTime.Now.Year + DateTime.Now.Month.PadLeft(2, '0') + DateTime.Now.Day.PadLeft(2, '0');
 | 
					 | 
				
			||||||
                                    var endtime = DateTime.Now.AddHours(24);
 | 
					 | 
				
			||||||
                                    if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Week)
 | 
					 | 
				
			||||||
                                    {
 | 
					 | 
				
			||||||
                                        endtime = DateTime.Now.AddDays(7);
 | 
					 | 
				
			||||||
                                    }
 | 
					 | 
				
			||||||
                                    if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Month)
 | 
					 | 
				
			||||||
                                    {
 | 
					 | 
				
			||||||
                                        endtime = DateTime.Now.AddMonths(1);
 | 
					 | 
				
			||||||
                                    }
 | 
					 | 
				
			||||||
                                    if (item.Cycle == SKPLANCHECKFREQUENCYEnum.HalfYear)
 | 
					 | 
				
			||||||
                                    {
 | 
					 | 
				
			||||||
                                        endtime = DateTime.Now.AddMonths(6);
 | 
					 | 
				
			||||||
                                    }
 | 
					 | 
				
			||||||
                                    if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Year)
 | 
					 | 
				
			||||||
                                    {
 | 
					 | 
				
			||||||
                                        endtime = DateTime.Now.AddMonths(12);
 | 
					 | 
				
			||||||
                                    }
 | 
					 | 
				
			||||||
                                    if (item.Cycle == SKPLANCHECKFREQUENCYEnum.Quarter)
 | 
					 | 
				
			||||||
                                    {
 | 
					 | 
				
			||||||
                                        endtime = DateTime.Now.AddMonths(3);
 | 
					 | 
				
			||||||
                                    }
 | 
					 | 
				
			||||||
                                    var notice = NotificationTaskService.InsertUserNoticeTaskModel(item.CheckCycle + "安全检查通知" + date, safeNotice.ID, filter.OrgId, userInfo.ID, userInfo.NAME, DateTime.Now, endtime, (int)FMNoticeTypeEnum.消息, "SK006");
 | 
					 | 
				
			||||||
                                    notices.Add(notice);
 | 
					 | 
				
			||||||
                                }
 | 
					                                }
 | 
				
			||||||
                            }
 | 
					                            }
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user