From c825a6f7e52ce1d61b21c352861c1da082a9fcb6 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期二, 13 十月 2026 17:50:24 +0800
Subject: [PATCH] 修改小程序bug
---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java | 26 +++++++++++++++++++++++++-
1 files changed, 25 insertions(+), 1 deletions(-)
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
index 9e39242..8d08113 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
@@ -56,6 +56,7 @@
import com.ruoyi.order.mapper.TChargingOrderMapper;
import com.ruoyi.order.mapper.TChargingOrderShareRecordMapper;
import com.ruoyi.order.mapper.TSettlementConfirmMapper;
+import com.ruoyi.order.mapper.TVinChargingOrderMapper;
import com.ruoyi.order.service.TChargingOrderAccountingStrategyService;
import com.ruoyi.order.service.TChargingOrderRefundService;
import com.ruoyi.order.service.TChargingOrderService;
@@ -251,6 +252,9 @@
@Resource
private UploadRealTimeMonitoringDataService uploadRealTimeMonitoringDataService;
+
+ @Resource
+ private TVinChargingOrderMapper vinChargingOrderMapper;
@Resource
private TCECClient tcecClient;
@@ -2767,7 +2771,19 @@
.orderByDesc(TChargingOrder::getCreateTime)
.last(" limit 0, 1"));
if (null == one || !one.getAppUserId().equals(userId)) {
- return null;
+ // VIN 码充电订单兜底:VD 订单存于 t_vin_charging_order,且后付模式无支付动作,
+ // 不按 rechargePaymentStatus 过滤;TVinChargingOrder 继承 TChargingOrder,后续组装原样复用
+ TVinChargingOrder vinOrder = vinChargingOrderMapper.selectOne(new LambdaQueryWrapper<TVinChargingOrder>()
+ .eq(TVinChargingOrder::getAppUserId, userId)
+ .eq(TVinChargingOrder::getChargingGunId, id)
+ .in(TVinChargingOrder::getStatus, Arrays.asList(2, 3, 4))
+ .eq(TVinChargingOrder::getDelFlag, 0)
+ .orderByDesc(TVinChargingOrder::getCreateTime)
+ .last(" limit 0, 1"));
+ if (null == vinOrder) {
+ return null;
+ }
+ one = vinOrder;
}
ChargingDetails chargingDetails = new ChargingDetails();
chargingDetails.setId(one.getId().toString());
@@ -8058,6 +8074,14 @@
public EndOfChargePageInfo getEndOfChargePageInfo(String id) {
EndOfChargePageInfo info = new EndOfChargePageInfo();
TChargingOrder chargingOrder = this.getById(id);
+ if (chargingOrder == null) {
+ // VIN 码充电订单兜底:VD 订单存于 t_vin_charging_order(继承 TChargingOrder,字段兼容;
+ // 结算已写 paymentAmount/startTime/endTime,后续组装原样复用)
+ chargingOrder = vinChargingOrderMapper.selectById(id);
+ }
+ if (chargingOrder == null) {
+ throw new RuntimeException("充电订单不存在");
+ }
Long userId = tokenService.getLoginUserApplet().getUserId();
if (!chargingOrder.getAppUserId().equals(userId)) {
throw new RuntimeException("权限不足");
--
Gitblit v1.7.1