784 lines
		
	
	
		
			33 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
		
		
			
		
	
	
			784 lines
		
	
	
		
			33 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.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;
							 | 
						|||
| 
								 | 
							
								using NPOI.HSSF.Util;
							 | 
						|||
| 
								 | 
							
								using NPOI.SS.UserModel;
							 | 
						|||
| 
								 | 
							
								using NPOI.XSSF.UserModel;
							 | 
						|||
| 
								 | 
							
								using System.IO;
							 | 
						|||
| 
								 | 
							
								using APT.Infrastructure.Api;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								namespace APT.BS.WebApi.Controllers.Api
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
								    [Route("api/BS/BSRiskSubmitContentDeal")]
							 | 
						|||
| 
								 | 
							
								    public partial class BSRiskSubmitContentDealController : AuthorizeApiController<T_BS_RISK_SUBMIT_CONTENT_DEAL>
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        IFMFlowPermitService MFlowPermitService { get; set; }
							 | 
						|||
| 
								 | 
							
								        IFMNotificationTaskService NotificationTaskService { get; set; }
							 | 
						|||
| 
								 | 
							
								        IPFCodeRuleService CodeRuleService { get; set; }
							 | 
						|||
| 
								 | 
							
								        IPFSysLogService SysLogService { get; set; }
							 | 
						|||
| 
								 | 
							
								        public BSRiskSubmitContentDealController(IFMNotificationTaskService notificationTaskService, IFMFlowPermitService mFlowPermitService, IPFCodeRuleService codeRuleService, IPFSysLogService sysLogService)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            NotificationTaskService = notificationTaskService;
							 | 
						|||
| 
								 | 
							
								            MFlowPermitService = mFlowPermitService;
							 | 
						|||
| 
								 | 
							
								            CodeRuleService = codeRuleService;
							 | 
						|||
| 
								 | 
							
								            SysLogService = sysLogService;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 获得单条实体数据
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="filter">过滤实体</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        [HttpPost, Route("GetAll")]
							 | 
						|||
| 
								 | 
							
								        public JsonActionResult<T_BS_RISK_SUBMIT_CONTENT_DEAL> GetAll([FromBody] KeywordFilter filter)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return SafeExecute<T_BS_RISK_SUBMIT_CONTENT_DEAL>(() =>
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                ICollection<string> Include = new List<string>();
							 | 
						|||
| 
								 | 
							
								                foreach (var item in filter.Include)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (item.Contains(".Nav_UserSignFiles"))
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        Include.Add(item.Split(".Nav_UserSignFiles")[0]);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        Include.Add(item);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                filter.Include = Include;
							 | 
						|||
| 
								 | 
							
								                var modelSubConDel = GetEntity<T_BS_RISK_SUBMIT_CONTENT_DEAL>(null, filter);
							 | 
						|||
| 
								 | 
							
								                if (modelSubConDel == null)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    throw new Exception("获取整改单信息失败!");
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                List<Guid> listUserID = new List<Guid>();
							 | 
						|||
| 
								 | 
							
								                if (modelSubConDel.DEAL_USER_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                    listUserID.Add(modelSubConDel.DEAL_USER_ID.Value);
							 | 
						|||
| 
								 | 
							
								                if (modelSubConDel.CHECK_USER_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                    listUserID.Add(modelSubConDel.CHECK_USER_ID.Value);
							 | 
						|||
| 
								 | 
							
								                if (modelSubConDel.Nav_ApproveCheckAudit != null && modelSubConDel.Nav_ApproveCheckAudit.Nav_ApproveDetails != null && modelSubConDel.Nav_ApproveCheckAudit.Nav_ApproveDetails.Any())
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    foreach (var item in modelSubConDel.Nav_ApproveCheckAudit.Nav_ApproveDetails)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        if (item.APPROVE_USER_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                            listUserID.Add(item.APPROVE_USER_ID.Value);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (listUserID.Count > 0)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    listUserID = listUserID.Distinct().ToList();
							 | 
						|||
| 
								 | 
							
								                    var listUsersSign = GetEntities<T_FM_USER_SIGN_FILE>(e => listUserID.Contains(e.USER_ID), null, "Nav_ImgFile");
							 | 
						|||
| 
								 | 
							
								                    if (modelSubConDel.DEAL_USER_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                        modelSubConDel.Nav_UserDeal.Nav_UserSignFiles = listUsersSign.Where(e => e.USER_ID == modelSubConDel.DEAL_USER_ID.Value).ToList();
							 | 
						|||
| 
								 | 
							
								                    if (modelSubConDel.CHECK_USER_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                        modelSubConDel.Nav_UserCheck.Nav_UserSignFiles = listUsersSign.Where(e => e.USER_ID == modelSubConDel.CHECK_USER_ID.Value).ToList();
							 | 
						|||
| 
								 | 
							
								                    if (modelSubConDel.Nav_ApproveCheckAudit != null && modelSubConDel.Nav_ApproveCheckAudit.Nav_ApproveDetails != null && modelSubConDel.Nav_ApproveCheckAudit.Nav_ApproveDetails.Any())
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        foreach (var item in modelSubConDel.Nav_ApproveCheckAudit.Nav_ApproveDetails)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            if (item.APPROVE_USER_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                                item.Nav_ApproveUser.Nav_UserSignFiles = listUsersSign.Where(e => e.USER_ID == item.APPROVE_USER_ID).ToList();
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                if (modelSubConDel.RISK_SUBMIT_CONTENT_ID.HasValue)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    var applyDetail = GetEntity<T_BS_RISK_SUBMIT_DELAY_APPLY_DETAIL>(e => e.RISK_SUBMIT_CONTENT_ID == modelSubConDel.RISK_SUBMIT_CONTENT_ID.Value);
							 | 
						|||
| 
								 | 
							
								                    modelSubConDel.Nav_ApplyDetail = applyDetail;
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                return modelSubConDel;
							 | 
						|||
| 
								 | 
							
								            });
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 获得单条实体数据
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="filter">过滤实体</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        [HttpPost, Route("Get")]
							 | 
						|||
| 
								 | 
							
								        public JsonActionResult<T_BS_RISK_SUBMIT_CONTENT_DEAL> Get([FromBody] KeywordFilter filter)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            filter.IgnoreDataRule = true;
							 | 
						|||
| 
								 | 
							
								            return WitEntity(null, filter);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 生成入参对应整改记录Excel
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="filter">整改单IDS</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        /// <exception cref="Exception"></exception>
							 | 
						|||
| 
								 | 
							
								        [HttpPost, Route("GetOutPutData")]
							 | 
						|||
| 
								 | 
							
								        public JsonActionResult<string> GetOutPutData([FromBody] KeywordFilter filter)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return SafeExecute<string>(() =>
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                if (string.IsNullOrEmpty(filter.Keyword))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    throw new Exception("获取导出信息失败!");
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + "_" + APT.Infrastructure.Api.AppContext.CurrentSession.UserName + "_" + new Random().Next(100, 999) + ".xlsx";
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #region     获取填充信息  搜索
							 | 
						|||
| 
								 | 
							
								                var listIds = filter.Keyword.Split(',', StringSplitOptions.RemoveEmptyEntries);
							 | 
						|||
| 
								 | 
							
								                List<Guid> listID = new List<Guid>();
							 | 
						|||
| 
								 | 
							
								                foreach (var item in listIds)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    listID.Add(new Guid(item));
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                var listDealOut = GetEntities<T_BS_RISK_SUBMIT_CONTENT_DEAL>(e => listID.Contains(e.ID), null, "Nav_SubmitContent.Nav_Department", "Nav_UserCheck", "Nav_UserDeal", "Nav_UserActualDeal", "Nav_Files.Nav_ImgFile", "Nav_FilesAfter.Nav_ImgFile").ToList();
							 | 
						|||
| 
								 | 
							
								                if (listDealOut == null || !listDealOut.Any())
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    listDealOut = GetEntities<T_BS_RISK_SUBMIT_CONTENT_DEAL>(e => e.RISK_SUBMIT_ID.HasValue && listID.Contains(e.RISK_SUBMIT_ID.Value), null, "Nav_SubmitContent.Nav_Department", "Nav_UserCheck", "Nav_UserDeal", "Nav_UserActualDeal", "Nav_Files.Nav_ImgFile", "Nav_FilesAfter.Nav_ImgFile").ToList();
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (listDealOut == null || !listDealOut.Any())
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    throw new Exception("未获取到导出信息!");
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #region     填充数据 处理 与 填充
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                int rowIndex = 0;
							 | 
						|||
| 
								 | 
							
								                IWorkbook workbook = new XSSFWorkbook();
							 | 
						|||
| 
								 | 
							
								                ISheet sheet = workbook.CreateSheet("隐患整改单");
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #region 样式 全局
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                //表头样式
							 | 
						|||
| 
								 | 
							
								                ICellStyle cellStyleHead = workbook.CreateCellStyle();
							 | 
						|||
| 
								 | 
							
								                // 设置字体  
							 | 
						|||
| 
								 | 
							
								                IFont fontHead = workbook.CreateFont();
							 | 
						|||
| 
								 | 
							
								                fontHead.FontName = "Arial";
							 | 
						|||
| 
								 | 
							
								                fontHead.FontHeightInPoints = 20;
							 | 
						|||
| 
								 | 
							
								                fontHead.Boldweight = (short)FontBoldWeight.Bold;
							 | 
						|||
| 
								 | 
							
								                cellStyleHead.SetFont(fontHead);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 设置对齐方式  
							 | 
						|||
| 
								 | 
							
								                cellStyleHead.Alignment = HorizontalAlignment.Center;
							 | 
						|||
| 
								 | 
							
								                cellStyleHead.VerticalAlignment = VerticalAlignment.Center;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                //表头样式
							 | 
						|||
| 
								 | 
							
								                ICellStyle cellStyleNO = workbook.CreateCellStyle();
							 | 
						|||
| 
								 | 
							
								                // 设置字体  
							 | 
						|||
| 
								 | 
							
								                IFont fontNO = workbook.CreateFont();
							 | 
						|||
| 
								 | 
							
								                fontNO.FontName = "宋体";
							 | 
						|||
| 
								 | 
							
								                fontNO.FontHeightInPoints = 11;
							 | 
						|||
| 
								 | 
							
								                fontNO.Boldweight = (short)FontBoldWeight.Bold;
							 | 
						|||
| 
								 | 
							
								                cellStyleNO.Alignment = HorizontalAlignment.Right;
							 | 
						|||
| 
								 | 
							
								                cellStyleNO.VerticalAlignment = VerticalAlignment.Center;
							 | 
						|||
| 
								 | 
							
								                cellStyleNO.SetFont(fontNO);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                ICellStyle cellStyleNOC = workbook.CreateCellStyle();
							 | 
						|||
| 
								 | 
							
								                // 设置字体  
							 | 
						|||
| 
								 | 
							
								                IFont fontNOC = workbook.CreateFont();
							 | 
						|||
| 
								 | 
							
								                fontNOC.FontName = "宋体";
							 | 
						|||
| 
								 | 
							
								                fontNOC.FontHeightInPoints = 11;
							 | 
						|||
| 
								 | 
							
								                fontNOC.Boldweight = (short)FontBoldWeight.Bold;
							 | 
						|||
| 
								 | 
							
								                cellStyleNOC.Alignment = HorizontalAlignment.Left;
							 | 
						|||
| 
								 | 
							
								                cellStyleNOC.VerticalAlignment = VerticalAlignment.Center;
							 | 
						|||
| 
								 | 
							
								                cellStyleNOC.SetFont(fontNO);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 设置对齐方式  
							 | 
						|||
| 
								 | 
							
								                cellStyleHead.Alignment = HorizontalAlignment.Center;
							 | 
						|||
| 
								 | 
							
								                cellStyleHead.VerticalAlignment = VerticalAlignment.Center;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                ICellStyle cellStyle = workbook.CreateCellStyle();
							 | 
						|||
| 
								 | 
							
								                // 设置字体  
							 | 
						|||
| 
								 | 
							
								                IFont font = workbook.CreateFont();
							 | 
						|||
| 
								 | 
							
								                font.FontName = "宋体";
							 | 
						|||
| 
								 | 
							
								                font.FontHeightInPoints = 11;
							 | 
						|||
| 
								 | 
							
								                font.Boldweight = (short)FontBoldWeight.Bold;
							 | 
						|||
| 
								 | 
							
								                cellStyle.SetFont(font);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 设置边框  
							 | 
						|||
| 
								 | 
							
								                cellStyle.BorderBottom = BorderStyle.Thin;
							 | 
						|||
| 
								 | 
							
								                cellStyle.BorderLeft = BorderStyle.Thin;
							 | 
						|||
| 
								 | 
							
								                cellStyle.BorderRight = BorderStyle.Thin;
							 | 
						|||
| 
								 | 
							
								                cellStyle.BorderTop = BorderStyle.Thin;
							 | 
						|||
| 
								 | 
							
								                cellStyle.WrapText = true;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                cellStyle.BottomBorderColor = HSSFColor.Black.Index;
							 | 
						|||
| 
								 | 
							
								                cellStyle.LeftBorderColor = HSSFColor.Black.Index;
							 | 
						|||
| 
								 | 
							
								                cellStyle.RightBorderColor = HSSFColor.Black.Index;
							 | 
						|||
| 
								 | 
							
								                cellStyle.TopBorderColor = HSSFColor.Black.Index;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 设置对齐方式  
							 | 
						|||
| 
								 | 
							
								                cellStyle.Alignment = HorizontalAlignment.Center;
							 | 
						|||
| 
								 | 
							
								                cellStyle.VerticalAlignment = VerticalAlignment.Center;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                //检查内容样式
							 | 
						|||
| 
								 | 
							
								                ICellStyle cellStyleRight = workbook.CreateCellStyle();
							 | 
						|||
| 
								 | 
							
								                // 设置字体  
							 | 
						|||
| 
								 | 
							
								                IFont fontLeft = workbook.CreateFont();
							 | 
						|||
| 
								 | 
							
								                fontLeft.FontName = "宋体";
							 | 
						|||
| 
								 | 
							
								                fontLeft.FontHeightInPoints = 11;
							 | 
						|||
| 
								 | 
							
								                fontLeft.Boldweight = (short)FontBoldWeight.Bold;
							 | 
						|||
| 
								 | 
							
								                cellStyleRight.SetFont(fontLeft);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 设置边框  
							 | 
						|||
| 
								 | 
							
								                cellStyleRight.BorderBottom = BorderStyle.Thin;
							 | 
						|||
| 
								 | 
							
								                cellStyleRight.BorderLeft = BorderStyle.Thin;
							 | 
						|||
| 
								 | 
							
								                cellStyleRight.BorderRight = BorderStyle.Thin;
							 | 
						|||
| 
								 | 
							
								                cellStyleRight.BorderTop = BorderStyle.Thin;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                cellStyleRight.WrapText = true;
							 | 
						|||
| 
								 | 
							
								                //// 设置背景色  
							 | 
						|||
| 
								 | 
							
								                //cellStyle.FillForegroundColor = IndexedColors.LightYellow.Index;
							 | 
						|||
| 
								 | 
							
								                //cellStyle.FillPattern = FillPattern.SolidForeground;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 设置对齐方式  
							 | 
						|||
| 
								 | 
							
								                cellStyleRight.Alignment = HorizontalAlignment.Right;
							 | 
						|||
| 
								 | 
							
								                cellStyleRight.VerticalAlignment = VerticalAlignment.Center;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                sheet.SetColumnWidth(0, 15 * 256);
							 | 
						|||
| 
								 | 
							
								                sheet.SetColumnWidth(1, 30 * 256);
							 | 
						|||
| 
								 | 
							
								                sheet.SetColumnWidth(2, 15 * 256);
							 | 
						|||
| 
								 | 
							
								                sheet.SetColumnWidth(3, 30 * 256);
							 | 
						|||
| 
								 | 
							
								                sheet.DefaultRowHeight = 330;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                int fileMaxCount = 0;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                List<Guid> listUserID = new List<Guid>();
							 | 
						|||
| 
								 | 
							
								                foreach (var item in listDealOut)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (item.CHECK_USER_ID.HasValue && !listUserID.Contains(item.CHECK_USER_ID.Value))
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        listUserID.Add(item.CHECK_USER_ID.Value);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    if (item.DEAL_USER_ID.HasValue && !listUserID.Contains(item.DEAL_USER_ID.Value))
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        listUserID.Add(item.DEAL_USER_ID.Value);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                //Nav_UserCheck
							 | 
						|||
| 
								 | 
							
								                //Nav_UserDeal
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                List<T_FM_USER> listUser = null;
							 | 
						|||
| 
								 | 
							
								                T_FM_USER modelUser = null;
							 | 
						|||
| 
								 | 
							
								                //T_PF_FILE fileInfo = null;
							 | 
						|||
| 
								 | 
							
								                T_PF_IMG_FILE imgFile = null;
							 | 
						|||
| 
								 | 
							
								                string FILE_PATH = string.Empty;
							 | 
						|||
| 
								 | 
							
								                bool isFile = false;
							 | 
						|||
| 
								 | 
							
								                bool isFileA = false;
							 | 
						|||
| 
								 | 
							
								                if (listUserID != null && listUserID.Any())
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    listUser = GetEntities<T_FM_USER>(e => listUserID.Contains(e.ID), null, null).ToList();
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                var fileP = ConfigurationManager.AppSettings["Img_Local"];//文件位置
							 | 
						|||
| 
								 | 
							
								                List<T_BS_RISK_SUBMIT_CONTENT_DEAL_FILE> listFile = null;
							 | 
						|||
| 
								 | 
							
								                List<T_BS_RISK_SUBMIT_CONTENT_DEAL_AFTER_FILE> listFileA = null;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                //按信息导出
							 | 
						|||
| 
								 | 
							
								                for (int i = 0; i < listDealOut.Count; i++)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    #region    表头第1行
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    IRow row = sheet.CreateRow(rowIndex);
							 | 
						|||
| 
								 | 
							
								                    sheet.AddMergedRegion(new NPOI.SS.Util.CellRangeAddress(rowIndex, rowIndex, 0, 3));// 起始行  , 结束行(合并单元格的行数相同,所以是起始行)  , 起始列  ,结束列(比想要合并的最后一列多1)  
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell = row.CreateCell(0); // 在合并区域的左上角单元格写入数据
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    row.Height = 700;
							 | 
						|||
| 
								 | 
							
								                    cell.SetCellValue(listDealOut[i].NAME);
							 | 
						|||
| 
								 | 
							
								                    cell.CellStyle = cellStyleHead;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #region  编号第2行   编号
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    rowIndex++;
							 | 
						|||
| 
								 | 
							
								                    IRow rowNO = sheet.CreateRow(rowIndex);
							 | 
						|||
| 
								 | 
							
								                    ICell cellNOH = rowNO.CreateCell(2);
							 | 
						|||
| 
								 | 
							
								                    cellNOH.SetCellValue("编号");
							 | 
						|||
| 
								 | 
							
								                    cellNOH.CellStyle = cellStyleNO;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cellNOC = rowNO.CreateCell(3);
							 | 
						|||
| 
								 | 
							
								                    cellNOC.SetCellValue(listDealOut[i].CODE);
							 | 
						|||
| 
								 | 
							
								                    cellNOC.CellStyle = cellStyleNOC;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #region  编号第3行   隐患地点  检查问题
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    rowIndex++;
							 | 
						|||
| 
								 | 
							
								                    IRow row3 = sheet.CreateRow(rowIndex);
							 | 
						|||
| 
								 | 
							
								                    ICell cell30 = row3.CreateCell(0);
							 | 
						|||
| 
								 | 
							
								                    cell30.SetCellValue("隐患地点");
							 | 
						|||
| 
								 | 
							
								                    cell30.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell31 = row3.CreateCell(1);
							 | 
						|||
| 
								 | 
							
								                    cell31.SetCellValue(listDealOut[i]?.Nav_SubmitContent?.ADDRESS);
							 | 
						|||
| 
								 | 
							
								                    cell31.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell32 = row3.CreateCell(2);
							 | 
						|||
| 
								 | 
							
								                    cell32.SetCellValue("检查问题");
							 | 
						|||
| 
								 | 
							
								                    cell32.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell33 = row3.CreateCell(3);
							 | 
						|||
| 
								 | 
							
								                    cell33.SetCellValue(listDealOut[i]?.Nav_SubmitContent?.DESCREPTION);
							 | 
						|||
| 
								 | 
							
								                    cell33.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #region  编号第4行   隐患上报日期 隐患上报日期
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    rowIndex++;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    IRow row4 = sheet.CreateRow(rowIndex);
							 | 
						|||
| 
								 | 
							
								                    ICell cell40 = row4.CreateCell(0);
							 | 
						|||
| 
								 | 
							
								                    cell40.SetCellValue("隐患上报日期");
							 | 
						|||
| 
								 | 
							
								                    cell40.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell41 = row4.CreateCell(1);
							 | 
						|||
| 
								 | 
							
								                    cell41.SetCellValue(listDealOut[i]?.Nav_SubmitContent?.CREATE_TIME?.ToString("yyyy-MM-dd"));
							 | 
						|||
| 
								 | 
							
								                    cell41.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell42 = row4.CreateCell(2);
							 | 
						|||
| 
								 | 
							
								                    cell42.SetCellValue("隐患上报日期");
							 | 
						|||
| 
								 | 
							
								                    cell42.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell43 = row4.CreateCell(3);
							 | 
						|||
| 
								 | 
							
								                    cell43.SetCellValue(listDealOut[i]?.Nav_SubmitContent?.OKDATE?.ToString("yyyy-MM-dd"));
							 | 
						|||
| 
								 | 
							
								                    cell43.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #region  编号第4行   整改部门   整改落实人
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    rowIndex++;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    IRow row5 = sheet.CreateRow(rowIndex);
							 | 
						|||
| 
								 | 
							
								                    ICell cell50 = row5.CreateCell(0);
							 | 
						|||
| 
								 | 
							
								                    cell50.SetCellValue("整改部门");
							 | 
						|||
| 
								 | 
							
								                    cell50.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell51 = row5.CreateCell(1);
							 | 
						|||
| 
								 | 
							
								                    cell51.SetCellValue(listDealOut[i]?.Nav_SubmitContent?.Nav_Department.NAME);
							 | 
						|||
| 
								 | 
							
								                    cell51.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell52 = row5.CreateCell(2);
							 | 
						|||
| 
								 | 
							
								                    cell52.SetCellValue("整改落实人");
							 | 
						|||
| 
								 | 
							
								                    cell52.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell53 = row5.CreateCell(3);
							 | 
						|||
| 
								 | 
							
								                    cell53.SetCellValue(listDealOut[i]?.Nav_UserActualDeal?.NAME);
							 | 
						|||
| 
								 | 
							
								                    cell53.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #region  编号第6行  整改建议
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    rowIndex++;
							 | 
						|||
| 
								 | 
							
								                    sheet.AddMergedRegion(new NPOI.SS.Util.CellRangeAddress(rowIndex, rowIndex, 1, 3));
							 | 
						|||
| 
								 | 
							
								                    IRow row6 = sheet.CreateRow(rowIndex);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell62 = row6.CreateCell(2);
							 | 
						|||
| 
								 | 
							
								                    cell62.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								                    ICell cell63 = row6.CreateCell(3);
							 | 
						|||
| 
								 | 
							
								                    cell63.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell60 = row6.CreateCell(0);
							 | 
						|||
| 
								 | 
							
								                    cell60.SetCellValue("整改建议");
							 | 
						|||
| 
								 | 
							
								                    cell60.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell61 = row6.CreateCell(1);
							 | 
						|||
| 
								 | 
							
								                    cell61.SetCellValue(listDealOut[i]?.Nav_SubmitContent?.DEMAND);
							 | 
						|||
| 
								 | 
							
								                    cell61.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #region  编号第7行    附件
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    if (listDealOut[i].Nav_FilesAfter != null && listDealOut[i].Nav_FilesAfter.Any())
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        listFileA = listDealOut[i].Nav_FilesAfter.ToList();
							 | 
						|||
| 
								 | 
							
								                        fileMaxCount = listFileA.Count;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        listFileA = null;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    if (listDealOut[i].Nav_Files != null && listDealOut[i].Nav_Files.Any())
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        listFile = listDealOut[i].Nav_Files.ToList();
							 | 
						|||
| 
								 | 
							
								                        fileMaxCount = Math.Max(fileMaxCount, listFile.Count);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        listFile = null;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    if (fileMaxCount == 1)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        rowIndex++;
							 | 
						|||
| 
								 | 
							
								                        IRow row7 = sheet.CreateRow(rowIndex);
							 | 
						|||
| 
								 | 
							
								                        row7.Height = 3000;
							 | 
						|||
| 
								 | 
							
								                        ICell cell70 = row7.CreateCell(0);
							 | 
						|||
| 
								 | 
							
								                        cell70.SetCellValue("附件(整改前)");
							 | 
						|||
| 
								 | 
							
								                        cell70.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								                        //"Nav_Files"
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        ICell cell71 = row7.CreateCell(1);
							 | 
						|||
| 
								 | 
							
								                        //isFile
							 | 
						|||
| 
								 | 
							
								                        FILE_PATH = "";
							 | 
						|||
| 
								 | 
							
								                        if (listFile != null && listFile.Any())
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            imgFile = listFile?[0].Nav_ImgFile;
							 | 
						|||
| 
								 | 
							
								                            if (imgFile != null)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                if (!string.IsNullOrEmpty(imgFile.FILE_TYPE) && imgFile.FILE_TYPE.StartsWith("image/"))
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    FILE_PATH = imgFile.FILE_PATH;
							 | 
						|||
| 
								 | 
							
								                                    isFile = true;
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                                else
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    FILE_PATH = imgFile.FILE_NAME;
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        if (!string.IsNullOrEmpty(FILE_PATH))
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            if (isFile)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                ShowImg(workbook, sheet, fileP, FILE_PATH, rowIndex, 1);
							 | 
						|||
| 
								 | 
							
								                                cell71.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            else
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                cell71.SetCellValue(FILE_PATH);
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            cell71.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        cell71.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        ICell cell72 = row7.CreateCell(2);
							 | 
						|||
| 
								 | 
							
								                        cell72.SetCellValue("附件(整改后)");
							 | 
						|||
| 
								 | 
							
								                        cell72.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								                        //, "Nav_FilesAfter"
							 | 
						|||
| 
								 | 
							
								                        ICell cell73 = row7.CreateCell(3);
							 | 
						|||
| 
								 | 
							
								                        //cell73.SetCellValue("附件(整改后)文件");
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        FILE_PATH = "";
							 | 
						|||
| 
								 | 
							
								                        if (listFileA != null && listFileA.Any())
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            imgFile = listFileA?[0].Nav_ImgFile;
							 | 
						|||
| 
								 | 
							
								                            if (imgFile != null)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                if (!string.IsNullOrEmpty(imgFile.FILE_TYPE) && imgFile.FILE_TYPE.StartsWith("image/"))
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    FILE_PATH = imgFile.FILE_PATH;
							 | 
						|||
| 
								 | 
							
								                                    isFileA = true;
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                                else
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    FILE_PATH = imgFile.FILE_NAME;
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        if (!string.IsNullOrEmpty(FILE_PATH))
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            if (isFileA)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                ShowImg(workbook, sheet, fileP, FILE_PATH, rowIndex, 3);
							 | 
						|||
| 
								 | 
							
								                                cell73.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            else
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                cell73.SetCellValue(FILE_PATH);
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            cell73.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        cell73.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        if (!isFileA && !isFile)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            row7.Height = 350;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        for (int j = 0; j < fileMaxCount; j++)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            rowIndex++;
							 | 
						|||
| 
								 | 
							
								                            IRow row7 = sheet.CreateRow(rowIndex);
							 | 
						|||
| 
								 | 
							
								                            row7.Height = 3000;
							 | 
						|||
| 
								 | 
							
								                            isFile = false;
							 | 
						|||
| 
								 | 
							
								                            isFileA = false;
							 | 
						|||
| 
								 | 
							
								                            if (j == 0)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                                sheet.AddMergedRegion(new NPOI.SS.Util.CellRangeAddress(rowIndex, rowIndex + fileMaxCount - 1, 0, 0));
							 | 
						|||
| 
								 | 
							
								                                sheet.AddMergedRegion(new NPOI.SS.Util.CellRangeAddress(rowIndex, rowIndex + fileMaxCount - 1, 2, 2));
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                                ICell cell70 = row7.CreateCell(0);
							 | 
						|||
| 
								 | 
							
								                                cell70.SetCellValue("附件(整改前)");
							 | 
						|||
| 
								 | 
							
								                                cell70.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                                ICell cell72 = row7.CreateCell(2);
							 | 
						|||
| 
								 | 
							
								                                cell72.SetCellValue("附件(整改后)");
							 | 
						|||
| 
								 | 
							
								                                cell72.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            else
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                ICell cellRiskEmpty = row7.CreateCell(0);
							 | 
						|||
| 
								 | 
							
								                                cellRiskEmpty.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                            ICell cell71 = row7.CreateCell(1);
							 | 
						|||
| 
								 | 
							
								                            //isFile
							 | 
						|||
| 
								 | 
							
								                            FILE_PATH = "";
							 | 
						|||
| 
								 | 
							
								                            if (listFile != null && listFile.Any() && listFile.Count >= j + 1)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                imgFile = listFile?[j].Nav_ImgFile;
							 | 
						|||
| 
								 | 
							
								                                if (imgFile != null)
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    if (!string.IsNullOrEmpty(imgFile.FILE_TYPE) && imgFile.FILE_TYPE.StartsWith("image/"))
							 | 
						|||
| 
								 | 
							
								                                    {
							 | 
						|||
| 
								 | 
							
								                                        FILE_PATH = imgFile.FILE_PATH;
							 | 
						|||
| 
								 | 
							
								                                        isFile = true;
							 | 
						|||
| 
								 | 
							
								                                    }
							 | 
						|||
| 
								 | 
							
								                                    else
							 | 
						|||
| 
								 | 
							
								                                    {
							 | 
						|||
| 
								 | 
							
								                                        FILE_PATH = imgFile.FILE_NAME;
							 | 
						|||
| 
								 | 
							
								                                    }
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                            if (!string.IsNullOrEmpty(FILE_PATH))
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                if (isFile)
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    ShowImg(workbook, sheet, fileP, FILE_PATH, rowIndex, 1);
							 | 
						|||
| 
								 | 
							
								                                    cell71.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                                else
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    cell71.SetCellValue(FILE_PATH);
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            else
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                cell71.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            cell71.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                            //, "Nav_FilesAfter"
							 | 
						|||
| 
								 | 
							
								                            ICell cell73 = row7.CreateCell(3); //cell73.SetCellValue("附件(整改后)文件");
							 | 
						|||
| 
								 | 
							
								                            FILE_PATH = "";
							 | 
						|||
| 
								 | 
							
								                            if (listFileA != null && listFileA.Any() && listFileA.Count >= j + 1)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                imgFile = listFileA?[j].Nav_ImgFile;
							 | 
						|||
| 
								 | 
							
								                                if (imgFile != null)
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    if (!string.IsNullOrEmpty(imgFile.FILE_TYPE) && imgFile.FILE_TYPE.StartsWith("image/"))
							 | 
						|||
| 
								 | 
							
								                                    {
							 | 
						|||
| 
								 | 
							
								                                        FILE_PATH = imgFile.FILE_PATH;
							 | 
						|||
| 
								 | 
							
								                                        isFileA = true;
							 | 
						|||
| 
								 | 
							
								                                    }
							 | 
						|||
| 
								 | 
							
								                                    else
							 | 
						|||
| 
								 | 
							
								                                    {
							 | 
						|||
| 
								 | 
							
								                                        FILE_PATH = imgFile.FILE_NAME;
							 | 
						|||
| 
								 | 
							
								                                    }
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            if (!string.IsNullOrEmpty(FILE_PATH))
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                if (isFileA)
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    ShowImg(workbook, sheet, fileP, FILE_PATH, rowIndex, 3);
							 | 
						|||
| 
								 | 
							
								                                    cell73.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                                else
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    cell73.SetCellValue(FILE_PATH);
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            else
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                cell73.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            cell73.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                            if (!isFileA && !isFile)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                row7.Height = 350;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #region  编号第8行   整改责任人   验收人
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    rowIndex++;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    IRow row8 = sheet.CreateRow(rowIndex);
							 | 
						|||
| 
								 | 
							
								                    row8.Height = 1000;
							 | 
						|||
| 
								 | 
							
								                    ICell cell80 = row8.CreateCell(0);
							 | 
						|||
| 
								 | 
							
								                    cell80.SetCellValue("整改责任人");
							 | 
						|||
| 
								 | 
							
								                    cell80.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    //Nav_UserDeal
							 | 
						|||
| 
								 | 
							
								                    ICell cell81 = row8.CreateCell(1);
							 | 
						|||
| 
								 | 
							
								                    //cell81.SetCellValue("Nav_UserDeal");
							 | 
						|||
| 
								 | 
							
								                    FILE_PATH = "";
							 | 
						|||
| 
								 | 
							
								                    //整改责任人 图片
							 | 
						|||
| 
								 | 
							
								                    if (listUser != null && listDealOut[i].DEAL_USER_ID.HasValue && listDealOut[i].ISDEALSIGN)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        modelUser = listUser.FirstOrDefault(e => e.ID == listDealOut[i].DEAL_USER_ID.Value);
							 | 
						|||
| 
								 | 
							
								                        if (modelUser != null && modelUser.FILE_PATH != null && modelUser.FILE_PATH.Length > 0)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            FILE_PATH = modelUser.FILE_PATH;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(FILE_PATH))
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        ShowImg(workbook, sheet, fileP, FILE_PATH, rowIndex, 1);
							 | 
						|||
| 
								 | 
							
								                        cell81.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        cell81.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    cell81.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    ICell cell82 = row8.CreateCell(2);
							 | 
						|||
| 
								 | 
							
								                    cell82.SetCellValue("验收人");
							 | 
						|||
| 
								 | 
							
								                    cell82.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    //Nav_UserCheck
							 | 
						|||
| 
								 | 
							
								                    ICell cell83 = row8.CreateCell(3);
							 | 
						|||
| 
								 | 
							
								                    //cell83.SetCellValue("Nav_UserCheck");
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    //验收人 图片
							 | 
						|||
| 
								 | 
							
								                    FILE_PATH = "";
							 | 
						|||
| 
								 | 
							
								                    if (listUser != null && listDealOut[i].CHECK_USER_ID.HasValue && listDealOut[i].ISCHECKSIGN)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        modelUser = listUser.FirstOrDefault(e => e.ID == listDealOut[i].CHECK_USER_ID.Value);
							 | 
						|||
| 
								 | 
							
								                        if (modelUser != null && modelUser.FILE_PATH != null && modelUser.FILE_PATH.Length > 0)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            FILE_PATH = modelUser.FILE_PATH;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(FILE_PATH))
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        ShowImg(workbook, sheet, fileP, FILE_PATH, rowIndex, 3);
							 | 
						|||
| 
								 | 
							
								                        cell83.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        cell83.SetCellValue("");
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    cell83.CellStyle = cellStyle;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    rowIndex += 5;
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #region     表格数据填充
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                var fileNameP = ConfigurationManager.AppSettings["File_DownLoad"];
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                var fullFilePart = $"{fileP}{fileNameP}";
							 | 
						|||
| 
								 | 
							
								                var fullFilePath = $"{fileP}{fileNameP}{fileName}";
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                string Result = $"{fileNameP}{fileName}";
							 | 
						|||
| 
								 | 
							
								                //如果没有文件夹 创建
							 | 
						|||
| 
								 | 
							
								                //如果文件夹下有超过10个文件 按时间 删除多余的
							 | 
						|||
| 
								 | 
							
								                if (!Directory.Exists(fullFilePart))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    Directory.CreateDirectory(fullFilePart);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                else
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    FileInfo[] files = new DirectoryInfo(fullFilePart).GetFiles();
							 | 
						|||
| 
								 | 
							
								                    if (files.Length > 10)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        var listFilesOrder = files.OrderBy(e => e.CreationTime).ToList();
							 | 
						|||
| 
								 | 
							
								                        for (int i = 0; i < files.Length - 10; i++)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            listFilesOrder[i].Delete();
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 写入到文件  
							 | 
						|||
| 
								 | 
							
								                using (FileStream file = new FileStream(fullFilePath, FileMode.Create, FileAccess.Write))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    workbook.Write(file);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 关闭工作簿资源  
							 | 
						|||
| 
								 | 
							
								                workbook.Close();
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                //return $"{fileNameP}{fileName}";
							 | 
						|||
| 
								 | 
							
								                return Result;
							 | 
						|||
| 
								 | 
							
								            });
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        public void ShowImg(IWorkbook workbook, ISheet sheet, string fileConfig, string filePath, int rowIndex, int colIndex)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            try
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                byte[] imgBytes = System.IO.File.ReadAllBytes(fileConfig + filePath);
							 | 
						|||
| 
								 | 
							
								                int pictureIdx = workbook.AddPicture(imgBytes, PictureType.JPEG);
							 | 
						|||
| 
								 | 
							
								                // 创建Drawing对象  
							 | 
						|||
| 
								 | 
							
								                XSSFDrawing drawing = (XSSFDrawing)sheet.CreateDrawingPatriarch();
							 | 
						|||
| 
								 | 
							
								                XSSFClientAnchor anchor = new XSSFClientAnchor(10, 10, 0, 0, colIndex, rowIndex, colIndex + 1, rowIndex + 1); // 示例位置,请根据需要调整  
							 | 
						|||
| 
								 | 
							
								                // 创建图片对象并插入到Excel中  
							 | 
						|||
| 
								 | 
							
								                IPicture pict = drawing.CreatePicture(anchor, pictureIdx);
							 | 
						|||
| 
								 | 
							
								                pict.Resize(0.9);// 注意:此行代码可能需要根据NPOI版本和具体实现进行调整
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            catch { }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 |