From ee90d67775ec0926eb2e6ab4632a10ab0c461b7d Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期四, 27 十一月 2025 14:57:59 +0800
Subject: [PATCH] 新增加成都监管数据对接

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java |   79 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 78 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 ff3a2bc..9ddfb48 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
@@ -34,6 +34,7 @@
 import com.ruoyi.integration.api.model.*;
 import com.ruoyi.integration.api.vo.ChargingOrderVo;
 import com.ruoyi.integration.api.vo.GetPlatformStopChargingReply;
+import com.ruoyi.integration.api.vo.NotificationConnectorChargeStatusVo;
 import com.ruoyi.integration.api.vo.StartChargeResult;
 import com.ruoyi.order.api.dto.SettlementConfirmAdd;
 import com.ruoyi.order.api.feignClient.AccountingStrategyDetailOrderClient;
@@ -232,6 +233,9 @@
 	
 	@Resource
 	private ChargingMessageClient chargingMessageClient;
+
+	@Resource
+	private ChengDuJianGuanClient chengDuJianGuanClient;
 	
 	
 	/**
@@ -769,6 +773,17 @@
 		
 		log.info(chargingOrder.getCode() + ":-------------------远程调起开始充电请求-------------------" + platformStartCharging.toString());
 		sendMessageClient.platformStartCharging(platformStartCharging);
+
+		ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.SECONDS, new LinkedBlockingDeque<>());
+		threadPoolExecutor.execute(()->{
+			//推送成都监管
+			NotificationConnectorChargeStatusVo vo = new NotificationConnectorChargeStatusVo();
+			vo.setOrderCode(chargingOrder.getCode());
+			vo.setChargingGunId(chargingOrder.getChargingGunId());
+			chengDuJianGuanClient.notificationConnectorChargeStatus(vo);
+		});
+
+
 //		//异步线程检测远程启动的应答结果。如果失败,则需要全额退款
 //		Long id = chargingOrder.getId();
 //		//执行5分钟的定时任务检测
@@ -832,6 +847,7 @@
 				chargingOrder.setStartTime(LocalDateTime.now());
 			}
 			this.updateById(chargingOrder);
+
 			if (chargingOrder.getStatus() == 3) {
 				//推送监管平台订单状态
 				new Thread(() -> {
@@ -846,6 +862,14 @@
 			if (2 == chargingOrder.getOrderSource() && 1 == site.getIsOpenSynchronization()) {
 				tcecClient.notificationEquipChargeStatus(chargingOrder.getStartChargeSeq(), chargingOrder.getOperatorId());
 			}
+			ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.SECONDS, new LinkedBlockingDeque<>());
+			threadPoolExecutor.execute(()->{
+				//推送成都监管
+				NotificationConnectorChargeStatusVo vo = new NotificationConnectorChargeStatusVo();
+				vo.setOrderCode(chargingOrder.getCode());
+				vo.setChargingGunId(chargingOrder.getChargingGunId());
+				chengDuJianGuanClient.notificationConnectorChargeStatus(vo);
+			});
 			return true;
 		} else {
 			Integer counter = boot_failed_map.get(code);
@@ -880,6 +904,14 @@
 			if (2 == chargingOrder.getOrderSource() && 1 == site.getIsOpenSynchronization()) {
 				tcecClient.notificationEquipChargeStatus(chargingOrder.getStartChargeSeq(), chargingOrder.getOperatorId());
 			}
+			ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.SECONDS, new LinkedBlockingDeque<>());
+			threadPoolExecutor.execute(()->{
+				//推送成都监管
+				NotificationConnectorChargeStatusVo vo = new NotificationConnectorChargeStatusVo();
+				vo.setOrderCode(chargingOrder.getCode());
+				vo.setChargingGunId(chargingOrder.getChargingGunId());
+				chengDuJianGuanClient.notificationConnectorChargeStatus(vo);
+			});
 			return true;
 		}
 	}
@@ -1305,7 +1337,14 @@
 		if (2 == order.getOrderSource() && 1 == site.getIsOpenSynchronization()) {
 			tcecClient.notificationEquipChargeStatus(order.getStartChargeSeq(), order.getOperatorId());
 		}
-		
+		ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.SECONDS, new LinkedBlockingDeque<>());
+		threadPoolExecutor.execute(()->{
+			//推送成都监管
+			NotificationConnectorChargeStatusVo vo = new NotificationConnectorChargeStatusVo();
+			vo.setOrderCode(order.getCode());
+			vo.setChargingGunId(order.getChargingGunId());
+			chengDuJianGuanClient.notificationConnectorChargeStatus(vo);
+		});
 		return AjaxResult.success();
 	}
 	
@@ -2611,6 +2650,16 @@
 					}
 				}).start();
 			}
+			ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.SECONDS, new LinkedBlockingDeque<>());
+			TChargingOrder finalChargingOrder1 = chargingOrder;
+			threadPoolExecutor.execute(()->{
+				//推送成都监管
+				NotificationConnectorChargeStatusVo statusVo = new NotificationConnectorChargeStatusVo();
+				statusVo.setOrderCode(finalChargingOrder1.getCode());
+				statusVo.setChargingGunId(finalChargingOrder1.getChargingGunId());
+				chengDuJianGuanClient.notificationConnectorChargeStatus(statusVo);
+				chengDuJianGuanClient.notificationOrderInfo(statusVo);
+			});
 			
 			//开始将优惠券优惠的金额添加到明细中
 			BigDecimal couponDiscountAmount = chargingOrder.getCouponDiscountAmount();
@@ -2982,6 +3031,18 @@
 					chargingOrderRefundService.save(chargingOrderRefund);
 					
 				}
+			}
+
+			if(5 == tChargingOrder.getStatus()){
+				ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.SECONDS, new LinkedBlockingDeque<>());
+				threadPoolExecutor.execute(()->{
+					//推送成都监管
+					NotificationConnectorChargeStatusVo statusVo = new NotificationConnectorChargeStatusVo();
+					statusVo.setOrderCode(tChargingOrder.getCode());
+					statusVo.setChargingGunId(tChargingOrder.getChargingGunId());
+					chengDuJianGuanClient.notificationConnectorChargeStatus(statusVo);
+					chengDuJianGuanClient.notificationOrderInfo(statusVo);
+				});
 			}
 		}
 		if (payOrderQueryDto.getType() == 2) {
@@ -4137,6 +4198,14 @@
 			//推送三方平台订单状态
 			tcecClient.notificationEquipChargeStatus(chargingOrder.getStartChargeSeq(), chargingOrder.getOperatorId());
 		}
+		ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.SECONDS, new LinkedBlockingDeque<>());
+		threadPoolExecutor.execute(()->{
+			//推送成都监管
+			NotificationConnectorChargeStatusVo statusVo = new NotificationConnectorChargeStatusVo();
+			statusVo.setOrderCode(chargingOrder.getCode());
+			statusVo.setChargingGunId(chargingOrder.getChargingGunId());
+			chengDuJianGuanClient.notificationConnectorChargeStatus(statusVo);
+		});
 		return R.ok();
 	}
 	
@@ -4186,6 +4255,14 @@
 			log.info("【" + code1 + "】三方平台请求停止充电发起消息结束");
 			log.info(platformStopCharging.toString());
 		});
+		ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.SECONDS, new LinkedBlockingDeque<>());
+		threadPoolExecutor.execute(()->{
+			//推送成都监管
+			NotificationConnectorChargeStatusVo statusVo = new NotificationConnectorChargeStatusVo();
+			statusVo.setOrderCode(chargingOrder.getCode());
+			statusVo.setChargingGunId(chargingOrder.getChargingGunId());
+			chengDuJianGuanClient.notificationConnectorChargeStatus(statusVo);
+		});
 		return R.ok();
 	}
 	

--
Gitblit v1.7.1