1
This commit is contained in:
parent
ee4708a22e
commit
83c2c0e08d
@ -1553,6 +1553,67 @@ namespace APT.SK.WebApi.Controllers.Api
|
||||
return result;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据检查类型,检查层级,当前人所在生产单元及其岗位自动带出所有区域下的检查内容
|
||||
/// </summary>
|
||||
/// <param name="filter"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost, Route("GetCheckContentsNew")]
|
||||
public JsonActionResult<List<T_SK_SECURITY_INSPECTION_NOTICE_DETAIL>> GetCheckContentsNew([FromBody] T_SK_SECURITY_INSPECTION_NOTICE entity)
|
||||
{
|
||||
|
||||
var result = new JsonActionResult<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)
|
||||
{
|
||||
throw new Exception("生产单元,检查层级,检查类型,检查周期都不能为空");
|
||||
}
|
||||
var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
||||
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;
|
||||
if (postId == null)
|
||||
{
|
||||
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);
|
||||
if (checkSet == null)
|
||||
{
|
||||
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");
|
||||
if (details != null && details.Any())
|
||||
{
|
||||
foreach (var item in details)
|
||||
{
|
||||
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL detail = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL();
|
||||
detail.ORG_ID = entity.ORG_ID;
|
||||
detail.RISK_AREA_ID = item.AREA_ID;
|
||||
detail.Nav_RiskArea = item.Nav_Area;
|
||||
detail.CHECK_CONTENTS_ID = item.CHECK_CONTENTS_ID;
|
||||
detail.Nav_Contents = item.Nav_Contents;
|
||||
detail.CHECKCONTENT = item.CHECK_CONTENT;
|
||||
detail.CHECKSTANDARD = item.CHECK_STANDARD;
|
||||
detail.Nav_CheckNoticeDetailUsers = null;
|
||||
List<T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_BASIC> basics = new List<T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_BASIC>();
|
||||
if (item.Nav_ContentsBasics != null && item.Nav_ContentsBasics.Any())
|
||||
{
|
||||
foreach (var item2 in item.Nav_ContentsBasics)
|
||||
{
|
||||
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_BASIC bas = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_BASIC();
|
||||
bas.ORG_ID = item2.ORG_ID;
|
||||
bas.SECURITY_INSPECTION_NOTICE_DETAIL_ID = detail.ID;
|
||||
bas.LAW_ID = item2.LAW_ID;
|
||||
basics.Add(bas);
|
||||
}
|
||||
}
|
||||
detail.Nav_CheckNoticeDetailBasics = basics;
|
||||
dataList.Add(detail);
|
||||
}
|
||||
result.Data = dataList;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user