From 88580dae55106dcf4a8f80693b90638e07af02fa Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期三, 14 十月 2026 09:20:23 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java |    7 ++++++-
 1 files changed, 6 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 8d08113..d9d4d96 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
@@ -2796,7 +2796,8 @@
         boolean reservationPending = ReservationOrderSupport.isPending(
                 one.getStatus(), one.getReservationTime(), LocalDateTime.now());
         chargingDetails.setStatus(reservationPending ? 1 : one.getStatus());
-        chargingDetails.setChargingCost(one.getResidualAmount());
+        // 已使用费用:默认取订单已使用金额,存在实时监测数据时以设备上报已充金额(电费+服务费)为准
+        chargingDetails.setChargingCost(money(one.getResidualAmount()));
         UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataService.getLastDataById(one.getCode());
         if (null != data) {
             chargingDetails.setChargeCurrent(data.getOutput_current());
@@ -2809,6 +2810,10 @@
             Integer h = Integer.valueOf(data.getCumulative_charging_time() / 60);
             Integer m = Integer.valueOf(data.getCumulative_charging_time() % 60);
             chargingDetails.setChargedTime(String.format("%02d", h) + ":" + String.format("%02d", m));
+            // 设备上报已充金额非空时覆盖,上报缺失则沿用订单已使用金额
+            if (null != data.getPaid_amount()) {
+                chargingDetails.setChargingCost(money(data.getPaid_amount()));
+            }
             if (null != one.getAppUserCarId()) {
                 TAppUserCar appUserCar = appUserCarClient.getCarById(one.getAppUserCarId().toString()).getData();
                 //   续航 = 续航里程 * soc

--
Gitblit v1.7.1