yuxc
2023-04-21 35a36f60cdbd9ef3bf2ab7be9f418f988c93c5eb
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/com/vci/starter/poi/util/ExcelUtil.java
@@ -11,12 +11,40 @@
import com.vci.ubcs.com.vci.starter.web.util.LangBaseUtil;
import com.vci.ubcs.com.vci.starter.web.util.VciBaseUtil;
import org.apache.commons.io.IOUtils;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFDataFormat;
import org.apache.poi.hssf.usermodel.HSSFDataValidation;
import org.apache.poi.hssf.usermodel.HSSFDataValidationHelper;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.util.HSSFColor;
import org.apache.poi.ss.usermodel.*;
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.util.CellRangeAddress;
import org.apache.poi.ss.util.CellRangeAddressList;
import org.apache.poi.xssf.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFDataValidation;
import org.apache.poi.xssf.usermodel.XSSFDataValidationConstraint;
import org.apache.poi.xssf.usermodel.XSSFDataValidationHelper;
import org.apache.poi.xssf.usermodel.XSSFRichTextString;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springblade.core.tool.utils.StringUtil;
@@ -24,6 +52,9 @@
import java.io.*;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Proxy;
import sun.reflect.annotation.*;
import java.math.BigDecimal;
import java.nio.channels.FileChannel;
import java.util.*;
@@ -790,7 +821,11 @@
         Map<Field, ExcelColumn> excelColumnSet = getExcelColumnAnnotations(doClass);
         Map<String, ExcelColumn> excelTitleMap = (Map)((Map)Optional.of(excelColumnSet).get()).values().stream().collect(Collectors.toMap((s) -> {
//            return s.value();
            return s;
//            ExcelColumn s1 = (ExcelColumn) s;
//            s1.value();
//            ((InvocationHandler) ((Proxy) s).).memberValues.get("value");
            return ((ExcelColumn) s).value();
//            return ((AnnotationInvocationHandler) ((Proxy) s).h).memberValues.get("value");
         }, (t) -> {
            return t;
         }));
@@ -1046,7 +1081,7 @@
   private static Object getCellValue(Cell cell, FormulaEvaluator evaluator) {
      if (cell != null) {
         Object cellValue = null;
         CellType cellTypeEnum = cell.getCellType();
         CellType cellTypeEnum = cell.getCellTypeEnum();
         switch (cellTypeEnum) {
            case STRING:
               String thisCellValue = cell.getStringCellValue();