From 4fe371ae65fec14707e75b4c7a072492d498dbef Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期三, 09 十月 2024 16:14:17 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java |   21 ++++++++++++++++-----
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java    |    8 +++++++-
 2 files changed, 23 insertions(+), 6 deletions(-)

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 6cd4488..dc7ee0a 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
@@ -53,6 +53,7 @@
 import com.ruoyi.order.dto.OrderEvaluateVo;
 import com.ruoyi.order.dto.*;
 import com.ruoyi.order.service.*;
+import com.ruoyi.order.service.impl.TChargingOrderServiceImpl;
 import com.ruoyi.order.util.PreviousSixMonths;
 import com.ruoyi.payment.api.feignClient.AliPaymentClient;
 import com.ruoyi.payment.api.feignClient.WxPaymentClient;
@@ -63,6 +64,8 @@
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.models.auth.In;
 import jdk.nashorn.internal.runtime.ListAdapter;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import io.swagger.annotations.ApiOperation;
@@ -94,6 +97,8 @@
 @RestController
 @RequestMapping("/t-charging-order")
 public class TChargingOrderController {
+    
+    private Logger log = LoggerFactory.getLogger(TChargingOrderController.class);
 
     @Resource
     private TChargingOrderService chargingOrderService;
@@ -476,7 +481,7 @@
     @ResponseBody
     @PostMapping(value = "/startChargeSuccessfully")
     public void startChargeSuccessfully(@RequestBody PlatformStartChargingReplyMessageVO message){
-        System.err.println("远程启动应答:" + message);
+        log.error("-------------------远程启动充电请求应答-------------------:" + message);
         chargingOrderService.startChargeSuccessfully(message);
     }
     
@@ -564,6 +569,7 @@
      */
     @PostMapping("/terminateSuccessfulResponse")
     public void terminateSuccessfulResponse(@RequestBody PlatformStopChargingReplyVO platformStopChargingReply){
+        log.error("-------------------远程停止充电请求应答-------------------:" + platformStopChargingReply);
         chargingOrderService.terminateSuccessfulResponse(platformStopChargingReply);
     }
     
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 91c248e..cb3d31e 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
@@ -955,6 +955,9 @@
 	public AjaxResult stopCharging(String id) {
 		TChargingOrder chargingOrder = this.getById(id);
 		Integer status = chargingOrder.getStatus();
+		if(status != 3){
+			return AjaxResult.error("还未开始充电");
+		}
 		if(status == 4 || status == 5){
 			return AjaxResult.error("不能重复操作");
 		}
@@ -1050,7 +1053,12 @@
 					}
 					continue;
 				}
-
+				
+				TChargingOrder chargingOrder1 = this.getById(id);
+				if(chargingOrder1.getStatus() != 3){
+					break;
+				}
+				
 				if(0 == reply.getStop_result()){
 					String failure_cause = "";
 					switch (reply.getFailure_cause()){
@@ -1138,10 +1146,14 @@
 
 		return AjaxResult.success();
 	}
-
-
 	
 	
+	
+	/**
+	 * 停止充电应答结果处理
+	 * @param platformStopChargingReply
+	 */
+	@Override
 	public void terminateSuccessfulResponse(PlatformStopChargingReplyVO platformStopChargingReply){
 		GetChargingGunByCode code = new GetChargingGunByCode();
 		code.setCharging_gun_code(platformStopChargingReply.getCharging_gun_code());
@@ -1149,7 +1161,7 @@
 		TChargingGun chargingGun = chargingGunClient.getChargingGunByCode(code).getData();
 		TChargingOrder order = this.getOne(new LambdaQueryWrapper<TChargingOrder>().eq(TChargingOrder::getChargingGunId, chargingGun.getId())
 				.orderByDesc(TChargingOrder::getEndTime).eq(TChargingOrder::getRechargePaymentStatus, 2).last(" limit 0, 1"));
-		if(order.getStatus() != 3){
+		if(null != order && order.getStatus() != 3){
 			return;
 		}
 		String code1 = order.getCode();
@@ -1178,7 +1190,6 @@
 		chargingGunClient.updateChargingGunById(chargingGun);
 		//计算费用,处理退款
 		endCharge(order);
-		log.error(code1 + ":-------------------远程停止充电请求成功-------------------");
 	}
 	
 	

--
Gitblit v1.7.1