| | |
| | | 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; |
| | |
| | | list.add(eximport); |
| | | }); |
| | | // 构建模板 |
| | | ExcelKit.$Export(Eximport.class, response).downXlsx(list, true); |
| | | // ExcelKit.$Export(Eximport.class, response).downXlsx(list, true); |
| | | } |
| | | |
| | | /** |
| | |
| | | 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); |
| | |
| | | @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); |
| | | } |
| | | } |