src/main/java/org/springblade/modules/disputeRecord/controller/DisputeRecordController.java
@@ -10,9 +10,11 @@ import javax.validation.Valid; import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.log.logger.BladeLogger; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.jackson.JsonUtil; import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.tool.utils.Func; import org.springblade.modules.disputeRecord.excel.DisputeRecordExcel; @@ -41,6 +43,7 @@ public class DisputeRecordController { private final IDisputeRecordService disputeRecordService; private final BladeLogger bladeLogger; /** * 矛盾纠纷记录表 详情 @@ -144,11 +147,11 @@ */ @PostMapping("import-disputeRecord") @ApiOperationSupport(order = 10) @ApiOperation(value = "导入矛盾纠纷记录表", notes = "传入excel") @ApiOperation(value = "批量导入矛盾纠纷记录", notes = "传入excel") public R importDisputeRecord(MultipartFile file, Integer isCovered) { DisputeRecordImporter disputeRecordImporter = new DisputeRecordImporter(disputeRecordService, 1 == 1); ExcelUtil.save(file, disputeRecordImporter, DisputeRecordExcel.class); return R.success("操作成功"); bladeLogger.info("批量导入矛盾纠纷记录", JsonUtil.toJson(isCovered)); String result = disputeRecordService.importDisputeRecord(ExcelUtil.read(file, DisputeRecordExcel.class),isCovered==1); return R.data(200, result, null); } /** src/main/java/org/springblade/modules/disputeRecord/service/IDisputeRecordService.java
@@ -45,7 +45,7 @@ * 矛盾纠纷事件数据导入类 * @author Chill */ void importDisputeRecord(List<DisputeRecordExcel> data, Boolean isCovered); String importDisputeRecord(List<DisputeRecordExcel> data, Boolean isCovered); /** * 导出矛盾纠纷记录表 src/main/java/org/springblade/modules/disputeRecord/service/impl/DisputeRecordServiceImpl.java
@@ -85,8 +85,18 @@ */ @Override @Transactional(rollbackFor = Exception.class) public void importDisputeRecord(List<DisputeRecordExcel> data, Boolean isCovered) { public String importDisputeRecord(List<DisputeRecordExcel> data, Boolean isCovered) { int totalNum = data.size(); int importNum = 0; int updateNum = 0; int errorNum = 0; for (DisputeRecordExcel disputeRecordExcel : data) { // 判断地址,时间 if (Strings.isBlank(disputeRecordExcel.getAddress()) ) { errorNum++; continue; } // 获取转换数据对象 DisputeRecordEntity disputeRecordEntity = Objects.requireNonNull(BeanUtil.copy(disputeRecordExcel, DisputeRecordEntity.class)); @@ -158,15 +168,30 @@ // 查询 List<DisputeRecordEntity> list = list(queryWrapper); if (list.size()>0){ // 更新 disputeRecordEntity.setId(list.get(0).getId()); // 更新 updateById(disputeRecordEntity); updateNum++; if (isCovered) { // 更新 disputeRecordEntity.setId(list.get(0).getId()); // 更新 updateById(disputeRecordEntity); importNum++; } }else { // 插入 save(disputeRecordEntity); importNum ++; } } StringBuilder builder = new StringBuilder("导入完成!"); builder.append("其中本次表格共有 ").append(totalNum).append(" 条数据,") .append("成功导入 ").append(importNum).append(" 条数据。"); if (updateNum>0) { builder.append("其中有 ").append(updateNum).append(" 条数据已存在。"); } if (errorNum>0){ builder.append("共有 ").append(errorNum).append(" 条数据由于无地址信息未导入!"); } return builder.toString(); } /** src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java
@@ -346,7 +346,6 @@ HouseholdEntity householdEntity = Objects.requireNonNull(BeanUtil.copy(houseHoldExcel, HouseholdEntity.class)); // 判断姓名,手机号 if (Strings.isBlank(householdEntity.getName()) || Strings.isBlank(householdEntity.getPhoneNumber()) || Strings.isBlank(householdEntity.getHouseCode()) ) { errorNum++; @@ -356,7 +355,6 @@ QueryWrapper<HouseholdEntity> wrapper = new QueryWrapper<>(); wrapper.eq("house_code", householdEntity.getHouseCode()) .eq("is_deleted", 0) .eq("phone_number", householdEntity.getPhoneNumber()) .eq("name", householdEntity.getName()); HouseholdEntity one = this.getOne(wrapper); // 与角色关系 @@ -470,7 +468,7 @@ builder.append("其中有 ").append(updateNum).append(" 条数据已存在。"); } if (errorNum>0){ builder.append("共有 ").append(errorNum).append(" 条数据由于无姓名或手机号或门牌地址编码信息未导入!"); builder.append("共有 ").append(errorNum).append(" 条数据由于无姓名或门牌地址编码信息未导入!"); } return builder.toString(); }