|
@@ -88,7 +88,7 @@ public class BillGenerationServiceImpl {
|
|
|
List<SwBillManagementUnpaidDo> saveList = new ArrayList<>();
|
|
|
List<SwUserManagementDo> userSaveList = new ArrayList<>();
|
|
|
/*******当前账单的所有户号******/
|
|
|
- List<String> accountNumberList = collect.stream().map(SwWaterUsageEntryDo::getUsernumber).collect(Collectors.toList());
|
|
|
+ List<String> accountNumberList = collect.parallelStream().map(SwWaterUsageEntryDo::getUsernumber).collect(Collectors.toList());
|
|
|
/*******当前账单的所有户号******/
|
|
|
Map<String, SwUserManagementDo> userMap = swUserManagementService.list(new LambdaQueryWrapper<SwUserManagementDo>()
|
|
|
.select(SwUserManagementDo::getId,
|
|
@@ -109,7 +109,7 @@ public class BillGenerationServiceImpl {
|
|
|
)
|
|
|
.eq(BaseDo::getDeleted, "0")
|
|
|
.in(SwUserManagementDo::getUsernumber, accountNumberList))
|
|
|
- .stream().collect(Collectors.groupingBy(SwUserManagementDo::getUsernumber,
|
|
|
+ .parallelStream().collect(Collectors.groupingBy(SwUserManagementDo::getUsernumber,
|
|
|
Collectors.reducing(
|
|
|
null, // 初始值(可能为 null)
|
|
|
(a, b) -> a != null ? a : b // 合并规则:保留第一个非 null 元素
|
|
@@ -123,20 +123,21 @@ public class BillGenerationServiceImpl {
|
|
|
String usernumber = swWaterUsageEntry.getUsernumber();
|
|
|
// 本次抄表日期
|
|
|
Date currentreadingdate = swWaterUsageEntry.getCurrentreadingdate();
|
|
|
+ log.debug("当前需要生成账单的户号为:{},抄表数:{},抄表时间:{}", usernumber, swWaterUsageEntry.getThisreading(), currentreadingdate);
|
|
|
// 校验 是否已存在抄表记录
|
|
|
if (swWaterUsageEntry.getState().equals("1")) {
|
|
|
log.error("当前用户:{},时间:{}的抄表记录已生成账单信息", usernumber, currentreadingdate);
|
|
|
- return;
|
|
|
+ break;
|
|
|
}
|
|
|
swUserManagementDo = userMap.getOrDefault(swWaterUsageEntry.getUsernumber(), null);
|
|
|
|
|
|
SwWaterUsageEntryDo usageEntryDo = new SwWaterUsageEntryDo();
|
|
|
usageEntryDo.setId(swWaterUsageEntry.getId());
|
|
|
if (swUserManagementDo == null) {
|
|
|
- log.error("当前户号不存在");
|
|
|
+ log.error("当前户号不存在:{}", swWaterUsageEntry.getUsernumber());
|
|
|
usageEntryDo.setState("2");
|
|
|
saveUsageEntryList.add(usageEntryDo);
|
|
|
- return;
|
|
|
+ break;
|
|
|
}
|
|
|
// 校验是否可以生成账单
|
|
|
if (swUserManagementDo.getLastmeterreaddate() != null &&
|
|
@@ -144,7 +145,7 @@ public class BillGenerationServiceImpl {
|
|
|
log.error("本次抄表日期:{}小于用户表最后一次抄表日期:{}", swUserManagementDo.getLastmeterreaddate(), swWaterUsageEntry.getCurrentreadingdate());
|
|
|
usageEntryDo.setState("3");
|
|
|
saveUsageEntryList.add(usageEntryDo);
|
|
|
- return;
|
|
|
+ break;
|
|
|
}
|
|
|
try {
|
|
|
// 生成代缴费账单
|
|
@@ -169,7 +170,7 @@ public class BillGenerationServiceImpl {
|
|
|
}
|
|
|
dataSave(saveList, saveUsageEntryList, userSaveList);
|
|
|
long totalAsyncCost = System.currentTimeMillis() - asyncTasksStart;
|
|
|
- log.info("账单生成记录耗时: {}ms", totalAsyncCost);
|
|
|
+ log.info("账单生成记录耗时: {}ms,生成的账单数量为:{}", totalAsyncCost, saveUsageEntryList.size());
|
|
|
}
|
|
|
|
|
|
|