隐患待上报修改
安全检查数据库导出 安全绩效报表
This commit is contained in:
		
							parent
							
								
									38abfc114c
								
							
						
					
					
						commit
						5b67f0dac6
					
				@ -6421,7 +6421,7 @@ namespace APT.BaseData.Services.DomainServices
 | 
				
			|||||||
            else
 | 
					            else
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                //如果是最后一个审批
 | 
					                //如果是最后一个审批
 | 
				
			||||||
                var entity = GetEntity<T_BS_SAFE_CHECK>(modelApp.DATA_ID, new string[] { "Nav_ListSafeCheckDetail" });
 | 
					                var entity = GetEntity<T_BS_SAFE_CHECK>(modelApp.DATA_ID, new string[] { "Nav_ListSafeCheckDetail", "Nav_User", "Nav_CheckType", "Nav_CheckTypeLevel.Nav_Enums" });
 | 
				
			||||||
                if (!entity.PLAN_SET_ID.HasValue || !entity.CHECKTIME.HasValue || entity.CHECKTIME.Value.Date == DateTime.Now.Date) //同一天
 | 
					                if (!entity.PLAN_SET_ID.HasValue || !entity.CHECKTIME.HasValue || entity.CHECKTIME.Value.Date == DateTime.Now.Date) //同一天
 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
                    entity.ISFINISHINTTIME = true;
 | 
					                    entity.ISFINISHINTTIME = true;
 | 
				
			||||||
@ -6690,6 +6690,87 @@ namespace APT.BaseData.Services.DomainServices
 | 
				
			|||||||
                //给制表人发送待办
 | 
					                //给制表人发送待办
 | 
				
			||||||
                if (entity.RISKSTATE == 10 && entity.USERID_DOPLAN.HasValue)
 | 
					                if (entity.RISKSTATE == 10 && entity.USERID_DOPLAN.HasValue)
 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    #region      隐患上报信息  发隐患上报信息 出去  流程各时间也对应
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    T_BS_RISK_SUBMIT modelSub = new T_BS_RISK_SUBMIT();
 | 
				
			||||||
 | 
					                    modelSub = new T_BS_RISK_SUBMIT();
 | 
				
			||||||
 | 
					                    modelSub.ID = Guid.NewGuid();
 | 
				
			||||||
 | 
					                    modelSub.CODE = entity.CODE;//替换成同一个
 | 
				
			||||||
 | 
					                    modelSub.NAME = entity.Nav_CheckTypeLevel.Nav_Enums.NAME + entity.Nav_CheckType.NAME;
 | 
				
			||||||
 | 
					                    modelSub.Nav_Check = entity;
 | 
				
			||||||
 | 
					                    modelSub.Nav_CheckType = entity.Nav_CheckType;
 | 
				
			||||||
 | 
					                    modelSub.Nav_CheckTypeLevel = entity.Nav_CheckTypeLevel;
 | 
				
			||||||
 | 
					                    modelSub.CREATER_ID = entity.USERID_DOPLAN;
 | 
				
			||||||
 | 
					                    modelSub.CREATE_TIME = DateTime.Now;//绩效报表 取当前时间
 | 
				
			||||||
 | 
					                    modelSub.CHECK_ID = entity.ID;
 | 
				
			||||||
 | 
					                    modelSub.CHECKTIME = entity.CHECKTIME;
 | 
				
			||||||
 | 
					                    modelSub.SUBMIT_STATUS = (int)BSSubmitStatusEnum.WaiteStart;
 | 
				
			||||||
 | 
					                    modelSub.USER_ID = modelSub.CREATER_ID;
 | 
				
			||||||
 | 
					                    modelSub.DEPARTMENT_ID = entity.Nav_User.DEPARTMENT_ID;
 | 
				
			||||||
 | 
					                    modelSub.SUBMIT_TYPE = (int)SUBMIT_TYPE.Check;
 | 
				
			||||||
 | 
					                    modelSub.ISORDEREND = false;
 | 
				
			||||||
 | 
					                    modelSub.CHECK_TYPE_ID = entity.CHECK_TYPE_ID;
 | 
				
			||||||
 | 
					                    modelSub.CHECK_TYPE_LEVEL_ID = entity.CHECK_TYPE_LEVEL_ID;
 | 
				
			||||||
 | 
					                    modelSub.ORG_ID = entity.ORG_ID;
 | 
				
			||||||
 | 
					                    List<T_BS_RISK_SUBMIT_FILE> Nav_Files = null;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    var files = GetEntities<T_BS_SAFE_CHECK_FILE>(e => e.SAFE_CHECK_ID == entity.ID, false, null);
 | 
				
			||||||
 | 
					                    if (files != null && files.Any())
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        Nav_Files = new List<T_BS_RISK_SUBMIT_FILE>();
 | 
				
			||||||
 | 
					                        foreach (var item in files)
 | 
				
			||||||
 | 
					                        {
 | 
				
			||||||
 | 
					                            Nav_Files.Add(new T_BS_RISK_SUBMIT_FILE()
 | 
				
			||||||
 | 
					                            {
 | 
				
			||||||
 | 
					                                ID = Guid.NewGuid(),
 | 
				
			||||||
 | 
					                                ORG_ID = modelSub.ORG_ID,
 | 
				
			||||||
 | 
					                                RISK_SUBMIT_ID = modelSub.ID,
 | 
				
			||||||
 | 
					                                IMG_FILE_ID = item.IMG_FILE_ID
 | 
				
			||||||
 | 
					                            });
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    List<T_BS_RISK_SUBMIT_CONTENT> ListRiskSubmitContent = new List<T_BS_RISK_SUBMIT_CONTENT>();
 | 
				
			||||||
 | 
					                    entity.Nav_ListSafeCheckDetail = entity.Nav_ListSafeCheckDetail.OrderBy(e => e.ROW_NO).ToList();
 | 
				
			||||||
 | 
					                    int ROW_NO = 0;
 | 
				
			||||||
 | 
					                    foreach (var item in entity.Nav_ListSafeCheckDetail)
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        if (!item.CHECKRESULT.HasValue || item.CHECKRESULT.Value !=20) // CHECKRESULTEnum.Same
 | 
				
			||||||
 | 
					                        {
 | 
				
			||||||
 | 
					                            continue;
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                        ROW_NO++;
 | 
				
			||||||
 | 
					                        ListRiskSubmitContent.Add(new T_BS_RISK_SUBMIT_CONTENT()
 | 
				
			||||||
 | 
					                        {
 | 
				
			||||||
 | 
					                            ID = Guid.NewGuid(),
 | 
				
			||||||
 | 
					                            ORG_ID = modelSub.ORG_ID,
 | 
				
			||||||
 | 
					                            RISK_SUBMIT_ID = modelSub.ID,
 | 
				
			||||||
 | 
					                            SAFE_CHECK_DETAIL_ID = item.ID,
 | 
				
			||||||
 | 
					                            NAME = null,
 | 
				
			||||||
 | 
					                            CODE = null,
 | 
				
			||||||
 | 
					                            //QUESTION_LEVEL = 0,
 | 
				
			||||||
 | 
					                            //RiskContentState= RiskContentState.
 | 
				
			||||||
 | 
					                            ROW_NO = ROW_NO,
 | 
				
			||||||
 | 
					                            CHECK_MAIN_ID = item.CHECK_MAIN_ID,
 | 
				
			||||||
 | 
					                            DEPARTMENT_ID = item.DEPARTMENT_ID,
 | 
				
			||||||
 | 
					                            SERIOUS_RISK = item.SERIOUS_RISK,
 | 
				
			||||||
 | 
					                            //CHECKCONTENT = item.CHECKCONTENT,
 | 
				
			||||||
 | 
					                            RISK_AREA_ID = item.RISK_AREA_ID,
 | 
				
			||||||
 | 
					                            CHECK_CONTENTS_ID = item.CHECK_CONTENTS_ID,
 | 
				
			||||||
 | 
					                            //这两个字段作为是否操作过的标签
 | 
				
			||||||
 | 
					                            //CHECK_PROJECT_ID = item.CHECK_PROJECT_ID,
 | 
				
			||||||
 | 
					                            //CHECK_PROJECT_CATEGORY_ID = item.CHECK_PROJECT_CATEGORY_ID,
 | 
				
			||||||
 | 
					                            ADDRESS = item.ADDRESS
 | 
				
			||||||
 | 
					                        });
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    #endregion
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    entity.ISNEEDTOUP = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    //检查发现问题问题 走隐患上报
 | 
					                    //检查发现问题问题 走隐患上报
 | 
				
			||||||
                    //最后时间是今天
 | 
					                    //最后时间是今天
 | 
				
			||||||
                    //DateTime dtTimeOut = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 23:59:59"));
 | 
					                    //DateTime dtTimeOut = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 23:59:59"));
 | 
				
			||||||
@ -6704,7 +6785,9 @@ namespace APT.BaseData.Services.DomainServices
 | 
				
			|||||||
                    //      UpdateEntityNoCommit(entity);//修改隐患
 | 
					                    //      UpdateEntityNoCommit(entity);//修改隐患
 | 
				
			||||||
                    //      UpdateEntity(modelSub);//添加隐患上报
 | 
					                    //      UpdateEntity(modelSub);//添加隐患上报
 | 
				
			||||||
                    //  });
 | 
					                    //  });
 | 
				
			||||||
                    NotificationTaskService.SendNotificationTask("隐患待上报:" + entity.NAME.Replace("安全检查:", ""), entity.ID, entity.ORG_ID, entity.USERID_DOPLAN.Value, entity.Nav_User.NAME, DateTime.Now, dtTimeOut, 0, "BS006", () =>
 | 
					
 | 
				
			||||||
 | 
					                    // entity.ID  被  modelSub.ID 替换
 | 
				
			||||||
 | 
					                    NotificationTaskService.SendNotificationTask("隐患待上报:" + entity.NAME.Replace("安全检查:", ""), modelSub.ID, entity.ORG_ID, entity.USERID_DOPLAN.Value, entity.Nav_User.NAME, DateTime.Now, dtTimeOut, 0, "BS006", () =>
 | 
				
			||||||
                    {
 | 
					                    {
 | 
				
			||||||
                        if (modelApp != null)
 | 
					                        if (modelApp != null)
 | 
				
			||||||
                            UpdateEntityNoCommit(modelApp);   //保存主表
 | 
					                            UpdateEntityNoCommit(modelApp);   //保存主表
 | 
				
			||||||
@ -6724,10 +6807,18 @@ namespace APT.BaseData.Services.DomainServices
 | 
				
			|||||||
                            BantchUpdateEntityNoCommit(listCheckDetail);
 | 
					                            BantchUpdateEntityNoCommit(listCheckDetail);
 | 
				
			||||||
                        if (listUpdateMain != null && listUpdateMain.Any())//安全检查库修改不可用
 | 
					                        if (listUpdateMain != null && listUpdateMain.Any())//安全检查库修改不可用
 | 
				
			||||||
                            BantchUpdateEntityNoCommit(listUpdateMain);
 | 
					                            BantchUpdateEntityNoCommit(listUpdateMain);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        UpdateEntityNoCommit(modelSub);
 | 
				
			||||||
 | 
					                        if (Nav_Files != null && Nav_Files.Any())//附件
 | 
				
			||||||
 | 
					                            BantchSaveEntityNoCommit(Nav_Files);
 | 
				
			||||||
 | 
					                        if (ListRiskSubmitContent != null && ListRiskSubmitContent.Any())
 | 
				
			||||||
 | 
					                            BantchSaveEntityNoCommit(ListRiskSubmitContent);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    });
 | 
					                    });
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
                else
 | 
					                else
 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
 | 
					                    entity.ISNEEDTOUP = true;
 | 
				
			||||||
                    //检查没问题 直接结束 安全检查
 | 
					                    //检查没问题 直接结束 安全检查
 | 
				
			||||||
                    this.UnifiedCommit(() =>
 | 
					                    this.UnifiedCommit(() =>
 | 
				
			||||||
                    {
 | 
					                    {
 | 
				
			||||||
 | 
				
			|||||||
@ -51,7 +51,9 @@ namespace APT.MS.Domain.Enums
 | 
				
			|||||||
    /// </summary>
 | 
					    /// </summary>
 | 
				
			||||||
    public enum BSSeriousRiskEnum
 | 
					    public enum BSSeriousRiskEnum
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
					        [Description("否")]
 | 
				
			||||||
        否 = 0,
 | 
					        否 = 0,
 | 
				
			||||||
 | 
					        [Description("是")]
 | 
				
			||||||
        是 = 1,
 | 
					        是 = 1,
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    /// <summary>
 | 
					    /// <summary>
 | 
				
			||||||
 | 
				
			|||||||
@ -14,6 +14,7 @@ using System.Collections.Generic;
 | 
				
			|||||||
using System.Data;
 | 
					using System.Data;
 | 
				
			||||||
using System.IO;
 | 
					using System.IO;
 | 
				
			||||||
using System.Linq;
 | 
					using System.Linq;
 | 
				
			||||||
 | 
					using System.Linq.Expressions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace APT.BS.WebApi.Controllers.Api
 | 
					namespace APT.BS.WebApi.Controllers.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@ -850,5 +851,319 @@ namespace APT.BS.WebApi.Controllers.Api
 | 
				
			|||||||
                return true;
 | 
					                return true;
 | 
				
			||||||
            });
 | 
					            });
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 获取导出数据  
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        /// <returns></returns>
 | 
				
			||||||
 | 
					        [HttpPost, Route("GetOutPutData")]
 | 
				
			||||||
 | 
					        public PagedActionResult<OutPutInfo> GetOutPutData([FromBody] KeywordPageFilter pageFilter)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            return SafeGetPagedData(delegate (PagedActionResult<OutPutInfo> result)
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                pageFilter.SelectField = null;
 | 
				
			||||||
 | 
					                pageFilter.Include = null;
 | 
				
			||||||
 | 
					                #region    获取搜索信息
 | 
				
			||||||
 | 
					                List<string> listPath = new List<string>();
 | 
				
			||||||
 | 
					                //Groups => Rules
 | 
				
			||||||
 | 
					                Guid? CHECK_TYPE_ID = null;//CHECK_TYPE_ID
 | 
				
			||||||
 | 
					                Guid? RISK_AREA_ID = null;//RISK_AREA_ID
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                ////Rules
 | 
				
			||||||
 | 
					                //BSMineTypeEnum? CHECKOBJECT = null;//CHECKOBJECT
 | 
				
			||||||
 | 
					                BSQuestionLevelEnum? QUESTION_LEVEL = null; //QUESTION_LEVEL
 | 
				
			||||||
 | 
					                BSSeriousRiskEnum? SERIOUS_RISK = null; //SERIOUS_RISK
 | 
				
			||||||
 | 
					                string CHECKCONTENT = string.Empty;
 | 
				
			||||||
 | 
					                //string CHECKPROOF = string.Empty;
 | 
				
			||||||
 | 
					                string CheckTypeLevelName = string.Empty; //Nav_CheckTypeLevel.Nav_Enums.NAME
 | 
				
			||||||
 | 
					                string CheckProjectNAME = string.Empty; //Nav_CheckProject.NAME
 | 
				
			||||||
 | 
					                string CheckProjectCategoryNAME = string.Empty;//Nav_CheckProjectCategory.NAME
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                if (pageFilter.FilterGroup.Groups != null && pageFilter.FilterGroup.Groups.Any())
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    foreach (var item in pageFilter.FilterGroup.Groups)
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        if (item.Rules != null && item.Rules.Any())
 | 
				
			||||||
 | 
					                        {
 | 
				
			||||||
 | 
					                            foreach (var itemRule in item.Rules)
 | 
				
			||||||
 | 
					                            {
 | 
				
			||||||
 | 
					                                if (itemRule.Field == "CHECK_TYPE_ID" && itemRule.Value != null)
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    CHECK_TYPE_ID = new Guid(itemRule.Value.ToString());
 | 
				
			||||||
 | 
					                                    listPath.Add("Nav_CheckType");
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					                                else if (itemRule.Field == "RISK_AREA_ID" && itemRule.Value != null)
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    RISK_AREA_ID = new Guid(itemRule.Value.ToString());
 | 
				
			||||||
 | 
					                                    listPath.Add("Nav_RiskArea");
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					                            }
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                if (pageFilter.FilterGroup.Rules != null && pageFilter.FilterGroup.Rules.Any())
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    foreach (var item in pageFilter.FilterGroup.Rules)
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        switch (item.Field)
 | 
				
			||||||
 | 
					                        {
 | 
				
			||||||
 | 
					                            case "Nav_CheckProjectCategory.NAME":
 | 
				
			||||||
 | 
					                                CheckProjectCategoryNAME = item.Value.ToString();
 | 
				
			||||||
 | 
					                                listPath.Add("Nav_CheckProjectCategory");
 | 
				
			||||||
 | 
					                                break;
 | 
				
			||||||
 | 
					                            case "Nav_CheckProject.NAME":
 | 
				
			||||||
 | 
					                                CheckProjectNAME = item.Value.ToString();
 | 
				
			||||||
 | 
					                                listPath.Add("Nav_CheckProject");
 | 
				
			||||||
 | 
					                                break;
 | 
				
			||||||
 | 
					                            case "Nav_CheckTypeLevel.Nav_Enums.NAME":
 | 
				
			||||||
 | 
					                                CheckTypeLevelName = item.Value.ToString();
 | 
				
			||||||
 | 
					                                listPath.Add("Nav_CheckTypeLevel.Nav_Enums");
 | 
				
			||||||
 | 
					                                break;
 | 
				
			||||||
 | 
					                            case "CHECKCONTENT":
 | 
				
			||||||
 | 
					                                CHECKCONTENT = item.Value.ToString();
 | 
				
			||||||
 | 
					                                break;
 | 
				
			||||||
 | 
					                            case "QUESTION_LEVEL":
 | 
				
			||||||
 | 
					                                QUESTION_LEVEL = (BSQuestionLevelEnum)int.Parse(item.Value.ToString());
 | 
				
			||||||
 | 
					                                break;
 | 
				
			||||||
 | 
					                            case "SERIOUS_RISK":
 | 
				
			||||||
 | 
					                                SERIOUS_RISK = (BSSeriousRiskEnum)int.Parse(item.Value.ToString());
 | 
				
			||||||
 | 
					                                break;
 | 
				
			||||||
 | 
					                            default:
 | 
				
			||||||
 | 
					                                break;
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //检查范围    "检查区域(辨识区域)"	检查类型	检查项目分类	检查层级	责任单位	检查周期	"检查项目(辨识对象)"	"检查内容(风险对象 + 是否 + 管控措施)"	检查依据	"检查问题描述(失效后的所有现象,逐条填写)"	检查问题等级	重大隐患类别	整改建议与措施	责任人
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                #endregion
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //检查库
 | 
				
			||||||
 | 
					                var IListCheckMain = GetEntities<T_BS_CHECK_MAIN>(e => !e.IS_DELETED && e.RISK_AREA_ID.HasValue && e.CHECK_QUESTION_ID.HasValue && e.CHECK_TYPE_ID.HasValue && e.CHECK_PROJECT_ID.HasValue && e.CHECK_TYPE_LEVEL_ID.HasValue, pageFilter, null).OrderByDescending(e => e.CREATE_TIME);//&& e.Nav_ListMainDep.Any()&& e.CHECK_CONTENTS_ID.HasValue
 | 
				
			||||||
 | 
					                if (IListCheckMain == null || !IListCheckMain.Any())
 | 
				
			||||||
 | 
					                    return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //检查类型
 | 
				
			||||||
 | 
					                Expression<Func<T_BS_CHECK_TYPE, bool>> expressionCheckType = e => !e.IS_DELETED;
 | 
				
			||||||
 | 
					                if (CHECK_TYPE_ID.HasValue)
 | 
				
			||||||
 | 
					                    expressionCheckType = expressionCheckType.And(e => e.ID == CHECK_TYPE_ID.Value);
 | 
				
			||||||
 | 
					                if (!string.IsNullOrEmpty(CheckTypeLevelName))
 | 
				
			||||||
 | 
					                    expressionCheckType = expressionCheckType.And(e => e.Nav_ListCheckTypeLevel.Where(ee => ee.Nav_Enums.NAME.Contains(CheckTypeLevelName)).Any());
 | 
				
			||||||
 | 
					                var IListCheckType = GetEntities<T_BS_CHECK_TYPE>(expressionCheckType, null, "Nav_ListCheckTypeLevel.Nav_Enums");
 | 
				
			||||||
 | 
					                if (IListCheckType == null || !IListCheckType.Any())
 | 
				
			||||||
 | 
					                    return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //检查区域
 | 
				
			||||||
 | 
					                Expression<Func<T_HM_RISK_AREA, bool>> expressionArea = e => !e.IS_DELETED;
 | 
				
			||||||
 | 
					                if (RISK_AREA_ID.HasValue)
 | 
				
			||||||
 | 
					                    expressionArea = expressionArea.And(e => e.ID == RISK_AREA_ID.Value);
 | 
				
			||||||
 | 
					                var IListArea = GetEntities<T_HM_RISK_AREA>(expressionArea, null, null);
 | 
				
			||||||
 | 
					                if (IListArea == null || !IListArea.Any())
 | 
				
			||||||
 | 
					                    return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //检查项目
 | 
				
			||||||
 | 
					                Expression<Func<T_BS_CHECK_PROJECT, bool>> expressionProject = e => !e.IS_DELETED;
 | 
				
			||||||
 | 
					                if (!string.IsNullOrEmpty(CheckProjectNAME))
 | 
				
			||||||
 | 
					                    expressionProject = expressionProject.And(e => e.NAME.Contains(CheckProjectNAME));
 | 
				
			||||||
 | 
					                var IListProject = GetEntities<T_BS_CHECK_PROJECT>(expressionProject, null, null);
 | 
				
			||||||
 | 
					                if (IListProject == null || !IListProject.Any())
 | 
				
			||||||
 | 
					                    return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //检查项目分类
 | 
				
			||||||
 | 
					                Expression<Func<T_BS_CHECK_PROJECT_CATEGORY, bool>> expressionProjectCategory = e => !e.IS_DELETED;
 | 
				
			||||||
 | 
					                if (!string.IsNullOrEmpty(CheckProjectCategoryNAME))
 | 
				
			||||||
 | 
					                    expressionProjectCategory = expressionProjectCategory.And(e => e.NAME.Contains(CheckProjectCategoryNAME));
 | 
				
			||||||
 | 
					                var IiListProjectCategory = GetEntities<T_BS_CHECK_PROJECT_CATEGORY>(expressionProjectCategory, null, null);
 | 
				
			||||||
 | 
					                if (IiListProjectCategory == null || !IiListProjectCategory.Any())
 | 
				
			||||||
 | 
					                    return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //检查内容
 | 
				
			||||||
 | 
					                Expression<Func<T_BS_CHECK_CONTENTS, bool>> expressionContents = e => !e.IS_DELETED;
 | 
				
			||||||
 | 
					                if (!string.IsNullOrEmpty(CHECKCONTENT))
 | 
				
			||||||
 | 
					                    expressionContents = expressionContents.And(e => e.CHECKCONTENT.Contains(CHECKCONTENT));
 | 
				
			||||||
 | 
					                if (QUESTION_LEVEL.HasValue)
 | 
				
			||||||
 | 
					                    expressionContents = expressionContents.And(e => e.Nav_ListCheckQuestion.Where(ee => ee.QUESTION_LEVEL == QUESTION_LEVEL.Value).Any());
 | 
				
			||||||
 | 
					                var IListContents = GetEntities<T_BS_CHECK_CONTENTS>(expressionContents, null, null);
 | 
				
			||||||
 | 
					                if (IListContents == null || !IListContents.Any())
 | 
				
			||||||
 | 
					                    return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //检查问题
 | 
				
			||||||
 | 
					                Expression<Func<T_BS_CHECK_QUESTION, bool>> expressionQuestopn = e => !e.IS_DELETED;
 | 
				
			||||||
 | 
					                if (QUESTION_LEVEL.HasValue)
 | 
				
			||||||
 | 
					                    expressionQuestopn = expressionQuestopn.And(e => e.QUESTION_LEVEL == QUESTION_LEVEL.Value);
 | 
				
			||||||
 | 
					                if (SERIOUS_RISK.HasValue)
 | 
				
			||||||
 | 
					                    expressionQuestopn = expressionQuestopn.And(e => e.SERIOUS_RISK == (int)SERIOUS_RISK.Value);
 | 
				
			||||||
 | 
					                var IListQuestion = GetEntities<T_BS_CHECK_QUESTION>(e => !e.IS_DELETED, null, null);
 | 
				
			||||||
 | 
					                if (IListQuestion == null || !IListQuestion.Any())
 | 
				
			||||||
 | 
					                    return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                var listMainDep = GetEntities<T_BS_CHECK_CONTENT_MAIN_DEPARTMENT>(e => !e.IS_DELETED && e.MAIN_ID.HasValue, null, null);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //责任部门  Main  Nav_ListMainDep
 | 
				
			||||||
 | 
					                var IListDep = GetEntities<T_FM_DEPARTMENT>(e => !e.IS_DELETED, null, null);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                string split = "、";//char[] charSplit = new char[] { '、', ';' };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                List<OutPutData> listDataResult = new List<OutPutData>();
 | 
				
			||||||
 | 
					                OutPutData model = null;
 | 
				
			||||||
 | 
					                List<string> listDep = null;
 | 
				
			||||||
 | 
					                T_BS_CHECK_QUESTION mainQuestion = null;
 | 
				
			||||||
 | 
					                BSPLANCHECKOBJECTEnum? RESPONOBJECT = null;
 | 
				
			||||||
 | 
					                T_BS_CHECK_TYPE modelCheckType = null;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                foreach (var item in IListCheckMain)
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    listDep = new List<string>();
 | 
				
			||||||
 | 
					                    RESPONOBJECT = null;
 | 
				
			||||||
 | 
					                    item.Nav_ListMainDep = listMainDep.Where(e => e.MAIN_ID.Value == item.ID).ToList();
 | 
				
			||||||
 | 
					                    if (item.Nav_ListMainDep != null && item.Nav_ListMainDep.Any())
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        foreach (var itemDep in item.Nav_ListMainDep)
 | 
				
			||||||
 | 
					                        {
 | 
				
			||||||
 | 
					                            if (!itemDep.IS_DELETED && itemDep.DEPARTMENT_ID.HasValue)
 | 
				
			||||||
 | 
					                            {
 | 
				
			||||||
 | 
					                                listDep.Add(IListDep.FirstOrDefault(e => e.ID == itemDep.DEPARTMENT_ID.Value)?.NAME);
 | 
				
			||||||
 | 
					                                RESPONOBJECT = itemDep.RESPONOBJECT;
 | 
				
			||||||
 | 
					                            }
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                    else
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        RESPONOBJECT = null;
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                    if (!listDep.Any())
 | 
				
			||||||
 | 
					                        continue;
 | 
				
			||||||
 | 
					                    mainQuestion = IListQuestion.FirstOrDefault(e => e.ID == item.CHECK_QUESTION_ID.Value);
 | 
				
			||||||
 | 
					                    if (mainQuestion == null)
 | 
				
			||||||
 | 
					                        continue;
 | 
				
			||||||
 | 
					                    modelCheckType = IListCheckType.FirstOrDefault(e => e.ID == item.CHECK_TYPE_ID.Value);
 | 
				
			||||||
 | 
					                    if (mainQuestion == null)
 | 
				
			||||||
 | 
					                        continue;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    //责任单位 合并为一个单元
 | 
				
			||||||
 | 
					                    model = new OutPutData();
 | 
				
			||||||
 | 
					                    model.CHECKOBJECT = ((BSMineTypeEnum)item.CHECKOBJECT).GetDescription();
 | 
				
			||||||
 | 
					                    model.AREA_NAME = (IListArea.FirstOrDefault(e => e.ID == item.RISK_AREA_ID.Value))?.NAME;
 | 
				
			||||||
 | 
					                    model.CHECK_TYPE_NAME = modelCheckType.NAME;
 | 
				
			||||||
 | 
					                    model.CHECK_PROJECT_CATEGORY_NAME = (IiListProjectCategory.FirstOrDefault(e => e.ID == item.CHECK_PROJECT_CATEGORY_ID.Value))?.NAME;
 | 
				
			||||||
 | 
					                    model.CHECK_TYPE_LEVEL_NAME = modelCheckType.Nav_ListCheckTypeLevel.FirstOrDefault(e => e.ID == item.CHECK_TYPE_LEVEL_ID)?.Nav_Enums?.NAME;
 | 
				
			||||||
 | 
					                    model.List_DEPARTMENT_NAME = string.Join(split, listDep);
 | 
				
			||||||
 | 
					                    model.JCZQ = "";
 | 
				
			||||||
 | 
					                    model.CHECK_PROJECT_NAME = (IListProject.FirstOrDefault(e => e.ID == item.CHECK_PROJECT_ID.Value))?.NAME;
 | 
				
			||||||
 | 
					                    model.CHECKCONTENT = item.CHECKCONTENT;
 | 
				
			||||||
 | 
					                    model.CHECKPROOF = item.CHECKPROOF;
 | 
				
			||||||
 | 
					                    model.DESCREPTION = mainQuestion.DESCREPTION;
 | 
				
			||||||
 | 
					                    model.QUESTION_LEVEL = ((BSQuestionLevelEnum)item.QUESTION_LEVEL).GetDescription();
 | 
				
			||||||
 | 
					                    if (item.SERIOUS_RISK == (int)BSSeriousRiskEnum.是)
 | 
				
			||||||
 | 
					                        model.SERIOUS_RISK = "是";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    model.DEMAND = mainQuestion.DEMAND;
 | 
				
			||||||
 | 
					                    model.RESPONOBJECT = RESPONOBJECT.HasValue ? RESPONOBJECT.GetDescription() : "";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    listDataResult.Add(model);
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                OutPutInfo outPutInfo = new OutPutInfo();
 | 
				
			||||||
 | 
					                outPutInfo.listData = listDataResult;
 | 
				
			||||||
 | 
					                outPutInfo.listColDataTitle = new List<string>() { "检查范围", "检查区域", "检查类型", "检查项目分类", "检查层级", "责任单位", "检查周期", "检查项目", "检查内容", "检查依据", "检查问题描述", "检查问题等级", "重大隐患类别", "整改建议与措施", "责任人" };
 | 
				
			||||||
 | 
					                outPutInfo.listColDataIndex = new List<string>() { "CHECKOBJECT", "AREA_NAME", "CHECK_TYPE_NAME", "CHECK_PROJECT_CATEGORY_NAME", "CHECK_TYPE_LEVEL_NAME", "List_DEPARTMENT_NAME", "JCZQ", "CHECK_PROJECT_NAME", "CHECKCONTENT", "CHECKPROOF", "DESCREPTION", "QUESTION_LEVEL", "SERIOUS_RISK", "DEMAND", "RESPONOBJECT" };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                result.Data = new List<OutPutInfo>() { outPutInfo };
 | 
				
			||||||
 | 
					                result.TotalCount = listDataResult.Count;
 | 
				
			||||||
 | 
					            });
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public class OutPutData
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 检查范围
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string CHECKOBJECT { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 检查区域
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string AREA_NAME { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 检查类型
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string CHECK_TYPE_NAME { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 检查项目分类
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string CHECK_PROJECT_CATEGORY_NAME { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 检查层级
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string CHECK_TYPE_LEVEL_NAME { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 责任单位
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string List_DEPARTMENT_NAME { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 检查周期--空 
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string JCZQ { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 检查项目 
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string CHECK_PROJECT_NAME { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 检查内容 
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string CHECKCONTENT { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 检查依据 
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string CHECKPROOF { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 检查问题描述
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string DESCREPTION { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 问题等级  BSQuestionLevelEnum   检查问题等级
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string QUESTION_LEVEL { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 是否重大隐患  重大隐患类别 
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string SERIOUS_RISK { get; set; } = BSSeriousRiskEnum.否.GetDescription();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 整改建议与措施
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string DEMAND { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 责任对象 string  责任人
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public string RESPONOBJECT { get; set; } = BSPLANCHECKOBJECTEnum.Head.GetDescription();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /// <summary>
 | 
				
			||||||
 | 
					    /// 自定义导出数据结构
 | 
				
			||||||
 | 
					    /// </summary>
 | 
				
			||||||
 | 
					    public class OutPutInfo
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        public List<OutPutData> listData { get; set; }
 | 
				
			||||||
 | 
					        public List<string> listColDataIndex { get; set; }
 | 
				
			||||||
 | 
					        public List<string> listColDataTitle { get; set; }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -197,6 +197,302 @@ namespace APT.BS.WebApi.Controllers.Api
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 隐患待上报 改版 获取信息
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        /// <param name="filter">过滤实体</param>
 | 
				
			||||||
 | 
					        /// <returns></returns>
 | 
				
			||||||
 | 
					        [HttpPost, Route("GetBS006")]
 | 
				
			||||||
 | 
					        public JsonActionResult<T_BS_RISK_SUBMIT> GetBS006([FromBody] KeywordFilter filter)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            return SafeExecute<T_BS_RISK_SUBMIT>(() =>
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                List<FilterRule> filterRules = filter.FilterGroup.Rules.ToList();
 | 
				
			||||||
 | 
					                var guid = new Guid(filterRules[0].Value.ToString());
 | 
				
			||||||
 | 
					                var modelSub = GetEntity<T_BS_RISK_SUBMIT>(e => e.ID == guid, new string[] { "Nav_CheckType", "Nav_CheckTypeLevel.Nav_Enums", "Nav_Files.Nav_ImgFile.Nav_File", "Nav_User" });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //上报明细 是不完整的 明细信息重新 整理
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //这两个字段作为是否操作过的标签
 | 
				
			||||||
 | 
					                //CHECK_PROJECT_ID = item.CHECK_PROJECT_ID,
 | 
				
			||||||
 | 
					                //CHECK_PROJECT_CATEGORY_ID = item.CHECK_PROJECT_CATEGORY_ID,
 | 
				
			||||||
 | 
					                //CHECKCONTENT = item.CHECKCONTENT,
 | 
				
			||||||
 | 
					                var isFirst = GetCount<T_BS_RISK_SUBMIT_CONTENT>(e => e.RISK_SUBMIT_ID == guid && (e.CHECK_PROJECT_ID.HasValue || e.CHECK_PROJECT_CATEGORY_ID.HasValue), null) == 0;
 | 
				
			||||||
 | 
					                if (isFirst)
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    var listSubContents = GetEntities<T_BS_RISK_SUBMIT_CONTENT>(e => e.RISK_SUBMIT_ID == guid, null, null).ToList();
 | 
				
			||||||
 | 
					                    #region    整合  GetSubmitContent 方法
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    Expression<Func<T_BS_SAFE_CHECK_DETAIL, bool>> expression = e => e.SAFE_CHECK_ID == modelSub.CHECK_ID && !e.IS_DELETED && e.CHECKRESULT.HasValue && e.CHECKRESULT != (int)CHECKRESULTEnum.None;
 | 
				
			||||||
 | 
					                    var info = this.GetEntities(expression, null, new string[] { "Nav_ListCheckDetailQuestion.Nav_Question", "Nav_CheckArea", "Nav_CheckMain", "Nav_ListCheckDetailReason.Nav_RiskReason", "Nav_Files.Nav_ImgFile.Nav_File" });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    List<Guid> listArearId = new List<Guid>();
 | 
				
			||||||
 | 
					                    foreach (var item in info)
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        if (!listArearId.Contains(item.RISK_AREA_ID.Value))
 | 
				
			||||||
 | 
					                        {
 | 
				
			||||||
 | 
					                            listArearId.Add(item.RISK_AREA_ID.Value);
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    List<Guid> listQID = new List<Guid>() { new Guid("55555555-5555-5555-5555-555555555555") };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    //责任部门
 | 
				
			||||||
 | 
					                    List<T_FM_DEPARTMENT> listDep = new List<T_FM_DEPARTMENT>();
 | 
				
			||||||
 | 
					                    T_FM_DEPARTMENT depCheck = null;
 | 
				
			||||||
 | 
					                    Dictionary<Guid, T_FM_USER> dicDepSafer = new Dictionary<Guid, T_FM_USER>();
 | 
				
			||||||
 | 
					                    if (info.Any() && info.Count() > 0)
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        foreach (var item in info)
 | 
				
			||||||
 | 
					                        {
 | 
				
			||||||
 | 
					                            if (!item.DEPARTMENT_ID.HasValue)
 | 
				
			||||||
 | 
					                            {
 | 
				
			||||||
 | 
					                                continue;
 | 
				
			||||||
 | 
					                            }
 | 
				
			||||||
 | 
					                            depCheck = listDep.Find(e => e.ID == item.DEPARTMENT_ID);
 | 
				
			||||||
 | 
					                            if (depCheck == null)
 | 
				
			||||||
 | 
					                            {
 | 
				
			||||||
 | 
					                                depCheck = GetEntity<T_FM_DEPARTMENT>(item.DEPARTMENT_ID.Value, "Nav_User");
 | 
				
			||||||
 | 
					                                listDep.Add(depCheck);
 | 
				
			||||||
 | 
					                            }
 | 
				
			||||||
 | 
					                            if (depCheck == null)
 | 
				
			||||||
 | 
					                            {
 | 
				
			||||||
 | 
					                                continue;
 | 
				
			||||||
 | 
					                            }
 | 
				
			||||||
 | 
					                            foreach (var itemQ in item.Nav_ListCheckDetailQuestion)
 | 
				
			||||||
 | 
					                            {
 | 
				
			||||||
 | 
					                                if (listQID.Contains(itemQ.Nav_Question.ID))
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    continue;
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                T_BS_RISK_SUBMIT_CONTENT model = listSubContents.FirstOrDefault(e => e.SAFE_CHECK_DETAIL_ID == item.ID);// new T_BS_RISK_SUBMIT_CONTENT();
 | 
				
			||||||
 | 
					                                if (model == null)
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    model = new T_BS_RISK_SUBMIT_CONTENT();
 | 
				
			||||||
 | 
					                                    listSubContents.Add(model);
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                model.NAME = string.Empty;
 | 
				
			||||||
 | 
					                                model.CODE = string.Empty;
 | 
				
			||||||
 | 
					                                model.RISK_SUBMIT_ID = modelSub.ID;
 | 
				
			||||||
 | 
					                                model.CHECK_MAIN_ID = item.CHECK_MAIN_ID;
 | 
				
			||||||
 | 
					                                model.Nav_CheckMain = item.Nav_CheckMain;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                model.DEPARTMENT_ID = item.DEPARTMENT_ID;
 | 
				
			||||||
 | 
					                                model.Nav_Department = depCheck;
 | 
				
			||||||
 | 
					                                if (item.Nav_Files != null && item.Nav_Files.Any())
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    List<T_BS_RISK_SUBMIT_CONTENT_FILE> listFiles = new List<T_BS_RISK_SUBMIT_CONTENT_FILE>();
 | 
				
			||||||
 | 
					                                    foreach (var itemF in item.Nav_Files)
 | 
				
			||||||
 | 
					                                    {
 | 
				
			||||||
 | 
					                                        listFiles.Add(new T_BS_RISK_SUBMIT_CONTENT_FILE()
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            ID = Guid.NewGuid(),
 | 
				
			||||||
 | 
					                                            RISK_SUBMIT_ID = modelSub.ID,
 | 
				
			||||||
 | 
					                                            RISK_SUBMIT_CONTENT_ID = model.ID,
 | 
				
			||||||
 | 
					                                            IMG_FILE_ID = itemF.IMG_FILE_ID,
 | 
				
			||||||
 | 
					                                            Nav_ImgFile = itemF.Nav_ImgFile,
 | 
				
			||||||
 | 
					                                            IS_DELETED = false,
 | 
				
			||||||
 | 
					                                            ORG_ID = itemF.ORG_ID,
 | 
				
			||||||
 | 
					                                            //ENTITY_ORG_TPYE=itemF.ENTITY_ORG_TPYE,
 | 
				
			||||||
 | 
					                                            //FORM_ID=null,
 | 
				
			||||||
 | 
					                                            //FLOW_STATUS= itemF.FLOW_STATUS,
 | 
				
			||||||
 | 
					                                            //FLOW_SEND_STATUS=itemF.FLOW_SEND_STATUS,
 | 
				
			||||||
 | 
					                                            //FLOW_ID=itemF.FLOW_ID,
 | 
				
			||||||
 | 
					                                            //CREATE_TIME=DateTime.Now,
 | 
				
			||||||
 | 
					                                            //MODIFY_TIME=DateTime.Now,
 | 
				
			||||||
 | 
					                                            //CREATER_ID=
 | 
				
			||||||
 | 
					                                            //MODIFIER_ID
 | 
				
			||||||
 | 
					                                            //T_BS_RISK_SUBMIT_CONTENT_BACKID
 | 
				
			||||||
 | 
					                                        });
 | 
				
			||||||
 | 
					                                    }
 | 
				
			||||||
 | 
					                                    model.Nav_Files = listFiles;
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					                                //wyw1114-1
 | 
				
			||||||
 | 
					                                if (!item.CHECK_MAIN_ID.HasValue || item.CHECK_MAIN_ID.Value == Guid.Empty)
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    //检查库信息为空(手动添加组合  添加的人是谁,对应责任人就是对应隐患上报的人)
 | 
				
			||||||
 | 
					                                    model.USER_ID = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
 | 
				
			||||||
 | 
					                                    model.Nav_User = GetEntity<T_FM_USER>(model.USER_ID.Value);
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					                                else
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    //if (item.Nav_CheckMain.RESPONOBJECT == BSPLANCHECKOBJECTEnum.Head || item.Nav_CheckMain.RESPONOBJECT == BSPLANCHECKOBJECTEnum.ClassMonitor)
 | 
				
			||||||
 | 
					                                    if (depCheck.USER_ID == depCheck.USER_ID)
 | 
				
			||||||
 | 
					                                    {
 | 
				
			||||||
 | 
					                                        model.USER_ID = depCheck.USER_ID;
 | 
				
			||||||
 | 
					                                        model.Nav_User = depCheck.Nav_User;
 | 
				
			||||||
 | 
					                                    }
 | 
				
			||||||
 | 
					                                    else
 | 
				
			||||||
 | 
					                                    {
 | 
				
			||||||
 | 
					                                        //对应的安全员
 | 
				
			||||||
 | 
					                                        if (!dicDepSafer.ContainsKey(model.DEPARTMENT_ID.Value))
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            var depSafer = GetEntity<T_FM_USER>(e => e.DEPARTMENT_ID == model.DEPARTMENT_ID && e.APPROVE_ROLE_ID.HasValue && e.Nav_ApproveRole.NAME.Contains("安全"), "Nav_ApproveRole");
 | 
				
			||||||
 | 
					                                            if (depSafer == null)
 | 
				
			||||||
 | 
					                                            {
 | 
				
			||||||
 | 
					                                                continue;
 | 
				
			||||||
 | 
					                                            }
 | 
				
			||||||
 | 
					                                            dicDepSafer.Add(model.DEPARTMENT_ID.Value, depSafer);
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                        model.Nav_User = dicDepSafer[model.DEPARTMENT_ID.Value];
 | 
				
			||||||
 | 
					                                        model.USER_ID = model.Nav_User.ID;
 | 
				
			||||||
 | 
					                                    }
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                //整改责任人  默认  通知责任人 
 | 
				
			||||||
 | 
					                                if (model.USER_ID.HasValue)
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    model.Nav_UserDeal = model.Nav_User;
 | 
				
			||||||
 | 
					                                    model.DEAL_USER_ID = model.USER_ID.Value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                    model.DEAL_DEPARTMENT_ID = model.DEPARTMENT_ID.Value;
 | 
				
			||||||
 | 
					                                    model.Nav_DepartmentDeal = model.Nav_Department;
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                //if (item.RISK_AREA_ID.HasValue && dicRiskUser.ContainsKey(item.RISK_AREA_ID.Value) && dicRiskUser[item.RISK_AREA_ID.Value] != null)
 | 
				
			||||||
 | 
					                                //{
 | 
				
			||||||
 | 
					                                //    model.USER_ID = dicRiskUser[item.RISK_AREA_ID.Value].ID;
 | 
				
			||||||
 | 
					                                //    model.DEPARTMENT_ID = dicRiskUser[item.RISK_AREA_ID.Value].DEPARTMENT_ID;
 | 
				
			||||||
 | 
					                                //    model.Nav_User = dicRiskUser[item.RISK_AREA_ID.Value];
 | 
				
			||||||
 | 
					                                //    model.Nav_Department = dicRiskUser[item.RISK_AREA_ID.Value].Nav_Department;
 | 
				
			||||||
 | 
					                                //}
 | 
				
			||||||
 | 
					                                //else
 | 
				
			||||||
 | 
					                                //{
 | 
				
			||||||
 | 
					                                //    model.USER_ID = null;
 | 
				
			||||||
 | 
					                                //    model.DEPARTMENT_ID = null;
 | 
				
			||||||
 | 
					                                //}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                model.Nav_SafeCheckDetail = item;
 | 
				
			||||||
 | 
					                                model.CHECK_MAIN_ID = item.CHECK_MAIN_ID;
 | 
				
			||||||
 | 
					                                model.SAFE_CHECK_ID = item.SAFE_CHECK_ID;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                model.CHECK_PROJECT_ID = item.CHECK_PROJECT_ID;
 | 
				
			||||||
 | 
					                                //model.Nav_CheckProject = item.Nav_CheckProject;
 | 
				
			||||||
 | 
					                                model.CHECK_PROJECT_PROJECT_CATEGORY_ID = item.CHECK_PROJECT_PROJECT_CATEGORY_ID;
 | 
				
			||||||
 | 
					                                //model.Nav_CheckProjectProjectCategory = item.Nav_CheckProjectProjectCategory;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                model.CHECK_PROJECT_CATEGORY_ID = item.CHECK_PROJECT_CATEGORY_ID;//0927
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                model.SERIOUS_RISK = item.SERIOUS_RISK;
 | 
				
			||||||
 | 
					                                model.CHECKCONTENT = item.CHECKCONTENT;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                model.SAFE_CHECK_DETAIL_ID = model.Nav_SafeCheckDetail.ID;
 | 
				
			||||||
 | 
					                                model.QUESTION_LEVEL = item.QUESTION_LEVEL.HasValue ? item.QUESTION_LEVEL.Value : item.Nav_CheckMain.QUESTION_LEVEL;//默认等级和原来一致
 | 
				
			||||||
 | 
					                                model.QUESTION_LEVEL_SHOW = model.QUESTION_LEVEL > 0 ? ((BSQuestionLevelEnum)(model.QUESTION_LEVEL)).GetDescription() : "";//默认等级和原来一致
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                model.RISK_AREA_ID = item.RISK_AREA_ID;
 | 
				
			||||||
 | 
					                                //model.CHECK_QUESTION_ID = item.Nav_CheckMain.Nav_CheckQuestion.ID;
 | 
				
			||||||
 | 
					                                if (item.CHECKRESULT.HasValue && item.CHECKRESULT == (int)CHECKRESULTEnum.Same)
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    model.Nav_SafeCheckDetail.REMARK_RESULT = itemQ.Nav_Question.DESCREPTION;
 | 
				
			||||||
 | 
					                                    model.Nav_Question = itemQ.Nav_Question;// item.Nav_CheckQuestion;
 | 
				
			||||||
 | 
					                                    model.DESCREPTION = itemQ.Nav_Question.DESCREPTION;//  item.Nav_CheckQuestion.DESCREPTION;//取检查问题的 描述
 | 
				
			||||||
 | 
					                                    model.DEMAND = itemQ.Nav_Question.DEMAND;//  item.Nav_CheckQuestion.DEMAND;
 | 
				
			||||||
 | 
					                                    model.CHECK_QUESTION_ID = itemQ.Nav_Question.ID;//  item.Nav_CheckQuestion.ID;
 | 
				
			||||||
 | 
					                                    model.PROOF = item.CHECKPROOF;
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					                                else
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    model.Nav_SafeCheckDetail.REMARK_RESULT = item.REMARK_RESULT;
 | 
				
			||||||
 | 
					                                    model.DESCREPTION = item.REMARK_RESULT;//其他 取安全检查的 备注
 | 
				
			||||||
 | 
					                                    model.DEMAND = "";
 | 
				
			||||||
 | 
					                                    model.CHECK_QUESTION_ID = null;
 | 
				
			||||||
 | 
					                                    model.PROOF = null;
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                model.CHECK_CONTENTS_ID = item.CHECK_CONTENTS_ID;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                model.ADDRESS = item.ADDRESS;//隐患地点
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                int delayDays = GetDealyDays(model.QUESTION_LEVEL);
 | 
				
			||||||
 | 
					                                model.LastDateSystem = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 23:59:59")).AddDays(delayDays);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                //item.Nav_ListCheckDetailReason
 | 
				
			||||||
 | 
					                                //model.Nav_ListRiskQuestionReason=
 | 
				
			||||||
 | 
					                                if (item.Nav_ListCheckDetailReason != null && item.Nav_ListCheckDetailReason.Any())
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    model.Nav_ListRiskQuestionReason = new List<T_BS_RISK_SUBMIT_CONTENT_REASON>();
 | 
				
			||||||
 | 
					                                    foreach (var itemR in item.Nav_ListCheckDetailReason)
 | 
				
			||||||
 | 
					                                    {
 | 
				
			||||||
 | 
					                                        model.Nav_ListRiskQuestionReason.Add(new T_BS_RISK_SUBMIT_CONTENT_REASON()
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            ID = Guid.NewGuid(),
 | 
				
			||||||
 | 
					                                            RISK_SUBMIT_CONTENT_ID = model.ID,
 | 
				
			||||||
 | 
					                                            Nav_RiskSubmitContent = model,
 | 
				
			||||||
 | 
					                                            Nav_RiskReason = itemR.Nav_RiskReason,
 | 
				
			||||||
 | 
					                                            RISK_REASON_ID = itemR.RISK_REASON_ID,
 | 
				
			||||||
 | 
					                                            IS_DELETED = false,
 | 
				
			||||||
 | 
					                                            ORG_ID = itemR.ORG_ID,
 | 
				
			||||||
 | 
					                                            //ENTITY_ORG_TPYE = ,
 | 
				
			||||||
 | 
					                                            //FORM_ID = ,
 | 
				
			||||||
 | 
					                                            //FLOW_STATUS = ,
 | 
				
			||||||
 | 
					                                            //FLOW_SEND_STATUS = ,
 | 
				
			||||||
 | 
					                                            //FLOW_ID = ,
 | 
				
			||||||
 | 
					                                            CREATE_TIME = DateTime.Now,
 | 
				
			||||||
 | 
					                                            MODIFY_TIME = DateTime.Now,
 | 
				
			||||||
 | 
					                                            //CREATER_ID = ,
 | 
				
			||||||
 | 
					                                            //MODIFIER_ID = ,
 | 
				
			||||||
 | 
					                                            //T_BS_RISK_SUBMIT_CONTENT_BACKID = ,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                        });
 | 
				
			||||||
 | 
					                                    }
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                            }
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        #region   验收人 默认为 责任组织 上一级的安全员
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        var listDepID = listSubContents.Where(e => e.DEPARTMENT_ID.HasValue).Select(e => e.DEPARTMENT_ID.Value).Distinct();
 | 
				
			||||||
 | 
					                        if (listDepID != null && listDepID.Any())
 | 
				
			||||||
 | 
					                        {
 | 
				
			||||||
 | 
					                            var listDeps = GetEntities<T_FM_DEPARTMENT>(e => listDepID.Contains(e.ID), null);
 | 
				
			||||||
 | 
					                            listDepID = listDeps.Where(e => e.PARENT_ID.HasValue).Select(e => e.PARENT_ID.Value).Distinct();
 | 
				
			||||||
 | 
					                            var listRole = GetEntities<T_PF_APPROVAL_ROLE>(e => e.NAME.Contains("安全员"), null, null);
 | 
				
			||||||
 | 
					                            if (listRole != null && listRole.Any())
 | 
				
			||||||
 | 
					                            {
 | 
				
			||||||
 | 
					                                var listRoleID = listRole.Select(e => e.ID);
 | 
				
			||||||
 | 
					                                var listHeader = GetEntities<T_FM_USER>(e => listDepID.Contains(e.DEPARTMENT_ID.Value) && e.APPROVE_ROLE_ID.HasValue && listRoleID.Contains(e.APPROVE_ROLE_ID.Value), null, null);
 | 
				
			||||||
 | 
					                                if (listHeader != null && listHeader.Any())
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    foreach (var item in listSubContents)
 | 
				
			||||||
 | 
					                                    {
 | 
				
			||||||
 | 
					                                        if (item.DEPARTMENT_ID.HasValue)
 | 
				
			||||||
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            var depThis = listDeps.FirstOrDefault(e => e.ID == item.DEPARTMENT_ID.Value);
 | 
				
			||||||
 | 
					                                            if (depThis != null && depThis.PARENT_ID.HasValue)
 | 
				
			||||||
 | 
					                                            {
 | 
				
			||||||
 | 
					                                                T_FM_USER userTemp = listHeader.FirstOrDefault(x => x.DEPARTMENT_ID == depThis.PARENT_ID.Value);
 | 
				
			||||||
 | 
					                                                if (userTemp != null)
 | 
				
			||||||
 | 
					                                                {
 | 
				
			||||||
 | 
					                                                    item.CHECK_USER_ID = userTemp.ID;
 | 
				
			||||||
 | 
					                                                    item.Nav_UserCheck = userTemp;
 | 
				
			||||||
 | 
					                                                }
 | 
				
			||||||
 | 
					                                            }
 | 
				
			||||||
 | 
					                                        }
 | 
				
			||||||
 | 
					                                    }
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					                            }
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                        #endregion
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                    modelSub.Nav_ListRiskSubmitContent = listSubContents;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    #endregion
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					                else
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    modelSub.Nav_ListRiskSubmitContent = GetEntities<T_BS_RISK_SUBMIT_CONTENT>(e => e.RISK_SUBMIT_ID == guid, null, "Nav_CheckMain", "Nav_ImgFile.Nav_File", "Nav_User", "Nav_UserDeal", "Nav_DepartmentDeal", "Nav_ListCheckDetailReason.Nav_RiskReason").ToList();
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					                return modelSub;
 | 
				
			||||||
 | 
					            });
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        /// <summary>
 | 
					        /// <summary>
 | 
				
			||||||
        /// 获得单条实体数据
 | 
					        /// 获得单条实体数据
 | 
				
			||||||
        /// </summary>
 | 
					        /// </summary>
 | 
				
			||||||
 | 
				
			|||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Loading…
	
		Reference in New Issue
	
	Block a user