Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/poi/util/ExcelUtil.java
@@ -20,23 +20,7 @@
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.util.HSSFColor;
import org.apache.poi.hssf.util.HSSFColor.HSSFColorPredefined;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.CellType;
import org.apache.poi.ss.usermodel.CellValue;
import org.apache.poi.ss.usermodel.DataValidation;
import org.apache.poi.ss.usermodel.DataValidationConstraint;
import org.apache.poi.ss.usermodel.DateUtil;
import org.apache.poi.ss.usermodel.Font;
import org.apache.poi.ss.usermodel.FormulaEvaluator;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.Name;
import org.apache.poi.ss.usermodel.RichTextString;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.ss.util.CellRangeAddressList;
import org.apache.poi.xssf.usermodel.XSSFDataValidation;
@@ -61,6 +45,10 @@
   private static Logger logger = LoggerFactory.getLogger(ExcelUtil.class);
   public static final String KEY_ATTR_CHAR = "☆";
   public static final String REQUIRED_CHAR = "*";
   /**
    * 替换字符
    */
   public static final String SPECIAL_CHAR  = "VCI";
   public ExcelUtil() {
   }
@@ -286,7 +274,7 @@
               Sheet sheet = getSheetByWorkbook(finalWb, sheetName);
               try {
                  writeDataToCell(sheet, excelDataList);
                  writeDataToCell(sheet, excelDataList,workbook);
               } catch (VciBaseException var6) {
                  IOUtils.closeQuietly(os);
                  throw var6;
@@ -317,7 +305,6 @@
               throw new VciBaseException(LangBaseUtil.getErrorMsg(var13), new String[0], var13);
            } finally {
               IOUtils.closeQuietly(os);
               try {
                  wb.close();
               } catch (Throwable var12) {
@@ -528,7 +515,7 @@
      return cell;
   }
   private static void writeDataToCell(Sheet sheet, List<WriteExcelData> excelDataList) throws VciBaseException {
   private static void writeDataToCell(Sheet sheet, List<WriteExcelData> excelDataList,Workbook workbook) throws VciBaseException {
      if (sheet != null && !CollectionUtils.isEmpty(excelDataList)) {
         List<WriteExcelData> mergedDataList = new ArrayList();
         excelDataList.stream().forEach((ed) -> {
@@ -537,6 +524,14 @@
            if (ed.isMerged() && (ed.getRowTo() > ed.getRow() || ed.getColTo() > ed.getCol())) {
               mergedDataList.add(ed);
            }
            // TODO: 修改编号列为文本
            if("id".equalsIgnoreCase(ed.getObjCode())){
               //CellStyle textStyle = workbook.createCellStyle();
               HSSFDataFormat format = (HSSFDataFormat)sheet.getWorkbook().createDataFormat();
               Row copyStyleRow = sheet.getRow(ed.getRow());
               cell = copyStyleRow.getCell(ed.getCol());
               cell.getCellStyle().setDataFormat(format.getFormat("@"));
            }
            copyStyle(sheet, cell, ed);
            if (ed.isReadOnly() && ed.getObj() != null && !(ed.getObj() instanceof RichTextString) && CollectionUtils.isEmpty(ed.getValidationDataList())) {