Hentua
2023-06-10 72e7d01b5b249ae1a079d19cdc62ecd2782c325c
src/main/java/cc/mrbird/febs/others/controller/EximportController.java
@@ -10,9 +10,7 @@
import com.google.common.base.Stopwatch;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Lists;
import com.wuwenze.poi.ExcelKit;
import com.wuwenze.poi.handler.ExcelReadHandler;
import com.wuwenze.poi.pojo.ExcelErrorField;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
@@ -66,7 +64,7 @@
            list.add(eximport);
        });
        // 构建模板
        ExcelKit.$Export(Eximport.class, response).downXlsx(list, true);
        // ExcelKit.$Export(Eximport.class, response).downXlsx(list, true);
    }
    /**
@@ -87,20 +85,20 @@
        Stopwatch stopwatch = Stopwatch.createStarted();
        final List<Eximport> data = Lists.newArrayList();
        final List<Map<String, Object>> error = Lists.newArrayList();
        ExcelKit.$Import(Eximport.class).readXlsx(file.getInputStream(), new ExcelReadHandler<Eximport>() {
            @Override
            public void onSuccess(int sheet, int row, Eximport eximport) {
                // 数据校验成功时,加入集合
                eximport.setCreateTime(new Date());
                data.add(eximport);
            }
            @Override
            public void onError(int sheet, int row, List<ExcelErrorField> errorFields) {
                // 数据校验失败时,记录到 error集合
                error.add(ImmutableMap.of("row", row, "errorFields", errorFields));
            }
        });
//        ExcelKit.$Import(Eximport.class).readXlsx(file.getInputStream(), new ExcelReadHandler<Eximport>() {
//            @Override
//            public void onSuccess(int sheet, int row, Eximport eximport) {
//                // 数据校验成功时,加入集合
//                eximport.setCreateTime(new Date());
//                data.add(eximport);
//            }
//
//            @Override
//            public void onError(int sheet, int row, List<ExcelErrorField> errorFields) {
//                // 数据校验失败时,记录到 error集合
//                error.add(ImmutableMap.of("row", row, "errorFields", errorFields));
//            }
//        });
        if (CollectionUtils.isNotEmpty(data)) {
            // 将合法的记录批量入库
            this.eximportService.batchInsert(data);
@@ -118,6 +116,6 @@
    @ControllerEndpoint(exceptionMessage = "导出Excel失败")
    public void export(QueryRequest queryRequest, Eximport eximport, HttpServletResponse response) {
        List<Eximport> eximports = this.eximportService.findEximports(queryRequest, eximport).getRecords();
        ExcelKit.$Export(Eximport.class, response).downXlsx(eximports, false);
        // ExcelKit.$Export(Eximport.class, response).downXlsx(eximports, false);
    }
}