Merge branch 'master' into dev

This commit is contained in:
bl\GQS02
2025-11-06 11:27:56 +08:00
2 changed files with 42 additions and 9 deletions

View File

@@ -1110,20 +1110,34 @@ public class TempService {
String reCalculateFlag = dto.getReCalculateFlag(); String reCalculateFlag = dto.getReCalculateFlag();
String reCalculateFlagResult = orderCode + "本次未重新计算订单"; String reCalculateFlagResult = orderCode + "本次未重新计算订单";
if (StringUtils.equals(reCalculateFlag, Constants.ONE)) { 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减30秒
LocalDateTime startTime = localDateTime.minusSeconds(30); LocalDateTime startTime = localDateTime.minusSeconds(30);
// 结束时间为localDateTime加30秒 // 结束时间为localDateTime加30秒
LocalDateTime endTime = localDateTime.plusSeconds(30); LocalDateTime endTime = localDateTime.plusSeconds(30);
// 查询这笔订单的交易记录原始数据 // 查询这笔订单的交易记录原始数据
List<PileMsgRecord> pileFeedListV2 = pileMsgRecordService.getPileFeedListV2(orderBasicInfo.getPileSn(), "0x3B", startTime, endTime); List<PileMsgRecord> pileFeedListV2 = pileMsgRecordService.getPileFeedListV2(orderBasicInfo.getPileSn(), "0x3B", startTime, endTime);
if (CollectionUtils.isEmpty(pileFeedListV2)) { // if (CollectionUtils.isEmpty(pileFeedListV2)) {
// 如果没有交易记录原始数据,则使用停止充电时间作为开始时间和结束时间再查一次 // // 如果没有交易记录原始数据,则使用停止充电时间作为开始时间和结束时间再查一次
localDateTime = DateUtils.date2LocalDateTime(orderBasicInfo.getChargeEndTime()); // localDateTime = DateUtils.date2LocalDateTime(chargeEndTime);
startTime = localDateTime.minusSeconds(30); // startTime = localDateTime.minusSeconds(30);
endTime = localDateTime.plusSeconds(30); // endTime = localDateTime.plusSeconds(30);
pileFeedListV2 = pileMsgRecordService.getPileFeedListV2(orderBasicInfo.getPileSn(), "0x3B", startTime, endTime); // pileFeedListV2 = pileMsgRecordService.getPileFeedListV2(orderBasicInfo.getPileSn(), "0x3B", startTime, endTime);
} // }
TransactionRecordsData data = null; TransactionRecordsData data = null;
for (PileMsgRecord pileMsgRecord : pileFeedListV2) { for (PileMsgRecord pileMsgRecord : pileFeedListV2) {
TransactionRecordsData parse = JSONObject.parseObject(pileMsgRecord.getJsonMsg(), TransactionRecordsData.class); TransactionRecordsData parse = JSONObject.parseObject(pileMsgRecord.getJsonMsg(), TransactionRecordsData.class);

View File

@@ -3558,7 +3558,26 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
*/ */
@Override @Override
public OrderDetail getOrderDetailByOrderCode(String orderCode) { public OrderDetail getOrderDetailByOrderCode(String orderCode) {
return orderBasicInfoMapper.getOrderDetailByOrderCode(orderCode); OrderDetail orderDetail = orderBasicInfoMapper.getOrderDetailByOrderCode(orderCode);
if (orderDetail != null) {
// 如果尖时段耗电量为null, 则设置为0
if (orderDetail.getSharpUsedElectricity() == null) {
orderDetail.setSharpUsedElectricity(BigDecimal.ZERO);
}
// 如果峰时段耗电量为null, 则设置为0
if (orderDetail.getPeakUsedElectricity() == null) {
orderDetail.setPeakUsedElectricity(BigDecimal.ZERO);
}
// 如果谷时段耗电量为null, 则设置为0
if (orderDetail.getValleyUsedElectricity() == null) {
orderDetail.setValleyUsedElectricity(BigDecimal.ZERO);
}
// 如果平时段耗电量为null, 则设置为0
if (orderDetail.getFlatUsedElectricity() == null) {
orderDetail.setFlatUsedElectricity(BigDecimal.ZERO);
}
}
return orderDetail;
} }
@Override @Override