From 2ce7468e0deefad0da20620dafb542354891b396 Mon Sep 17 00:00:00 2001 From: "bl\\GQS02" Date: Thu, 6 Nov 2025 10:53:07 +0800 Subject: [PATCH] update --- .../java/com/jsowell/service/TempService.java | 30 ++++++++++++++----- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/jsowell-admin/src/main/java/com/jsowell/service/TempService.java b/jsowell-admin/src/main/java/com/jsowell/service/TempService.java index e49259dea..6ede7307b 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/TempService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/TempService.java @@ -1110,20 +1110,34 @@ public class TempService { String reCalculateFlag = dto.getReCalculateFlag(); String reCalculateFlagResult = orderCode + "本次未重新计算订单"; if (StringUtils.equals(reCalculateFlag, Constants.ONE)) { - LocalDateTime localDateTime = DateUtils.date2LocalDateTime(orderBasicInfo.getSettlementTime()); + // 获取订单结算时间 + Date settlementTime = orderBasicInfo.getSettlementTime(); + + // 获取订单停止充电时间 + Date chargeEndTime = orderBasicInfo.getChargeEndTime(); + + // 如果订单结算时间与订单停止充电时间都为空,则打印错误信息并返回 + if (settlementTime == null && chargeEndTime == null) { + logger.error("debugOrder, orderCode:{}, settlementTime:{}, chargeEndTime:{}", orderCode, settlementTime, chargeEndTime); + reCalculateFlagResult = orderCode + "订单结算时间和订单停止充电时间都为空"; + resultMap.put("reCalculate", ImmutableMap.of("value", reCalculateFlag, "message", reCalculateFlagResult)); + return resultMap; + } + + LocalDateTime localDateTime = DateUtils.date2LocalDateTime(settlementTime != null ? settlementTime : chargeEndTime); // 开始时间为localDateTime减30秒 LocalDateTime startTime = localDateTime.minusSeconds(30); // 结束时间为localDateTime加30秒 LocalDateTime endTime = localDateTime.plusSeconds(30); // 查询这笔订单的交易记录原始数据 List pileFeedListV2 = pileMsgRecordService.getPileFeedListV2(orderBasicInfo.getPileSn(), "0x3B", startTime, endTime); - if (CollectionUtils.isEmpty(pileFeedListV2)) { - // 如果没有交易记录原始数据,则使用停止充电时间作为开始时间和结束时间再查一次 - localDateTime = DateUtils.date2LocalDateTime(orderBasicInfo.getChargeEndTime()); - startTime = localDateTime.minusSeconds(30); - endTime = localDateTime.plusSeconds(30); - pileFeedListV2 = pileMsgRecordService.getPileFeedListV2(orderBasicInfo.getPileSn(), "0x3B", startTime, endTime); - } + // if (CollectionUtils.isEmpty(pileFeedListV2)) { + // // 如果没有交易记录原始数据,则使用停止充电时间作为开始时间和结束时间再查一次 + // localDateTime = DateUtils.date2LocalDateTime(chargeEndTime); + // startTime = localDateTime.minusSeconds(30); + // endTime = localDateTime.plusSeconds(30); + // pileFeedListV2 = pileMsgRecordService.getPileFeedListV2(orderBasicInfo.getPileSn(), "0x3B", startTime, endTime); + // } TransactionRecordsData data = null; for (PileMsgRecord pileMsgRecord : pileFeedListV2) { TransactionRecordsData parse = JSONObject.parseObject(pileMsgRecord.getJsonMsg(), TransactionRecordsData.class);