fix: 修复无交易记录自动结算并增加分时电量观测对比

复用 settleOrder 主路径纠正状态/锁/实时数据取值等问题,补充 mock 单测与 sys_job SQL;交易记录到达时按实时曲线估算尖峰平谷仅打日志对比,不参与结算。
This commit is contained in:
jsowell
2026-08-12 16:17:31 +08:00
parent 896908d692
commit 40c34fa49c
16 changed files with 1278 additions and 620 deletions

View File

@@ -24,6 +24,7 @@ import com.jsowell.pile.domain.OrderBasicInfo;
import com.jsowell.pile.domain.PileBasicInfo;
import com.jsowell.pile.dto.SavePileMsgDTO;
import com.jsowell.pile.service.*;
import com.jsowell.pile.service.TouElectricityObserveService;
import com.jsowell.pile.service.programlogic.AbstractProgramLogic;
import com.jsowell.pile.service.programlogic.ProgramLogicFactory;
import com.jsowell.thirdparty.common.CommonService;
@@ -76,6 +77,9 @@ public class TransactionRecordsRequestHandler extends AbstractYkcHandler {
@Autowired
private OrderBasicInfoService orderBasicInfoService;
@Autowired
private TouElectricityObserveService touElectricityObserveService;
@Autowired
private PileMerchantInfoService pileMerchantInfoService;
@@ -685,6 +689,13 @@ public class TransactionRecordsRequestHandler extends AbstractYkcHandler {
log.error("结算订单发生异常 orderCode:{}", orderBasicInfo.getOrderCode(), e);
}
// 观测:平台用实时曲线估算尖峰平谷,与桩端交易记录对比(不影响结算)
try {
touElectricityObserveService.logCompareWithTransactionRecord(orderBasicInfo, data);
} catch (Exception ignore) {
log.warn("分时电量估算对比调用失败(不影响结算), orderCode:{}", orderBasicInfo.getOrderCode());
}
OrderBasicInfo finalOrderBasicInfo = orderBasicInfo;
// TODO 异步推送第三方平台订单信息