586 lines
		
	
	
		
			31 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
		
		
			
		
	
	
			586 lines
		
	
	
		
			31 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| 
								 | 
							
								using APT.BaseData.Domain.Entities;
							 | 
						|||
| 
								 | 
							
								using APT.BaseData.Domain.Entities.FM;
							 | 
						|||
| 
								 | 
							
								using APT.BaseData.Domain.Enums;
							 | 
						|||
| 
								 | 
							
								using APT.BaseData.Domain.IServices;
							 | 
						|||
| 
								 | 
							
								using APT.BaseData.Domain.IServices.FM;
							 | 
						|||
| 
								 | 
							
								using APT.Infrastructure.Core;
							 | 
						|||
| 
								 | 
							
								using APT.MS.Domain.Entities.BS;
							 | 
						|||
| 
								 | 
							
								using APT.MS.Domain.Entities.HM;
							 | 
						|||
| 
								 | 
							
								using APT.MS.Domain.Entities.SC.BI;
							 | 
						|||
| 
								 | 
							
								using APT.MS.Domain.Enums;
							 | 
						|||
| 
								 | 
							
								using APT.Utility;
							 | 
						|||
| 
								 | 
							
								using APT.WebApi.Models;
							 | 
						|||
| 
								 | 
							
								using Microsoft.AspNetCore.Mvc;
							 | 
						|||
| 
								 | 
							
								using System;
							 | 
						|||
| 
								 | 
							
								using System.Collections.Generic;
							 | 
						|||
| 
								 | 
							
								using System.Linq;
							 | 
						|||
| 
								 | 
							
								using System.Linq.Expressions;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								namespace APT.BS.WebApi.Controllers.Api
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
								    [Route("api/BS/BSRiskSubmitContent")]
							 | 
						|||
| 
								 | 
							
								    public partial class BSRiskSubmitContentController : AuthorizeApiController<T_BS_RISK_SUBMIT_CONTENT>
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        IFMFlowPermitService MFlowPermitService { get; set; }
							 | 
						|||
| 
								 | 
							
								        IFMNotificationTaskService NotificationTaskService { get; set; }
							 | 
						|||
| 
								 | 
							
								        IPFCodeRuleService CodeRuleService { get; set; }
							 | 
						|||
| 
								 | 
							
								        IPFApproveCallBackService ApproveCallBackService { get; set; }
							 | 
						|||
| 
								 | 
							
								        public BSRiskSubmitContentController(IFMNotificationTaskService notificationTaskService, IFMFlowPermitService mFlowPermitService, IPFCodeRuleService codeRuleService, IPFApproveCallBackService approveCallBackService)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            NotificationTaskService = notificationTaskService;
							 | 
						|||
| 
								 | 
							
								            MFlowPermitService = mFlowPermitService;
							 | 
						|||
| 
								 | 
							
								            CodeRuleService = codeRuleService;
							 | 
						|||
| 
								 | 
							
								            ApproveCallBackService = approveCallBackService;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 获得单条实体数据
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="filter">过滤实体</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        [HttpPost, Route("GetDevlp")]
							 | 
						|||
| 
								 | 
							
								        public JsonActionResult<T_BS_RISK_SUBMIT_CONTENT> GetDevlp([FromBody] KeywordFilter filter)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return SafeExecute(() =>
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                var model = GetEntity<T_BS_RISK_SUBMIT_CONTENT>(null, filter, null);
							 | 
						|||
| 
								 | 
							
								                if (model.CREATER_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    var userUp = GetEntity<T_FM_USER>(model.CREATER_ID.Value);
							 | 
						|||
| 
								 | 
							
								                    model.CREATE_NAME = userUp.NAME;
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                return model;
							 | 
						|||
| 
								 | 
							
								            });
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 排序分页查询数据
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="pageFilter">分页过滤实体</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        [HttpPost, Route("OrderPagedDevlp")]
							 | 
						|||
| 
								 | 
							
								        public PagedActionResult<T_BS_RISK_SUBMIT_CONTENT> OrderPagedDevlp([FromBody] KeywordPageFilter pageFilter)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return SafeGetPagedData(delegate (PagedActionResult<T_BS_RISK_SUBMIT_CONTENT> result)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                //如果 上报组织 C_DEPARTMENT_ID  有值 不要走数据权限 按上报人的组织来搜索数据
							 | 
						|||
| 
								 | 
							
								                Guid C_DEPARTMENT_ID = Guid.Empty;
							 | 
						|||
| 
								 | 
							
								                Guid CREATER_ID = Guid.Empty;
							 | 
						|||
| 
								 | 
							
								                if (pageFilter.FilterGroup.Groups != null && pageFilter.FilterGroup.Groups.Any())
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    var Groups = pageFilter.FilterGroup.Groups.ToList();
							 | 
						|||
| 
								 | 
							
								                    ICollection<FilterRule> GroupsRules = null;
							 | 
						|||
| 
								 | 
							
								                    foreach (var Group in Groups)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        if (Group.Rules != null && Group.Rules.Any())
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            GroupsRules = Group.Rules.ToList();
							 | 
						|||
| 
								 | 
							
								                            foreach (var item in GroupsRules)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                if (item.Field == "C_DEPARTMENT_ID")
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    if (item.Value != null)
							 | 
						|||
| 
								 | 
							
								                                    {
							 | 
						|||
| 
								 | 
							
								                                        try
							 | 
						|||
| 
								 | 
							
								                                        {
							 | 
						|||
| 
								 | 
							
								                                            C_DEPARTMENT_ID = new Guid(item.Value.ToString());
							 | 
						|||
| 
								 | 
							
								                                        }
							 | 
						|||
| 
								 | 
							
								                                        catch { }
							 | 
						|||
| 
								 | 
							
								                                    }
							 | 
						|||
| 
								 | 
							
								                                    GroupsRules.Remove(item);
							 | 
						|||
| 
								 | 
							
								                                    Group.Rules = GroupsRules;
							 | 
						|||
| 
								 | 
							
								                                    break;
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            if (C_DEPARTMENT_ID != Guid.Empty)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                break;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    foreach (var Group in Groups)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        if (Group.Rules != null && Group.Rules.Any())
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            GroupsRules = Group.Rules.ToList();
							 | 
						|||
| 
								 | 
							
								                            foreach (var item in GroupsRules)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                if (item.Field == "CREATER_ID")
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    if (item.Value != null)
							 | 
						|||
| 
								 | 
							
								                                    {
							 | 
						|||
| 
								 | 
							
								                                        try
							 | 
						|||
| 
								 | 
							
								                                        {
							 | 
						|||
| 
								 | 
							
								                                            CREATER_ID = new Guid(item.Value.ToString());
							 | 
						|||
| 
								 | 
							
								                                        }
							 | 
						|||
| 
								 | 
							
								                                        catch { }
							 | 
						|||
| 
								 | 
							
								                                    }
							 | 
						|||
| 
								 | 
							
								                                    GroupsRules.Remove(item);
							 | 
						|||
| 
								 | 
							
								                                    Group.Rules = GroupsRules;
							 | 
						|||
| 
								 | 
							
								                                    break;
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            if (CREATER_ID != Guid.Empty)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                break;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                PagedActionResult<T_BS_RISK_SUBMIT_CONTENT> orderPageEntities = null;
							 | 
						|||
| 
								 | 
							
								                Expression<Func<T_BS_RISK_SUBMIT_CONTENT, bool>> expression = e => e.Nav_Submit.SUBMIT_TYPE != 10;
							 | 
						|||
| 
								 | 
							
								                IEnumerable<T_FM_USER> listUsers = null;
							 | 
						|||
| 
								 | 
							
								                if (CREATER_ID != Guid.Empty)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    pageFilter.IgnoreDataRule = true;
							 | 
						|||
| 
								 | 
							
								                    expression = expression.And(e => e.CREATER_ID.HasValue && CREATER_ID == e.CREATER_ID.Value);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (C_DEPARTMENT_ID != Guid.Empty && CREATER_ID == Guid.Empty)//如果选了人 就不按组织结构查找了
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    pageFilter.IgnoreDataRule = true;
							 | 
						|||
| 
								 | 
							
								                    listUsers = GetEntities<T_FM_USER>(e => e.DEPARTMENT_ID.HasValue && e.DEPARTMENT_ID.Value == C_DEPARTMENT_ID, null, null);
							 | 
						|||
| 
								 | 
							
								                    IEnumerable<Guid> IUserId = listUsers.Select(e => e.ID);
							 | 
						|||
| 
								 | 
							
								                    if (IUserId != null && IUserId.Any())
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        expression = expression.And(e => e.CREATER_ID.HasValue && IUserId.Contains(e.CREATER_ID.Value));
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                orderPageEntities = GetOrderPageEntities(expression, pageFilter, null);
							 | 
						|||
| 
								 | 
							
								                if (orderPageEntities.TotalCount > 0)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    var listUserID = orderPageEntities.Data.Where(e => e.CREATER_ID.HasValue).Select(e => e.CREATER_ID.Value).Distinct();
							 | 
						|||
| 
								 | 
							
								                    if (listUsers == null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        listUsers = GetEntities<T_FM_USER>(e => listUserID.Contains(e.ID), null, "Nav_Department");
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        var dep = GetEntity<T_FM_DEPARTMENT>(C_DEPARTMENT_ID);
							 | 
						|||
| 
								 | 
							
								                        foreach (var item in listUsers)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            item.Nav_Department = dep;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    T_FM_USER userModel = null;
							 | 
						|||
| 
								 | 
							
								                    foreach (var item in orderPageEntities.Data)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        if (item.CREATER_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            userModel = listUsers.FirstOrDefault(e => e.ID == item.CREATER_ID.Value);
							 | 
						|||
| 
								 | 
							
								                            if (userModel != null)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                item.CREATE_NAME = userModel?.NAME;
							 | 
						|||
| 
								 | 
							
								                                item.Nav_Department = userModel.Nav_Department;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        if (string.IsNullOrEmpty(item.CREATE_NAME))
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            item.CREATE_NAME = "";
							 | 
						|||
| 
								 | 
							
								                            item.Nav_Department = new T_FM_DEPARTMENT();
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                result.Data = orderPageEntities.Data;
							 | 
						|||
| 
								 | 
							
								                result.TotalCount = orderPageEntities.TotalCount;
							 | 
						|||
| 
								 | 
							
								            });
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 获得单条实体数据
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="filter">过滤实体</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        [HttpPost, Route("GetInfoAdapt")]
							 | 
						|||
| 
								 | 
							
								        public JsonActionResult<T_BS_RISK_SUBMIT_CONTENT> GetInfoAdapt([FromBody] KeywordFilter filter)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return SafeExecute(() =>
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                var model = GetEntity<T_BS_RISK_SUBMIT_CONTENT>(null, filter, null);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #region     默认加载信息
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                if (model.CHECK_MAIN_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (model.Nav_CheckMain == null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        model.Nav_CheckMain = GetEntity<T_BS_CHECK_MAIN>(model.CHECK_MAIN_ID.Value);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    //新问题 新增时会把 新增的检查信息 赋值
							 | 
						|||
| 
								 | 
							
								                    model.CHECKOBJECT = (BSMineTypeEnum)model.Nav_CheckMain.CHECKOBJECT;
							 | 
						|||
| 
								 | 
							
								                    if (!model.LastDateSystem.HasValue)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        int delayDays = GetDealyDays(model.QUESTION_LEVEL);
							 | 
						|||
| 
								 | 
							
								                        model.LastDateSystem = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 23:59:59")).AddDays(delayDays);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                else
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    //检查区域                根据登录者所在生产单元
							 | 
						|||
| 
								 | 
							
								                    //检查类型  检查层级      默认 上次手动上报 登陆者 此区域 的值
							 | 
						|||
| 
								 | 
							
								                    if (APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID.HasValue && model.Nav_Submit != null && !model.Nav_Submit.CHECKOBJECT.HasValue)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        var depUnit = GetEntities<T_FM_DEPARTMENT_PRODUCTION_UNIT>(e => e.DEPARTMENT_ID == APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID.Value, null, "Nav_Enums");
							 | 
						|||
| 
								 | 
							
								                        if (depUnit != null && depUnit.Count() == 1)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            var modelUnil = depUnit.ToList()[0];
							 | 
						|||
| 
								 | 
							
								                            if (modelUnil.Nav_Enums != null)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                model.Nav_Submit.CHECKOBJECT = (BSMineTypeEnum)modelUnil.Nav_Enums.VALUE;
							 | 
						|||
| 
								 | 
							
								                                model.CHECKOBJECT = model.Nav_Submit.CHECKOBJECT;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    if (model.Nav_Submit != null && !model.Nav_Submit.CHECK_TYPE_ID.HasValue && APT.Infrastructure.Api.AppContext.CurrentSession.UserID.HasValue)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        KeywordPageFilter fiB = new KeywordPageFilter();
							 | 
						|||
| 
								 | 
							
								                        fiB.OrgId = model.ORG_ID;
							 | 
						|||
| 
								 | 
							
								                        fiB.Order = DbOrder.DESC;
							 | 
						|||
| 
								 | 
							
								                        fiB.PageIndex = 1;
							 | 
						|||
| 
								 | 
							
								                        fiB.Limit = 1;
							 | 
						|||
| 
								 | 
							
								                        fiB.Sort = "CREATE_TIME";
							 | 
						|||
| 
								 | 
							
								                        fiB.IgnoreDataRule = true;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        PagedActionResult<T_BS_RISK_SUBMIT> orderPageEntities = GetOrderPageEntities<T_BS_RISK_SUBMIT>(e => e.USER_ID.HasValue && e.SUBMIT_TYPE == 20 && e.SUBMIT_STATUS.HasValue && e.SUBMIT_STATUS.Value >= 20 && e.CHECK_TYPE_ID.HasValue && e.CHECK_TYPE_LEVEL_ID.HasValue && e.USER_ID.Value == APT.Infrastructure.Api.AppContext.CurrentSession.UserID.Value, fiB);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        //var info = this.GetEntities<T_BS_CHECK_QUESTION>(null, pageFilter, null).Select(e => new T_BS_CHECK_QUESTION { ID = e.ID, DEMAND = e.DEMAND, DESCREPTION = "" }).Distinct(e => e.DEMAND).ToList();
							 | 
						|||
| 
								 | 
							
								                        //var listOrder = GetEntities<T_BS_RISK_SUBMIT>(e => e.USER_ID.HasValue && e.SUBMIT_TYPE == 20 && e.SUBMIT_STATUS.HasValue && e.SUBMIT_STATUS.Value >= 20 && e.CHECK_TYPE_ID.HasValue && e.CHECK_TYPE_LEVEL_ID.HasValue && e.USER_ID.Value == APT.Infrastructure.Api.AppContext.CurrentSession.UserID.Value, fiB, null).Skip(1).Take(1);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        if (orderPageEntities.TotalCount > 0)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            var subNew = orderPageEntities.Data.ToList()[0];
							 | 
						|||
| 
								 | 
							
								                            model.Nav_Submit.CHECK_TYPE_ID = subNew.CHECK_TYPE_ID;
							 | 
						|||
| 
								 | 
							
								                            model.Nav_Submit.Nav_CheckType = GetEntity<T_BS_CHECK_TYPE>(subNew.CHECK_TYPE_ID.Value);
							 | 
						|||
| 
								 | 
							
								                            model.Nav_Submit.CHECK_TYPE_LEVEL_ID = subNew.CHECK_TYPE_LEVEL_ID;
							 | 
						|||
| 
								 | 
							
								                            model.Nav_Submit.Nav_CheckTypeLevel = GetEntity<T_BS_CHECK_TYPE_LEVEL>(subNew.CHECK_TYPE_LEVEL_ID.Value, "Nav_Enums");
							 | 
						|||
| 
								 | 
							
								                            model.CHECK_TYPE_ID = model.Nav_Submit.CHECK_TYPE_ID;
							 | 
						|||
| 
								 | 
							
								                            model.CHECK_TYPE_LEVEL_ID = model.Nav_Submit.CHECK_TYPE_LEVEL_ID;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        model.CHECKOBJECT = model.Nav_Submit.CHECKOBJECT;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #endregion
							 | 
						|||
| 
								 | 
							
								                if (APT.Utility.DataHelper.GetRequestType(Request.Headers) == 2)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (model.CHECKOBJECT.HasValue)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        model.CHECKOBJECT_DESCRIPTION = model.CHECKOBJECT.Value.GetDescription();
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    if (model.QUESTION_LEVEL > 0)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        model.QUESTION_LEVEL_SHOW = ((BSQuestionLevelEnum)model.QUESTION_LEVEL).GetDescription();
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #region    页面合并 BS079 不要了 直接在 BS078 处理 现默认值加载
							 | 
						|||
| 
								 | 
							
								                if (!model.CHECK_MAIN_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    model.Nav_CheckMain = new T_BS_CHECK_MAIN();
							 | 
						|||
| 
								 | 
							
								                    if (model.CHECKOBJECT.HasValue)
							 | 
						|||
| 
								 | 
							
								                        model.Nav_CheckMain.CHECKOBJECT = (int)model.CHECKOBJECT.Value;
							 | 
						|||
| 
								 | 
							
								                    if (model.CHECK_TYPE_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        model.Nav_CheckMain.CHECK_TYPE_ID = model.CHECK_TYPE_ID;
							 | 
						|||
| 
								 | 
							
								                        model.Nav_CheckMain.Nav_CheckType = model.Nav_Submit.Nav_CheckType;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    if (model.CHECK_TYPE_LEVEL_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        model.Nav_CheckMain.CHECK_TYPE_LEVEL_ID = model.CHECK_TYPE_LEVEL_ID;
							 | 
						|||
| 
								 | 
							
								                        model.Nav_CheckMain.Nav_CheckTypeLevel = model.Nav_Submit.Nav_CheckTypeLevel;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    model.Nav_CheckMain.ORG_ID = model.ORG_ID;
							 | 
						|||
| 
								 | 
							
								                    model.Nav_CheckMain.SERIOUS_RISK = (int)BSSeriousRiskEnum.否;
							 | 
						|||
| 
								 | 
							
								                    model.Nav_CheckMain.ENABLE_STATUS = (int)FMEnableStatusEnum.禁用;
							 | 
						|||
| 
								 | 
							
								                    model.Nav_CheckMain.NUM = 1;
							 | 
						|||
| 
								 | 
							
								                    model.Nav_CheckMain.ISRISK = false;
							 | 
						|||
| 
								 | 
							
								                    model.CHECK_MAIN_ID = model.Nav_CheckMain.ID;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                return model;
							 | 
						|||
| 
								 | 
							
								            });
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 获取 系统整改期限
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="QUESTION_LEVEL"></param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        private int GetDealyDays(int QUESTION_LEVEL)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            int delayDays = 0;
							 | 
						|||
| 
								 | 
							
								            var delays = GetEntity<T_BS_RISK_LEVEL_DELAY_DAYS>(e => e.QUESTION_LEVEL == QUESTION_LEVEL);
							 | 
						|||
| 
								 | 
							
								            if (delays != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                delayDays = delays.MAX_DELAY_DAYS;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                switch (QUESTION_LEVEL)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    case (int)BSQuestionLevelEnum.重大:
							 | 
						|||
| 
								 | 
							
								                        delayDays = (int)BSDelayDaysEnum.重大;
							 | 
						|||
| 
								 | 
							
								                        break;
							 | 
						|||
| 
								 | 
							
								                    case (int)BSQuestionLevelEnum.A:
							 | 
						|||
| 
								 | 
							
								                        delayDays = (int)BSDelayDaysEnum.A;
							 | 
						|||
| 
								 | 
							
								                        break;
							 | 
						|||
| 
								 | 
							
								                    case (int)BSQuestionLevelEnum.B:
							 | 
						|||
| 
								 | 
							
								                        delayDays = (int)BSDelayDaysEnum.B;
							 | 
						|||
| 
								 | 
							
								                        break;
							 | 
						|||
| 
								 | 
							
								                    case (int)BSQuestionLevelEnum.C:
							 | 
						|||
| 
								 | 
							
								                        delayDays = (int)BSDelayDaysEnum.C;
							 | 
						|||
| 
								 | 
							
								                        break;
							 | 
						|||
| 
								 | 
							
								                    case (int)BSQuestionLevelEnum.D:
							 | 
						|||
| 
								 | 
							
								                        delayDays = (int)BSDelayDaysEnum.D;
							 | 
						|||
| 
								 | 
							
								                        break;
							 | 
						|||
| 
								 | 
							
								                    default:
							 | 
						|||
| 
								 | 
							
								                        break;
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            return delayDays;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 手动隐患上报数据删除
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="id">主键ID</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        [HttpGet, Route("Delete")]
							 | 
						|||
| 
								 | 
							
								        public JsonActionResult<bool> Delete(string id)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return SafeExecute(delegate
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                try
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    Guid CONTENTID = new Guid(id);
							 | 
						|||
| 
								 | 
							
								                    List<T_FM_NOTIFICATION_TASK> listTask = new List<T_FM_NOTIFICATION_TASK>();
							 | 
						|||
| 
								 | 
							
								                    List<T_BS_RISK_SUBMIT_CONTENT_REASON> listReason = null;
							 | 
						|||
| 
								 | 
							
								                    T_PF_APPROVE ApproveCheckAudit = null;
							 | 
						|||
| 
								 | 
							
								                    IEnumerable<T_PF_APPROVE_DETAIL> listApproveDetail = null;
							 | 
						|||
| 
								 | 
							
								                    T_BS_RISK_SUBMIT modelRiskDel = null;
							 | 
						|||
| 
								 | 
							
								                    List<T_BS_RISK_SUBMIT_FILE> Nav_FilesDel = null;
							 | 
						|||
| 
								 | 
							
								                    List<T_BS_RISK_SUBMIT_CONTENT_FILE> files = null;
							 | 
						|||
| 
								 | 
							
								                    var content = GetEntity<T_BS_RISK_SUBMIT_CONTENT>(CONTENTID, "Nav_ListRiskQuestionReason", "Nav_Files");
							 | 
						|||
| 
								 | 
							
								                    T_BS_RISK_SUBMIT_CONTENT_DEAL contentDeal = null;
							 | 
						|||
| 
								 | 
							
								                    if (content == null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        //BS043
							 | 
						|||
| 
								 | 
							
								                        contentDeal = GetEntity<T_BS_RISK_SUBMIT_CONTENT_DEAL>(CONTENTID, "Nav_Files", "Nav_FilesAfter");
							 | 
						|||
| 
								 | 
							
								                        content = GetEntity<T_BS_RISK_SUBMIT_CONTENT>(e => e.ID == contentDeal.RISK_SUBMIT_CONTENT_ID, "Nav_ListRiskQuestionReason", "Nav_Files");
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    listReason = content.Nav_ListRiskQuestionReason;
							 | 
						|||
| 
								 | 
							
								                    //content.Nav_ListRiskQuestionReason = null;
							 | 
						|||
| 
								 | 
							
								                    files = content.Nav_Files;
							 | 
						|||
| 
								 | 
							
								                    //content.Nav_Files = null;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    //指定责任单位等
							 | 
						|||
| 
								 | 
							
								                    listTask.AddRange(GetEntities<T_FM_NOTIFICATION_TASK>(e => e.SOURCE_DATA_ID.HasValue && e.SOURCE_DATA_ID == content.ID, null, null));//指定责任单位
							 | 
						|||
| 
								 | 
							
								                    if (content.APPROVE_ID.HasValue && content.APPROVE_ID != Guid.Empty)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        ApproveCheckAudit = GetEntity<T_PF_APPROVE>(content.APPROVE_ID.Value);
							 | 
						|||
| 
								 | 
							
								                        listApproveDetail = GetEntities<T_PF_APPROVE_DETAIL>(e => e.APPROVE_ID == ApproveCheckAudit.ID, null, null);
							 | 
						|||
| 
								 | 
							
								                        listTask.AddRange(GetEntities<T_FM_NOTIFICATION_TASK>(e => e.SOURCE_DATA_ID.HasValue && e.SOURCE_DATA_ID == ApproveCheckAudit.ID, null, null));
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    var contentOther = GetEntity<T_BS_RISK_SUBMIT_CONTENT>(e => e.RISK_SUBMIT_ID == content.RISK_SUBMIT_ID && e.ID != CONTENTID);
							 | 
						|||
| 
								 | 
							
								                    if (contentOther == null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        modelRiskDel = GetEntity<T_BS_RISK_SUBMIT>(content.RISK_SUBMIT_ID.Value, "Nav_Files");
							 | 
						|||
| 
								 | 
							
								                        Nav_FilesDel = modelRiskDel.Nav_Files;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    ICollection<T_BS_SAFE_CHECK_DETAIL_USER> listCheckDetailUser = null;
							 | 
						|||
| 
								 | 
							
								                    ICollection<T_BS_SAFE_CHECK_DETAIL_QUESTION> listCheckDetailQuestion = null;
							 | 
						|||
| 
								 | 
							
								                    ICollection<T_BS_SAFE_CHECK_DETAIL_LAW> listLaw = null;
							 | 
						|||
| 
								 | 
							
								                    ICollection<T_BS_SAFE_CHECK_DETAIL_REASON> listCheckDetailReason = null;
							 | 
						|||
| 
								 | 
							
								                    ICollection<T_BS_SAFE_CHECK_DETAIL_FILE> files_check = null;
							 | 
						|||
| 
								 | 
							
								                    T_BS_SAFE_CHECK_DETAIL modelDetail = null;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    if (modelRiskDel != null && modelRiskDel.CHECK_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        modelDetail = GetEntity<T_BS_SAFE_CHECK_DETAIL>(content.SAFE_CHECK_ID.Value, "Nav_ListCheckDetailUser", "Nav_ListCheckDetailQuestion", "Nav_ListLaw", "Nav_ListCheckDetailReason", "Nav_Files");
							 | 
						|||
| 
								 | 
							
								                        files_check = modelDetail.Nav_Files;
							 | 
						|||
| 
								 | 
							
								                        listCheckDetailReason = modelDetail.Nav_ListCheckDetailReason;
							 | 
						|||
| 
								 | 
							
								                        listCheckDetailQuestion = modelDetail.Nav_ListCheckDetailQuestion;
							 | 
						|||
| 
								 | 
							
								                        listCheckDetailUser = modelDetail.Nav_ListCheckDetailUser;
							 | 
						|||
| 
								 | 
							
								                        listLaw = modelDetail.Nav_ListLaw;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    T_BS_RISK_SUBMIT_NOTICE_PERSON modelNoticePerson = null;
							 | 
						|||
| 
								 | 
							
								                    //T_BS_RISK_SUBMIT_NOTICE modelNotice = null;
							 | 
						|||
| 
								 | 
							
								                    IEnumerable<T_BS_RISK_SUBMIT_NOTICE> listModelNotice = null;
							 | 
						|||
| 
								 | 
							
								                    bool isDelNotice = true;
							 | 
						|||
| 
								 | 
							
								                    if (content.RISK_SUBMIT_NOTICE_PERSON_ID.HasValue && content.RISK_SUBMIT_NOTICE_PERSON_ID != Guid.Empty)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        var contentCheck = GetEntity<T_BS_RISK_SUBMIT_CONTENT>(e => e.RISK_SUBMIT_NOTICE_PERSON_ID == content.RISK_SUBMIT_NOTICE_PERSON_ID && e.ID != content.ID);
							 | 
						|||
| 
								 | 
							
								                        if (contentCheck == null)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            //通知只有一单  
							 | 
						|||
| 
								 | 
							
								                            modelNoticePerson = GetEntity<T_BS_RISK_SUBMIT_NOTICE_PERSON>(content.RISK_SUBMIT_NOTICE_PERSON_ID.Value);
							 | 
						|||
| 
								 | 
							
								                            if (modelRiskDel != null && modelNoticePerson.RISK_SUBMIT_NOTICE_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                listModelNotice = GetEntities<T_BS_RISK_SUBMIT_NOTICE>(e => e.RISK_SUBMIT_ID.HasValue && e.RISK_SUBMIT_ID.Value == modelNoticePerson.RISK_SUBMIT_ID.Value, null);
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                            //整改落实 确认等
							 | 
						|||
| 
								 | 
							
								                            listTask.AddRange(GetEntities<T_FM_NOTIFICATION_TASK>(e => e.SOURCE_DATA_ID.HasValue && e.SOURCE_DATA_ID == modelNoticePerson.ID, null, null));
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            isDelNotice = false;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        //else
							 | 
						|||
| 
								 | 
							
								                        //{
							 | 
						|||
| 
								 | 
							
								                        //    //多单的不能删除
							 | 
						|||
| 
								 | 
							
								                        //    if (contentCheck.RISK_SUBMIT_NOTICE_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                        //    {
							 | 
						|||
| 
								 | 
							
								                        //        var listNoticePerson = GetEntities<T_BS_RISK_SUBMIT_NOTICE_PERSON>(e => e.RISK_SUBMIT_NOTICE_ID == contentCheck.RISK_SUBMIT_NOTICE_ID.Value, null, null);
							 | 
						|||
| 
								 | 
							
								                        //        if (listNoticePerson != null && listNoticePerson.Any())
							 | 
						|||
| 
								 | 
							
								                        //        {
							 | 
						|||
| 
								 | 
							
								                        //            if (listNoticePerson.Count() == 1)
							 | 
						|||
| 
								 | 
							
								                        //            {
							 | 
						|||
| 
								 | 
							
								                        //                modelNoticePerson = listNoticePerson.ToList()[0];
							 | 
						|||
| 
								 | 
							
								                        //                listModelNotice = GetEntities<T_BS_RISK_SUBMIT_NOTICE>(e => e.ID == contentCheck.RISK_SUBMIT_NOTICE_ID.Value, null, null);
							 | 
						|||
| 
								 | 
							
								                        //            }
							 | 
						|||
| 
								 | 
							
								                        //            else
							 | 
						|||
| 
								 | 
							
								                        //            {
							 | 
						|||
| 
								 | 
							
								                        //                if (contentCheck.RISK_SUBMIT_NOTICE_PERSON_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                        //                {
							 | 
						|||
| 
								 | 
							
								                        //                    modelNoticePerson = listNoticePerson.First(e => e.ID == contentCheck.RISK_SUBMIT_NOTICE_PERSON_ID.Value);
							 | 
						|||
| 
								 | 
							
								                        //                }
							 | 
						|||
| 
								 | 
							
								                        //            }
							 | 
						|||
| 
								 | 
							
								                        //            if (modelNoticePerson != null && modelNoticePerson.RISK_SUBMIT_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                        //            {
							 | 
						|||
| 
								 | 
							
								                        //                listModelNotice = GetEntities<T_BS_RISK_SUBMIT_NOTICE>(e => e.RISK_SUBMIT_ID.HasValue && e.RISK_SUBMIT_ID.Value == modelNoticePerson.RISK_SUBMIT_ID.Value, null);
							 | 
						|||
| 
								 | 
							
								                        //            }
							 | 
						|||
| 
								 | 
							
								                        //        }
							 | 
						|||
| 
								 | 
							
								                        //    }
							 | 
						|||
| 
								 | 
							
								                        //}
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    if (isDelNotice && listModelNotice == null && content.RISK_SUBMIT_NOTICE_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        listModelNotice = GetEntities<T_BS_RISK_SUBMIT_NOTICE>(e => e.ID == content.RISK_SUBMIT_NOTICE_ID.Value, null, null);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    IEnumerable<T_BS_RISK_SUBMIT_CONTENT_DEAL_FILE> listFile = null;
							 | 
						|||
| 
								 | 
							
								                    IEnumerable<T_BS_RISK_SUBMIT_CONTENT_DEAL_AFTER_FILE> listAfterFile = null;
							 | 
						|||
| 
								 | 
							
								                    if (contentDeal == null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        contentDeal = GetEntity<T_BS_RISK_SUBMIT_CONTENT_DEAL>(e => e.RISK_SUBMIT_CONTENT_ID == content.ID, "Nav_Files", "Nav_FilesAfter");
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    T_PF_APPROVE ApproveDeal = null;
							 | 
						|||
| 
								 | 
							
								                    IEnumerable<T_PF_APPROVE_DETAIL> listApproveDetailDeal = null;
							 | 
						|||
| 
								 | 
							
								                    if (contentDeal != null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        listFile = contentDeal.Nav_Files;
							 | 
						|||
| 
								 | 
							
								                        //contentDeal.Nav_Files = null;
							 | 
						|||
| 
								 | 
							
								                        listAfterFile = contentDeal.Nav_FilesAfter;
							 | 
						|||
| 
								 | 
							
								                        //contentDeal.Nav_FilesAfter = null;
							 | 
						|||
| 
								 | 
							
								                        listTask.AddRange(GetEntities<T_FM_NOTIFICATION_TASK>(e => e.SOURCE_DATA_ID.HasValue && e.SOURCE_DATA_ID == contentDeal.ID, null, null));
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        if (contentDeal.APPROVE_ID.HasValue && contentDeal.APPROVE_ID != Guid.Empty)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            ApproveDeal = GetEntity<T_PF_APPROVE>(contentDeal.APPROVE_ID.Value);
							 | 
						|||
| 
								 | 
							
								                            listApproveDetailDeal = GetEntities<T_PF_APPROVE_DETAIL>(e => e.APPROVE_ID == contentDeal.APPROVE_ID.Value, null, null);
							 | 
						|||
| 
								 | 
							
								                            listTask.AddRange(GetEntities<T_FM_NOTIFICATION_TASK>(e => e.SOURCE_DATA_ID.HasValue && e.SOURCE_DATA_ID == contentDeal.APPROVE_ID.Value, null, null));
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    //null 去除
							 | 
						|||
| 
								 | 
							
								                    int TCount = listTask.Count - 1;
							 | 
						|||
| 
								 | 
							
								                    for (int i = TCount; i > -1; i--)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        if (listTask[i] == null)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            listTask.Remove(listTask[i]);
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    IEnumerable<T_BI_NOTIFICATION_TASK_NEW> taskBI = null;
							 | 
						|||
| 
								 | 
							
								                    var listTaskID = listTask.Select(e => e.ID);
							 | 
						|||
| 
								 | 
							
								                    if (listTaskID != null && listTaskID.Any())
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        taskBI = GetEntities<T_BI_NOTIFICATION_TASK_NEW>(e => listTaskID.Contains(e.ID), null, null);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    if (modelNoticePerson != null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        var listC = GetEntities<T_BS_RISK_SUBMIT_CONTENT>(e => e.RISK_SUBMIT_NOTICE_PERSON_ID == modelNoticePerson.ID, null, null);
							 | 
						|||
| 
								 | 
							
								                        if (listC != null && listC.Count() > 1)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            modelNoticePerson = null;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    this.UnifiedCommit(() =>
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        if (listTask != null && listTask.Count > 0)//待办
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(listTask);
							 | 
						|||
| 
								 | 
							
								                        if (taskBI != null && taskBI.Count() > 0)//待办
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(taskBI);
							 | 
						|||
| 
								 | 
							
								                        if (listApproveDetailDeal != null && listApproveDetailDeal.Count() > 0)//整改记录 审批详情
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(listApproveDetailDeal);
							 | 
						|||
| 
								 | 
							
								                        if (ApproveDeal != null)//整改记录 审批
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(ApproveDeal);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        if (listFile != null && listFile.Count() > 0)//整改记录 附件 前
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(listFile);
							 | 
						|||
| 
								 | 
							
								                        if (listAfterFile != null && listAfterFile.Count() > 0)//整改记录 附件 后
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(listAfterFile);
							 | 
						|||
| 
								 | 
							
								                        if (contentDeal != null)//整改记录
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(contentDeal);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        if (files != null && files.Count() > 0)//上报明细 附件
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(files);
							 | 
						|||
| 
								 | 
							
								                        if (listReason != null && listReason.Count() > 0)//上报明细 附件
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(listReason);
							 | 
						|||
| 
								 | 
							
								                        if (modelNoticePerson != null)//上报通知
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(modelNoticePerson);
							 | 
						|||
| 
								 | 
							
								                        if (listModelNotice != null && listModelNotice.Count() > 0)//上报通知
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(listModelNotice);
							 | 
						|||
| 
								 | 
							
								                        if (content != null)//上报明细
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(content);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        if (Nav_FilesDel != null && Nav_FilesDel.Count > 0)//上报单附件
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(Nav_FilesDel);
							 | 
						|||
| 
								 | 
							
								                        if (modelRiskDel != null)//上报单
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(modelRiskDel);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        if (listCheckDetailUser != null && listCheckDetailUser.Count() > 0)//检查人
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(listCheckDetailUser);
							 | 
						|||
| 
								 | 
							
								                        if (listCheckDetailQuestion != null && listCheckDetailQuestion.Count() > 0)//检查问题
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(listCheckDetailQuestion);
							 | 
						|||
| 
								 | 
							
								                        if (listLaw != null && listLaw.Count() > 0)//检查依据
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(listLaw);
							 | 
						|||
| 
								 | 
							
								                        if (files_check != null && files_check.Count() > 0)//检查文件
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(files_check);
							 | 
						|||
| 
								 | 
							
								                        if (listCheckDetailReason != null && listCheckDetailReason.Count() > 0)//问题原因
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(listCheckDetailReason);
							 | 
						|||
| 
								 | 
							
								                        if (modelDetail != null)//检查项
							 | 
						|||
| 
								 | 
							
								                            DeleteEntityNoCommit(modelDetail);
							 | 
						|||
| 
								 | 
							
								                    });
							 | 
						|||
| 
								 | 
							
								                    return true;
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                catch (Exception ex)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (ex is Microsoft.EntityFrameworkCore.DbUpdateException)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        throw new Exception("该资料已被用,不允许执行此操作");
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    if (ex is DomainException && ex.Message.IndexOf("DbUpdateException", StringComparison.OrdinalIgnoreCase) > -1)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        throw new Exception("该资料已被用,不允许执行此操作");
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    throw new Exception(ex.Message);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            });
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 |