Compare commits

...

2 Commits

Author SHA1 Message Date
何美荣
4ef517acce Merge branch 'master' of http://121.41.2.71:3000/wyw/mh_jy_safe 2025-11-13 19:14:01 +08:00
何美荣
abbb29277e 优化 2025-11-13 19:13:57 +08:00
5 changed files with 213 additions and 14 deletions

View File

@ -13596,6 +13596,7 @@ namespace APT.BaseData.Services.DomainServices
detail.ENTERPRISE_LIBRARY_ID = de.ENTERPRISE_LIBRARY_ID; detail.ENTERPRISE_LIBRARY_ID = de.ENTERPRISE_LIBRARY_ID;
detail.ENABLE_STATUS = de.ENABLE_STATUS; detail.ENABLE_STATUS = de.ENABLE_STATUS;
detail.MEASURE = de.MEASURE; detail.MEASURE = de.MEASURE;
detail.EMERGENCY = de.EMERGENCY;
if (departTemp != null) if (departTemp != null)
{ {
var libraryDetailTemps = libraryDetails.Where(t => t.ENTERPRISE_LIBRARY_ID == departTemp.ID).ToList(); var libraryDetailTemps = libraryDetails.Where(t => t.ENTERPRISE_LIBRARY_ID == departTemp.ID).ToList();
@ -13667,8 +13668,8 @@ namespace APT.BaseData.Services.DomainServices
resultDetails.Add(detail); resultDetails.Add(detail);
} }
} }
//var noticeTask = NotificationTaskService.InsertUserNoticeTaskModel("安全风险评估表(" + DateTime.Now.ToShortDateString().Replace("/", "") + ")", result.ID, entity.ORG_ID, user.ID, user.NAME, DateTime.Now, DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum.消息, "SK039"); var noticeTask = NotificationTaskService.InsertUserNoticeTaskModel("安全风险评估表" + DateTime.Now.Month.PadLeft(2,'0') + DateTime.Now.Day.PadLeft(2, '0'), result.ID, entity.ORG_ID, user.ID, user.NAME, DateTime.Now, DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "SK039");
//notices.Add(noticeTask); notices.Add(noticeTask);
//T_SC_MT_MEETING_BEGIN modelBegin = new T_SC_MT_MEETING_BEGIN(); //T_SC_MT_MEETING_BEGIN modelBegin = new T_SC_MT_MEETING_BEGIN();
//modelBegin.ID = Guid.NewGuid(); //modelBegin.ID = Guid.NewGuid();
//modelBegin.ORG_ID = entity.ORG_ID; //modelBegin.ORG_ID = entity.ORG_ID;
@ -13681,8 +13682,12 @@ namespace APT.BaseData.Services.DomainServices
//modelBegin.CREATER_ID = user.ID; //modelBegin.CREATER_ID = user.ID;
//modelBegins.Add(modelBegin); //modelBegins.Add(modelBegin);
//触发今日提醒 //触发今日提醒
var noticeDay = NotificationTaskService.InsertUserNoticeTaskModel("请召开《危险源辨识与风险评估》会议,确定风险等级和管控措施(含应急处置、辨识岗位、管控层级、检查内容、检查层级等)", result.ID, entity.ORG_ID, user.ID, user.NAME, DateTime.Now, DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "PF135"); var noticeTemp = notices.FirstOrDefault(t => t.NOTICE_TYPE == 2 && t.SOURCE_FORMCODE == "FM135" && t.USER_ID == user.ID);
notices.Add(noticeDay); if (noticeTemp == null)
{
var noticeDay = NotificationTaskService.InsertUserNoticeTaskModel("请召开《危险源辨识与风险评估》会议,确定风险等级和管控措施(含应急处置、辨识岗位、管控层级、检查内容、检查层级等)", result.ID, entity.ORG_ID, user.ID, user.NAME, DateTime.Now, DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "PF135");
notices.Add(noticeDay);
}
} }
} }
} }
@ -14001,6 +14006,7 @@ namespace APT.BaseData.Services.DomainServices
detail.ENTERPRISE_LIBRARY_ID = de.ENTERPRISE_LIBRARY_ID; detail.ENTERPRISE_LIBRARY_ID = de.ENTERPRISE_LIBRARY_ID;
detail.ENABLE_STATUS = de.ENABLE_STATUS; detail.ENABLE_STATUS = de.ENABLE_STATUS;
detail.MEASURE = de.MEASURE; detail.MEASURE = de.MEASURE;
detail.EMERGENCY = de.EMERGENCY;
resultDetails.Add(detail); resultDetails.Add(detail);
if (de.Nav_DetailMeasures != null && de.Nav_DetailMeasures.Any()) if (de.Nav_DetailMeasures != null && de.Nav_DetailMeasures.Any())
{ {
@ -14102,7 +14108,8 @@ namespace APT.BaseData.Services.DomainServices
result.STATUS = PFStandardStatus.Archived; result.STATUS = PFStandardStatus.Archived;
if (user != null && resultDetails != null && resultDetails.Any()) if (user != null && resultDetails != null && resultDetails.Any())
{ {
var productionId = resultDetails.FirstOrDefault(t => t.PRODUCTION_UNIT_ID != null).PRODUCTION_UNIT_ID; var resultDetailTemps = resultDetails.Where(t => t.MARK != SKMarkEnum.Auto).ToList();
var productionId = resultDetailTemps.FirstOrDefault(t => t.PRODUCTION_UNIT_ID != null).PRODUCTION_UNIT_ID;
var librarys = this.GetEntities<T_SK_ENTERPRISE_LIBRARY>(t => t.ENABLE_STATUS == 0 && t.PRODUCTION_UNIT_ID == productionId, new BaseFilter(entity.ORG_ID)); var librarys = this.GetEntities<T_SK_ENTERPRISE_LIBRARY>(t => t.ENABLE_STATUS == 0 && t.PRODUCTION_UNIT_ID == productionId, new BaseFilter(entity.ORG_ID));
var libraryIds = librarys.Select(t => t.ID).ToList(); var libraryIds = librarys.Select(t => t.ID).ToList();
//var libraryDeparts = GetEntities<T_SK_ENTERPRISE_LIBRARY_DEPART>(i => i.IS_DELETED == false && libraryIds.Contains(i.ENTERPRISE_LIBRARY_ID), new BaseFilter(entity.ORG_ID)).ToList(); //var libraryDeparts = GetEntities<T_SK_ENTERPRISE_LIBRARY_DEPART>(i => i.IS_DELETED == false && libraryIds.Contains(i.ENTERPRISE_LIBRARY_ID), new BaseFilter(entity.ORG_ID)).ToList();
@ -14119,7 +14126,7 @@ namespace APT.BaseData.Services.DomainServices
dou.APPLY_DEPARTMENT_ID = user.DEPARTMENT_ID; dou.APPLY_DEPARTMENT_ID = user.DEPARTMENT_ID;
dou.ORG_ID = result.ORG_ID; dou.ORG_ID = result.ORG_ID;
dou.RISK_EVALUATE_SUMMARY_ID = result.ID; dou.RISK_EVALUATE_SUMMARY_ID = result.ID;
foreach (var item in resultDetails) foreach (var item in resultDetailTemps)
{ {
T_SK_DOUBLE_PREVENT_MECHANISM_DETAIL detail = new T_SK_DOUBLE_PREVENT_MECHANISM_DETAIL(); T_SK_DOUBLE_PREVENT_MECHANISM_DETAIL detail = new T_SK_DOUBLE_PREVENT_MECHANISM_DETAIL();
detail.ORG_ID = item.ORG_ID; detail.ORG_ID = item.ORG_ID;
@ -14420,6 +14427,7 @@ namespace APT.BaseData.Services.DomainServices
List<T_SK_DOUBLE_PREVENT_MECHANISM_DETAIL_MEASURES_CONTENT_HIDDEN> contentHiddenss = new List<T_SK_DOUBLE_PREVENT_MECHANISM_DETAIL_MEASURES_CONTENT_HIDDEN>(); List<T_SK_DOUBLE_PREVENT_MECHANISM_DETAIL_MEASURES_CONTENT_HIDDEN> contentHiddenss = new List<T_SK_DOUBLE_PREVENT_MECHANISM_DETAIL_MEASURES_CONTENT_HIDDEN>();
if (entity.APPLY_USER_ID != null && entity.Nav_Details != null && entity.Nav_Details.Any()) if (entity.APPLY_USER_ID != null && entity.Nav_Details != null && entity.Nav_Details.Any())
{ {
entity.Nav_Details = entity.Nav_Details.Where(t => t.MARK != SKMarkEnum.Auto).ToList();
var sumDetailIds = entity.Nav_Details.Select(t => t.ID).ToList(); var sumDetailIds = entity.Nav_Details.Select(t => t.ID).ToList();
var sumDetailPosts = this.GetEntities<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST>(t => sumDetailIds.Contains(t.RISK_EVALUATION_SUMMARY_DETAIL_ID), new BaseFilter(entity.ORG_ID)); var sumDetailPosts = this.GetEntities<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST>(t => sumDetailIds.Contains(t.RISK_EVALUATION_SUMMARY_DETAIL_ID), new BaseFilter(entity.ORG_ID));
var sumPostIds = sumDetailPosts.Select(t => t.ID).ToList(); var sumPostIds = sumDetailPosts.Select(t => t.ID).ToList();

View File

@ -507,7 +507,7 @@ namespace APT.FM.WebApi.Controllers.Api.FM
var id = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "ID").Value.ToString(); var id = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "ID").Value.ToString();
if (!string.IsNullOrEmpty(id)) if (!string.IsNullOrEmpty(id))
{ {
var entity = this.GetEntity<T_FM_DEPARTMENT>(id, false, "Nav_SafeUser", "Nav_DepartmentUser", "Nav_Parent", "Nav_ChargeUser", var entity = this.GetEntity<T_FM_DEPARTMENT>(id, false, "Nav_SafeUser", "Nav_DepartmentUser", "Nav_Parent", "Nav_ChargeUser", "Nav_Unit",
"Nav_SafeUser.Nav_User", "Nav_DepartmentUser.Nav_User", "Nav_DepartmentUser.Nav_User.Nav_ApproveRole", "Nav_User", "Nav_Person", "Nav_Person.Nav_Post", "Nav_ProdutionUnit.Nav_Enums"); "Nav_SafeUser.Nav_User", "Nav_DepartmentUser.Nav_User", "Nav_DepartmentUser.Nav_User.Nav_ApproveRole", "Nav_User", "Nav_Person", "Nav_Person.Nav_Post", "Nav_ProdutionUnit.Nav_Enums");
if (entity != null) if (entity != null)
{ {

View File

@ -592,7 +592,7 @@ namespace APT.PP.WebApi.Controllers.Api
baseFilter.SelectField = new string[] { "ID", "PRODUCTION_UNIT_ID", "CHECK_TYPE_ID","APPLY_DEPARTMENT_ID","APPLY_USER_ID","PLANCHECKFREQUENCY","DEPARTMENT_TYPE","CHECK_TIME","CHECK_PERSON", baseFilter.SelectField = new string[] { "ID", "PRODUCTION_UNIT_ID", "CHECK_TYPE_ID","APPLY_DEPARTMENT_ID","APPLY_USER_ID","PLANCHECKFREQUENCY","DEPARTMENT_TYPE","CHECK_TIME","CHECK_PERSON",
"Nav_CheckNoticeDetails.RISK_AREA_ID","Nav_CheckNoticeDetails.CHECK_CONTENTS_ID","Nav_CheckNoticeDetails.CHECKCONTENT","Nav_CheckNoticeDetails.CHECKPROOF","Nav_CheckNoticeDetails.CHECKSTANDARD", "Nav_CheckNoticeDetails.RISK_AREA_ID","Nav_CheckNoticeDetails.CHECK_CONTENTS_ID","Nav_CheckNoticeDetails.CHECKCONTENT","Nav_CheckNoticeDetails.CHECKPROOF","Nav_CheckNoticeDetails.CHECKSTANDARD",
"Nav_CheckNoticeFiles.IMG_FILE_ID", "Nav_CheckNoticeDetails.Nav_CheckNoticeDetailUsers.USER_ID", "Nav_CheckNoticeDetails.Nav_CheckNoticeDetailBasics.LAW_ID" }; //指定字段,包括导航属性 "Nav_CheckNoticeFiles.IMG_FILE_ID", "Nav_CheckNoticeDetails.Nav_CheckNoticeDetailUsers.USER_ID", "Nav_CheckNoticeDetails.Nav_CheckNoticeDetailBasics.LAW_ID" }; //指定字段,包括导航属性
Expression<Func<T_SK_SECURITY_INSPECTION_NOTICE, bool>> expression = i => i.IS_DELETED == false && i.CHECK_TIME != null && i.CHECK_TIME.Value.Date == DateTime.Now.Date && i.CHECK_TIME.Value.Hour == dtNow.Hour; Expression<Func<T_SK_SECURITY_INSPECTION_NOTICE, bool>> expression = i => i.IS_DELETED == false && i.CHECK_TIME != null && i.CHECK_TIME.Value.Date == DateTime.Now.Date && i.CHECK_TIME.Value.Hour == dtNow.Hour && i.STATUS != 0;
List<T_SK_SECURITY_INSPECTION_NOTICE> notices = this.GetOrderEntities(expression, baseFilter).ToList(); List<T_SK_SECURITY_INSPECTION_NOTICE> notices = this.GetOrderEntities(expression, baseFilter).ToList();
var noticeExsisIds = notices.Select(t => t.ID).ToList(); var noticeExsisIds = notices.Select(t => t.ID).ToList();
baseFilter.SelectField = new string[] { "ID", "SECURITY_INSPECTION_NOTICE_ID" }; //指定字段,包括导航属性 baseFilter.SelectField = new string[] { "ID", "SECURITY_INSPECTION_NOTICE_ID" }; //指定字段,包括导航属性

View File

@ -2292,8 +2292,8 @@ namespace APT.SK.WebApi.Controllers.Api
} }
return checkList; return checkList;
} }
[HttpPost, Route("GetCheckListNew")] [HttpPost, Route("GetCheckListNewX")]
public JsonActionResult<List<CheckListNew>> GetCheckListNew([FromBody] KeywordFilter filter) public JsonActionResult<List<CheckListNew>> GetCheckListNewX([FromBody] KeywordFilter filter)
{ {
var loginDepart = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID; var loginDepart = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
var loginUser = APT.Infrastructure.Api.AppContext.CurrentSession.UserID; var loginUser = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
@ -2495,5 +2495,190 @@ namespace APT.SK.WebApi.Controllers.Api
} }
return checkList; return checkList;
} }
[HttpPost, Route("GetCheckListNew")]
public JsonActionResult<List<CheckListNew>> GetCheckListNew([FromBody] KeywordFilter filter)
{
var loginDepart = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
var loginUser = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
var departs = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId));
List<Guid> selectMinetype = new List<Guid>();
var users = this.GetEntities<T_FM_USER>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_Person" ,"Nav_ProdutionUnit").ToList();
var userInfoTemp = users.FirstOrDefault(t => t.ID == loginUser);
if (userInfoTemp != null && userInfoTemp.Nav_ProdutionUnit != null && userInfoTemp.Nav_ProdutionUnit.Any())
{
selectMinetype = userInfoTemp.Nav_ProdutionUnit.Where(m=>m.PRODUCTION_UNIT_ID!=null).Select(t => (Guid)t.PRODUCTION_UNIT_ID).Distinct().ToList();
}
//List<Guid> departmentIds = new List<Guid>() { loginDepart.Value };
//DepartmentService.GetDepartmentIds(filter.OrgId.Value, new List<Guid>() { loginDepart.Value }, ref departmentIds);
var checkList = new JsonActionResult<List<CheckListNew>>();
List<CheckListNew> list = new List<CheckListNew>();
List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART> conDepartlist = new List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>();
//企业库
var librarys = this.GetEntities<T_SK_ENTERPRISE_LIBRARY>(t => !t.IS_DELETED && t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId), "Nav_Area", "Nav_ProductionUnit").ToList();
var libIds = librarys.Select(t => t.ID).ToList();
//管控层级
var libraryDeparts = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DEPART>(t => !t.IS_DELETED && libIds.Contains(t.ENTERPRISE_LIBRARY_ID), new BaseFilter(filter.OrgId)).ToList();
//管控措施
var libraryDetails = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL>(t => !t.IS_DELETED && libIds.Contains(t.ENTERPRISE_LIBRARY_ID), new BaseFilter(filter.OrgId)).ToList();
var libDetailIds = libraryDetails.Select(t => t.ID).ToList();
//检查内容
var contents = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>(t => !t.IS_DELETED && libDetailIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_ID), new BaseFilter(filter.OrgId), "Nav_Contents").ToList();
var libContentIds = contents.Select(t => t.ID).ToList();
//检查层级
var contentDeparts = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>(t => !t.IS_DELETED && libContentIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID), new BaseFilter(filter.OrgId), "Nav_CheckType", "Nav_Department").ToList();
//隐患描述
//var contentHiddens = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_HIDDEN>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId)).ToList();
//辨识岗位
var posts = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_POST>(t => !t.IS_DELETED && libIds.Contains(t.ENTERPRISE_LIBRARY_ID), new BaseFilter(filter.OrgId), "Nav_PostDetails.Nav_Post").ToList();
//岗位排查
var checkTypeIds = this.GetEntities<T_SK_CHECK_TYPE>(t => t.NAME == "岗位排查", new BaseFilter(filter.OrgId)).Select(x => x.ID).ToList();
//检查清单(生产单元+检查层级+检查类型+检查周期+检查部门:取辨识部门+检查对象:取辨识岗位)
if (contentDeparts != null && contentDeparts.Any())
{
foreach (var item in contentDeparts)
{
var conFirst = contents.FirstOrDefault(t => t.ID == item.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID);
var detailFirst = libraryDetails.FirstOrDefault(t => t.ID == conFirst?.ENTERPRISE_LIBRARY_DETAIL_ID);
var libFirst = librarys.FirstOrDefault(t => t.ID == detailFirst?.ENTERPRISE_LIBRARY_ID);
if (item.CHECK_TYPE_ID != null && checkTypeIds.Contains((Guid)item.CHECK_TYPE_ID))
{
var postFirst = posts.FirstOrDefault(t => t.ENTERPRISE_LIBRARY_ID == libFirst?.ID && t.DEPARTMENT_ID == item.DEPARTMENT_ID);
if (postFirst != null && postFirst.Nav_PostDetails != null && postFirst.Nav_PostDetails.Any())
{
foreach (var item2 in postFirst.Nav_PostDetails)
{
//去除有审批角色的人
var userCharge = users.FirstOrDefault(t => t.Nav_Person != null && t.Nav_Person.POST_ID == item2.POST_ID && t.APPROVE_ROLE_ID != null);
if (userCharge == null)
{
T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART de = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART();
de.MineType = libFirst != null ? libFirst.MineType : SKProductionUnit.All;
de.PRODUCTION_UNIT_ID = libFirst?.PRODUCTION_UNIT_ID;
de.MINE_NAME = libFirst?.Nav_ProductionUnit?.NAME;
de.AREA_NAME = libFirst?.Nav_Area?.NAME;
de.CHECK_TYPE_ID = item.CHECK_TYPE_ID;
de.TYPE_NAME = item.Nav_CheckType?.NAME;
de.ENTERPRISE_LIBRARY_DETAIL_ID = item.ENTERPRISE_LIBRARY_DETAIL_ID;
de.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID = item.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID;
de.ENTERPRISE_LIBRARY_ID = item.ID;
de.CHECK_CYCLE = item.CHECK_CYCLE;
de.CHECK_TYPE = item.CHECK_TYPE;
de.DEPARTMENT_ID = item.DEPARTMENT_ID;
de.DEPART_NAME = item.Nav_Department?.NAME;
de.POST_ID = item2.POST_ID;
de.POST_NAME = item2.Nav_Post?.NAME;
conDepartlist.Add(de);
}
}
}
}
else
{
var userInfo = users.FirstOrDefault(t => t.DEPARTMENT_ID == item.DEPARTMENT_ID && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("安全员"));
if (userInfo == null)
{
var depart = departs.FirstOrDefault(t => t.ID == item.DEPARTMENT_ID);
if (depart != null && depart.USER_ID != null)
{
userInfo = users.FirstOrDefault(t => t.ID == depart.USER_ID);
}
}
T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART de = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART();
de.MineType = libFirst != null ? libFirst.MineType : SKProductionUnit.All;
de.PRODUCTION_UNIT_ID = libFirst?.PRODUCTION_UNIT_ID;
de.MINE_NAME = libFirst?.Nav_ProductionUnit?.NAME;
de.AREA_NAME = libFirst?.Nav_Area?.NAME;
de.CHECK_TYPE_ID = item.CHECK_TYPE_ID;
de.TYPE_NAME = item.Nav_CheckType?.NAME;
de.ENTERPRISE_LIBRARY_DETAIL_ID = item.ENTERPRISE_LIBRARY_DETAIL_ID;
de.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID = item.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID;
de.ENTERPRISE_LIBRARY_ID = item.ID;
de.CHECK_CYCLE = item.CHECK_CYCLE;
de.CHECK_TYPE = item.CHECK_TYPE;
de.DEPARTMENT_ID = item.DEPARTMENT_ID;
de.DEPART_NAME = item.Nav_Department?.NAME;
de.POST_ID = userInfo?.Nav_Person?.POST_ID;
de.POST_NAME = userInfo?.Nav_ApproveRole?.NAME;
conDepartlist.Add(de);
}
}
}
if (conDepartlist != null && conDepartlist.Any())
{
foreach (var item in conDepartlist)
{
if (checkTypeIds != null && checkTypeIds.Any() && item.CHECK_TYPE_ID != null && checkTypeIds.Contains((Guid)item.CHECK_TYPE_ID))
{
}
else
{
if (item.CHECK_TYPE == SKDepartmentTypeEnum.)
{
item.POST_NAME = "班组负责人";
}
else if (item.CHECK_TYPE == SKDepartmentTypeEnum.)
{
item.POST_NAME = "车间安全员";
}
else if (item.CHECK_TYPE == SKDepartmentTypeEnum.)
{
item.POST_NAME = "部门安全员";
}
else
{
item.POST_NAME = "安环部安全员";
}
}
}
var group = conDepartlist.GroupBy(t => new { 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 }).ToList();
foreach (var item in group)
{
CheckListNew listNew = new CheckListNew();
listNew.PRODUCTION_UNIT_ID = item.Key.PRODUCTION_UNIT_ID;
listNew.MineType = item.Key.MINE_NAME;
listNew.CheckType = item.Key.TYPE_NAME;
listNew.CheckCycle = item.Key.CHECK_CYCLE.GetDescription();
listNew.CheckLevel = item.Key.CHECK_TYPE.GetDescription();
listNew.Num = (int)item.Key.CHECK_TYPE;
listNew.CheckDepart = item.Key.DEPART_NAME;
listNew.CheckPost = item.Key.POST_NAME;
var depathaveIds = conDepartlist.Where(t => t.DEPARTMENT_ID == item.Key.DEPARTMENT_ID && t.CHECK_TYPE_ID == item.Key.CHECK_TYPE_ID && t.CHECK_TYPE == item.Key.CHECK_TYPE && t.CHECK_CYCLE == item.Key.CHECK_CYCLE && t.PRODUCTION_UNIT_ID == item.Key.PRODUCTION_UNIT_ID && t.POST_NAME == item.Key.POST_NAME).Select(m => m.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID).Distinct().ToList();
var temps = contents.Where(t => depathaveIds.Contains(t.ID)).Distinct().ToList();
if (temps.Any())
{
List<CheckListDetail> listDetail = new List<CheckListDetail>();
foreach (var tem in temps)
{
var detailFirst = libraryDetails.FirstOrDefault(t => t.ID == tem.ENTERPRISE_LIBRARY_DETAIL_ID);
var libFirst = librarys.FirstOrDefault(t => t.ID == detailFirst?.ENTERPRISE_LIBRARY_ID);
CheckListDetail checkListDetail = new CheckListDetail();
checkListDetail.CHECK_CONTENTS_ID = tem.CHECK_CONTENTS_ID;
checkListDetail.CHECK_CONTENTS_NAME = tem.Nav_Contents?.CHECKCONTENT;
checkListDetail.RISK_NAME = libFirst?.RISK_NAME;
checkListDetail.RISK_AREA_ID = libFirst?.AREA_ID;
checkListDetail.RISK_AREA_NAME = libFirst?.Nav_Area?.NAME;
checkListDetail.CHECKPROOF = tem.CHECK_BASIC;
checkListDetail.CHECKSTANDARD = tem.CHECK_STANDARD;
listDetail.Add(checkListDetail);
}
listNew.details = listDetail.GroupBy(n => new { n.RISK_AREA_ID, n.RISK_NAME, n.CHECK_CONTENTS_ID }).Select(g => g.FirstOrDefault()).OrderBy(t => t.RISK_AREA_NAME).ThenBy(m => m.RISK_NAME).ToList();
}
list.Add(listNew);
}
if (userInfoTemp != null && userInfoTemp.NAME.Contains("管理员"))
{
checkList.Data = list.OrderBy(n => n.PRODUCTION_UNIT_ID).ThenBy(x => x.Num).ThenBy(n => n.CheckDepart).ToList();
}
else
{
checkList.Data = list.Where(t => t.PRODUCTION_UNIT_ID != null && selectMinetype.Contains((Guid)t.PRODUCTION_UNIT_ID)).OrderBy(n => n.PRODUCTION_UNIT_ID).ThenBy(x => x.Num).ThenBy(n => n.CheckDepart).ToList();
}
checkList.TotalCount = checkList.Data.Count;
}
return checkList;
}
} }
} }

View File

@ -1568,19 +1568,25 @@ namespace APT.SK.WebApi.Controllers.Api
var dataList = new List<T_SK_SECURITY_INSPECTION_NOTICE_DETAIL>(); var dataList = new List<T_SK_SECURITY_INSPECTION_NOTICE_DETAIL>();
if (entity.PRODUCTION_UNIT_ID == null || entity.CHECK_TYPE_ID == null || entity.DEPARTMENT_TYPE == null || entity.PLANCHECKFREQUENCY == null) if (entity.PRODUCTION_UNIT_ID == null || entity.CHECK_TYPE_ID == null || entity.DEPARTMENT_TYPE == null || entity.PLANCHECKFREQUENCY == null)
{ {
throw new Exception("生产单元,检查层级,检查类型,检查周期都不能为空"); result.ErrorMessage = "生产单元,检查层级,检查类型,检查周期都不能为空";
return result;
//throw new Exception("生产单元,检查层级,检查类型,检查周期都不能为空");
} }
var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID; var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
var departId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID; var departId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
var postId = this.GetEntity<T_FM_USER>(t => t.ID == loginUserId && t.Nav_Person != null, "Nav_Person")?.Nav_Person?.POST_ID; var postId = this.GetEntity<T_FM_USER>(t => t.ID == loginUserId && t.Nav_Person != null, "Nav_Person")?.Nav_Person?.POST_ID;
if (postId == null) if (postId == null)
{ {
throw new Exception("发起人岗位未配置,请到用户列表确认岗位"); result.ErrorMessage = "发起人岗位未配置,请到用户列表确认岗位";
return result;
//throw new Exception("发起人岗位未配置,请到用户列表确认岗位");
} }
var checkSet = this.GetEntity<T_SK_CHECK_SET>(t => t.PRODUCTION_UNIT_ID == entity.PRODUCTION_UNIT_ID && t.CHECK_CYCLE == entity.PLANCHECKFREQUENCY && t.CHECK_TYPE == entity.DEPARTMENT_TYPE && t.DEPARTMENT_ID == Guid.Parse(departId.ToString()) && t.POST_ID == postId); var checkSet = this.GetEntity<T_SK_CHECK_SET>(t => t.PRODUCTION_UNIT_ID == entity.PRODUCTION_UNIT_ID && t.CHECK_CYCLE == entity.PLANCHECKFREQUENCY && t.CHECK_TYPE == entity.DEPARTMENT_TYPE && t.DEPARTMENT_ID == Guid.Parse(departId.ToString()) && t.POST_ID == postId);
if (checkSet == null) if (checkSet == null)
{ {
throw new Exception("未找到对应的检查清单,请手动添加检查内容"); result.ErrorMessage = "未找到对应的检查清单,请手动添加检查内容";
return result;
//throw new Exception("未找到对应的检查清单,请手动添加检查内容");
} }
var details = this.GetEntities<T_SK_CHECK_SET_CONTENTS>(t => t.CHECK_SET_ID == checkSet.ID, new BaseFilter(entity.ORG_ID), "Nav_Area", "Nav_Contents", "Nav_ContentsBasics"); var details = this.GetEntities<T_SK_CHECK_SET_CONTENTS>(t => t.CHECK_SET_ID == checkSet.ID, new BaseFilter(entity.ORG_ID), "Nav_Area", "Nav_Contents", "Nav_ContentsBasics");
if (details != null && details.Any()) if (details != null && details.Any())