From 99eddbebf80c5549a7487caed95b041abdc9bb5f Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期一, 14 七月 2025 14:06:40 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java                       |    3 +++
 ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/util/TaskUtil.java                                          |    2 +-
 ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/feignClient/ChargingMessageClient.java               |    2 +-
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java                                           |   15 +++++++++------
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TAccountingStrategyDetailController.java |    5 +++++
 5 files changed, 19 insertions(+), 8 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/feignClient/ChargingMessageClient.java b/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/feignClient/ChargingMessageClient.java
index b1cd2ba..55a2da6 100644
--- a/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/feignClient/ChargingMessageClient.java
+++ b/ruoyi-api/ruoyi-api-jianguan/src/main/java/com/ruoyi/integration/api/feignClient/ChargingMessageClient.java
@@ -30,6 +30,6 @@
 	 * @param chargingOrder
 	 * @return
 	 */
-	@PostMapping("/chargingMessage/pushOrderInfo")
+	@PostMapping("/chargingMessage/pushOrderStatus")
 	R pushOrderStatus(@RequestBody ChargingOrderVo chargingOrder);
 }
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TAccountingStrategyDetailController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TAccountingStrategyDetailController.java
index 46e3915..cd9f0d4 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TAccountingStrategyDetailController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TAccountingStrategyDetailController.java
@@ -176,6 +176,11 @@
         }
         Site site = siteService.getById(chargingPile.getSiteId());
         TAccountingStrategy accountingStrategy = accountingStrategyService.getById(site.getAccountingStrategyId());
+        if(null == accountingStrategy){
+            List<TChargingGun> list = chargingGunService.list(new LambdaQueryWrapper<TChargingGun>().eq(TChargingGun::getChargingPileId, chargingPile.getId()));
+            accountingStrategy = accountingStrategyService.getById(list.get(0).getAccountingStrategyId());
+        }
+        
         TAccountingStrategyDetail one = accountingStrategyDetailService.getOne(Wrappers.<TAccountingStrategyDetail>lambdaQuery()
                 .eq(TAccountingStrategyDetail::getAccountingStrategyId, accountingStrategy.getId())
                 .last(" and DATE_FORMAT(now(), '%H:%i') between start_time and (if(end_time = '00:00', '23:59', end_time))"));
diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/util/TaskUtil.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/util/TaskUtil.java
index 25b3526..4c2d906 100644
--- a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/util/TaskUtil.java
+++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/util/TaskUtil.java
@@ -60,7 +60,7 @@
 	 */
 	@Scheduled(fixedRate = 60000)
 	public void taskPushOrderStatus(){
-//		pushOrderStatus();
+		pushOrderStatus();
 	}
 	
 	
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 49ef82e..5d21287 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
@@ -2341,6 +2341,9 @@
 			
 			//获取订单的计费策略
 			List<AccountingStrategyDetailOrder> accountingStrategyDetailOrderList = accountingStrategyDetailOrderClient.getAllAccountingStrategyDetailOrder(chargingOrder.getId()).getData();
+			if(accountingStrategyDetailOrderList.isEmpty()){
+				return R.fail("计费策略为空,无法计算费用");
+			}
 			accountingStrategyDetailOrderList.get(accountingStrategyDetailOrderList.size() - 1).setEndTime("23:59");
 			//开始处理计费明细数据和优惠数据
 			chargingOrderAccountingStrategyService.remove(new LambdaQueryWrapper<TChargingOrderAccountingStrategy>().eq(TChargingOrderAccountingStrategy::getChargingOrderId, chargingOrder.getId()));
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java
index 256c8d9..032d4db 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java
@@ -131,13 +131,16 @@
                     BeanUtils.copyProperties(one, vo);
                     R r = chargingOrderService.endChargeBillingCharge(vo);
                     log.info("定时任务执行,充电中的订单处理结果:{}", JSON.toJSONString(r));
+                    
+                    if(200 == r.getCode()){
+                        order = chargingOrderService.getById(order.getId());
+                        //推送监管平台订单状态和订单详情
+                        ChargingOrderVo chargingOrderVo = new ChargingOrderVo();
+                        BeanUtils.copyProperties(order, chargingOrderVo);
+                        chargingMessageClient.pushOrderInfo(chargingOrderVo);
+                        chargingMessageClient.pushOrderStatus(chargingOrderVo);
+                    }
                 }
-    
-                //推送监管平台订单状态和订单详情
-                ChargingOrderVo chargingOrderVo = new ChargingOrderVo();
-                BeanUtils.copyProperties(order, chargingOrderVo);
-                chargingMessageClient.pushOrderInfo(chargingOrderVo);
-                chargingMessageClient.pushOrderStatus(chargingOrderVo);
             }
         }
     }

--
Gitblit v1.7.1