From cf381adf7831c80feedd25cf9392e0f3dfbe46f6 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期一, 19 一月 2026 11:16:03 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java                            |   11 +++--
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/mongodb/service/UploadRealTimeMonitoringDataService.java          |    3 +
 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java                               |    6 +++
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java                               |    2 
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserCarController.java                              |    6 +++
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java |   13 ++++++
 ruoyi-service/ruoyi-integration/src/main/resources/logback.xml                                                                 |    2 
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java                               |   30 +++++++--------
 8 files changed, 50 insertions(+), 23 deletions(-)

diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java
index 0cb076f..f7a0804 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java
@@ -178,7 +178,7 @@
             return R.ok(new ArrayList<>());
         }
         List<TAppUserCar> appUserId = appUserCarService.list(new QueryWrapper<TAppUserCar>()
-                .eq("app_user_id",tokenService.getLoginUserApplet().getUserId()));
+                .eq("app_user_id",tokenService.getLoginUserApplet().getUserId()).eq("del_flag", 0));
         appUserId.forEach(s->s.setId_(s.getId().toString()));
         return R.ok(appUserId);
     }
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserCarController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserCarController.java
index 10c1eaa..683c6b3 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserCarController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserCarController.java
@@ -36,10 +36,14 @@
     public R<List<TAppUserCar>> getCarByIds(@RequestBody List<Long> carIds){
         return R.ok(appUserCarService.list(Wrappers.lambdaQuery(TAppUserCar.class).in(TAppUserCar::getId,carIds)));
     }
+
+
     @PostMapping(value = "/t-app-user-car/getAllCar")
     public R<List<TAppUserCar>> getAllCar(){
         return R.ok(appUserCarService.list());
     }
+
+
     @PostMapping(value = "/t-app-user-car/getCarById/{id}")
     public R<TAppUserCar> getCarById(@PathVariable("id")String id){
         return R.ok(appUserCarService.lambdaQuery().eq(TAppUserCar::getId,id).one());
@@ -55,6 +59,8 @@
         TAppUserCar one = appUserCarService.getOne(new LambdaQueryWrapper<TAppUserCar>().eq(TAppUserCar::getLicensePlate, licensePlate).eq(TAppUserCar::getDelFlag, 0));
         return R.ok(one);
     }
+
+
     @PostMapping(value = "/t-app-user-car/getAppUserCarByLicensePlates")
     public R<List<Long>> getAppUserCarByLicensePlates(@RequestParam("licensePlate") String licensePlate){
         List<Long> collect = appUserCarService.list(new LambdaQueryWrapper<TAppUserCar>().like(TAppUserCar::getLicensePlate, licensePlate)
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java
index 7789280..d1d295c 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/drainage/TCECController.java
@@ -1432,6 +1432,9 @@
 	@PostMapping("/notificationChargeOrderInfo")
 	public R notificationChargeOrderInfo(@RequestParam("startChargeSeq") String startChargeSeq, @RequestParam("operatorId") Integer operatorId){
 		NotificationChargeOrderInfo info = buildNotificationChargeOrderInfo(startChargeSeq);
+		if(null == info){
+			return R.fail("引流平台同步数据失败");
+		}
 		Operator operator = operatorClient.getOperatorById(operatorId).getData();
 		NotificationChargeOrderInfoResult notificationChargeOrderInfoResult = TCECUtil.notificationChargeOrderInfo(operator, info);
 		//启动重试推送机制
@@ -1487,6 +1490,9 @@
 		notificationChargeOrderInfo.setTotalPower(chargingOrder.getElectricity());
 		
 		List<TChargingOrderAccountingStrategy> data = chargingOrderAccountingStrategyClient.getChargingOrderAccountingStrategyByOrderId(chargingOrder.getId()).getData();
+		if(data.isEmpty()){
+			return null;
+		}
 		if(data.size() > 0){
 			BigDecimal totalElectricity = data.stream().map(TChargingOrderAccountingStrategy::getPeriodElectricPrice).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(4, RoundingMode.HALF_EVEN);
 			BigDecimal serviceCharge = data.stream().map(TChargingOrderAccountingStrategy::getPeriodServicePrice).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(4, RoundingMode.HALF_EVEN);
diff --git a/ruoyi-service/ruoyi-integration/src/main/resources/logback.xml b/ruoyi-service/ruoyi-integration/src/main/resources/logback.xml
index 535b51c..d2aaf1f 100644
--- a/ruoyi-service/ruoyi-integration/src/main/resources/logback.xml
+++ b/ruoyi-service/ruoyi-integration/src/main/resources/logback.xml
@@ -75,7 +75,7 @@
 				<maxFileSize>100MB</maxFileSize>
 			</timeBasedFileNamingAndTriggeringPolicy>
 			<!--日志文档保留天数-->
-			<maxHistory>15</maxHistory>
+			<maxHistory>60</maxHistory>
 		</rollingPolicy>
 		<!-- 此日志文档只记录info级别的 -->
 		<filter class="ch.qos.logback.classic.filter.LevelFilter">
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
index 4ae76d2..83fde65 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
@@ -357,17 +357,12 @@
         payOrderChargingInfo.setChargingName(data1.getName());
         TChargingGun data2 = chargingGunClient.getChargingGunById(byId.getChargingGunId()).getData();
         payOrderChargingInfo.setGunName(data2.getName());
-        if (byId.getAppUserCarId()!=null) {
-            List<TAppUserCar> data3 = appUserCarClient.getCarByIds(Collections.singletonList(byId.getAppUserCarId())).getData();
-            payOrderChargingInfo.setCarNum(data3.get(0).getLicensePlate());
-        }else{
-            payOrderChargingInfo.setCarNum(byId.getPlateNum());
-        }
+        payOrderChargingInfo.setCarNum(byId.getPlateNum());
         payOrderChargingInfo.setTChargingOrder(byId);
 
         Long count = chargingOrderAccountingStrategyService.lambdaQuery().eq(TChargingOrderAccountingStrategy::getChargingOrderId, orderId).count();
         payOrderChargingInfo.setPeriodCount(count);
-        if (byId.getAppUserCarId()!=null) {
+        if (byId.getAppUserCarId()!=null && 0 != byId.getAppUserCarId()) {
             List<Long> carid = new ArrayList<>();
             carid.add(byId.getAppUserCarId());
             R<List<TAppUserCar>> carByIds = appUserCarClient.getCarByIds(carid);
@@ -565,15 +560,18 @@
             }
             tChargingOrderAccountingStrategy.setStartTime(format+" "+tChargingOrderAccountingStrategy.getStartTime());
             tChargingOrderAccountingStrategy.setEndTime(format+" "+tChargingOrderAccountingStrategy.getEndTime());
-            if (byId.getVipDiscountAmount()!=null && byId.getServiceCharge().compareTo(BigDecimal.ZERO) != 0){
-                BigDecimal multiply = byId.getVipDiscountAmount().divide(byId.getServiceCharge(), 2)
-                        .multiply(tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice());
-                tChargingOrderAccountingStrategy.setVipDiscount(multiply);
-            }
-            if (byId.getCouponDiscountAmount()!=null && byId.getServiceCharge().compareTo(BigDecimal.ZERO) != 0){
-                BigDecimal multiply = byId.getCouponDiscountAmount().divide(byId.getServiceCharge(), 2)
-                        .multiply(tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice());
-                tChargingOrderAccountingStrategy.setCouponDiscount(multiply);
+//            if (byId.getVipDiscountAmount()!=null && byId.getServiceCharge().compareTo(BigDecimal.ZERO) != 0){
+//                BigDecimal multiply = byId.getVipDiscountAmount().divide(byId.getServiceCharge(), 2)
+//                        .multiply(tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice());
+//                tChargingOrderAccountingStrategy.setVipDiscount(multiply);
+//            }
+//            if (byId.getCouponDiscountAmount()!=null && byId.getServiceCharge().compareTo(BigDecimal.ZERO) != 0){
+//                BigDecimal multiply = byId.getCouponDiscountAmount().divide(byId.getServiceCharge(), 2)
+//                        .multiply(tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice());
+//                tChargingOrderAccountingStrategy.setCouponDiscount(multiply);
+//            }
+            if(null == tChargingOrderAccountingStrategy.getCouponDiscount()){
+                tChargingOrderAccountingStrategy.setCouponDiscount(BigDecimal.ZERO);
             }
         }
         //从新排序
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 af08088..429fefb 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
@@ -820,8 +820,8 @@
 			Integer failure_cause = platformStartChargingReply.getFailure_cause();
 			Integer counter = counter_map.get(code);
 			PreChargeCheck preChargeCheck1 = redisService.getCacheObject(key);
-			//10分钟内还未插枪则取消充电,退回金额。
-			if (failure_cause == 5 && (null == counter || counter < 600)) {
+			//5分钟内还未插枪则取消充电,退回金额。
+			if (failure_cause == 5 && (null == counter || counter < 300)) {
 				counter = (null == counter ? 0 : counter) + 1;
 				counter_map.put(code, counter);
 				//启动失败
@@ -903,8 +903,8 @@
 			}else{
 				Integer counter = boot_failed_map.get(code);
 				log.info(code + ":-------------------未上传开启充电结果-------------------" + counter);
-				//10分钟内未启动成功,退回金额。
-				if (null == counter || counter < 600) {
+				//5分钟内未启动成功,退回金额。
+				if (null == counter || counter < 300) {
 					counter = (null == counter ? 0 : counter) + 1;
 					boot_failed_map.put(code, counter);
 					//启动失败
@@ -1997,6 +1997,7 @@
 				chargingOrderListVO.setAuthInfo(data.get(0));
 				chargingOrderListVO.setAuthCurve(data.get(1));
 			}
+			chargingOrderListVO.setUid(map.get("id").toString());
 			chargingOrderListVO.setCode(map.get("code").toString());
 			chargingOrderListVO.setSiteName(map.get("siteName").toString());
 			chargingOrderListVO.setOrderType(map.get("orderType").toString());
@@ -2313,7 +2314,7 @@
 		
 		// 获取开始SOC 结束soc
 		if (chargingOrder.getCode() != null) {
-			List<UploadRealTimeMonitoringData> data6 = uploadRealTimeMonitoringDataService.getDataByOrderCode(chargingOrder.getCode());
+			List<UploadRealTimeMonitoringData> data6 = uploadRealTimeMonitoringDataService.getDataByOrderCodeAsc(chargingOrder.getCode());
 			if (data6 != null) {
 				for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data6) {
 					if (uploadRealTimeMonitoringData.getOutput_current() != null &&
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/mongodb/service/UploadRealTimeMonitoringDataService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/mongodb/service/UploadRealTimeMonitoringDataService.java
index 5343237..224e7d8 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/mongodb/service/UploadRealTimeMonitoringDataService.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/mongodb/service/UploadRealTimeMonitoringDataService.java
@@ -18,6 +18,9 @@
 	List<UploadRealTimeMonitoringData> getDataByOrderCode(String code);
 
 
+	List<UploadRealTimeMonitoringData> getDataByOrderCodeAsc(String code);
+
+
 	/**
 	 * 查询数据,排序
 	 * @param code
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java
index fb4bdd8..d89f185 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java
@@ -62,6 +62,19 @@
 
 
     @Override
+    public List<UploadRealTimeMonitoringData> getDataByOrderCodeAsc(String code) {
+        Query query = new Query();
+        if(StringUtils.isNotEmpty(code)){
+            query.addCriteria(Criteria.where("transaction_serial_number").is(code));
+        }
+        List<UploadRealTimeMonitoringData> uploadRealTimeMonitoringData = mongoTemplate.find(
+                query.with(Sort.by(Sort.Order.asc("create_time")))
+                , UploadRealTimeMonitoringData.class);
+        return uploadRealTimeMonitoringData;
+    }
+
+
+    @Override
     public UploadRealTimeMonitoringData getDataByOrderCode(String code, String sort) {
         Query query = new Query();
         if(StringUtils.isNotEmpty(code)){

--
Gitblit v1.7.1