From 5f3db406212c961daffdb55d76547d3733c7e805 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期二, 08 十月 2024 14:28:08 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java                                       |    2 
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java                                 |    3 +
 ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/SecurityDetectionFallbackFactory.java               |   29 +++++++++
 ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/PlatformStartChargingReply.java                       |    1 
 ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/SendMessageFallbackFactory.java                     |    6 ++
 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/SecurityDetectionService.java                   |    9 ++
 ruoyi-api/ruoyi-api-integration/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports |    3 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java                     |   27 ++++++++
 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/SecurityDetectionServiceImpl.java          |   10 +++
 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/controller/SecurityDetectionController.java                     |   22 +++++++
 ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/SecurityDetection.java                                |    3 
 ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/SendMessageClient.java                          |   10 +++
 ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/SecurityDetectionClient.java                    |   15 +++++
 13 files changed, 132 insertions(+), 8 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/SecurityDetectionFallbackFactory.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/SecurityDetectionFallbackFactory.java
new file mode 100644
index 0000000..4113e9a
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/SecurityDetectionFallbackFactory.java
@@ -0,0 +1,29 @@
+package com.ruoyi.integration.api.factory;
+
+import com.ruoyi.integration.api.feignClient.SecurityDetectionClient;
+import com.ruoyi.integration.api.feignClient.SendMessageClient;
+import com.ruoyi.integration.api.model.PlatformStartCharging;
+import com.ruoyi.integration.api.model.PlatformStopCharging;
+import com.ruoyi.integration.api.model.QrCodeDelivery;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+/**
+ * 充电桩服务降级处理
+ * 
+ * @author ruoyi
+ */
+@Component
+public class SecurityDetectionFallbackFactory implements org.springframework.cloud.openfeign.FallbackFactory<SecurityDetectionClient>
+{
+    private static final Logger log = LoggerFactory.getLogger(SecurityDetectionFallbackFactory.class);
+
+    @Override
+    public SecurityDetectionClient create(Throwable throwable) {
+        log.error("调用失败:{}", throwable.getMessage());
+        return new SecurityDetectionClient() {
+        
+        };
+    }
+}
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/SendMessageFallbackFactory.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/SendMessageFallbackFactory.java
index 89f13bb..e063231 100644
--- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/SendMessageFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/SendMessageFallbackFactory.java
@@ -6,6 +6,7 @@
 import com.ruoyi.integration.api.model.ChargingHandshake;
 import com.ruoyi.integration.api.model.PlatformStartCharging;
 import com.ruoyi.integration.api.model.PlatformStopCharging;
+import com.ruoyi.integration.api.model.QrCodeDelivery;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.cloud.openfeign.FallbackFactory;
@@ -36,6 +37,11 @@
             public String platformStopCharging(PlatformStopCharging platformStopCharging) {
                 return "远程停机失败";
             }
+    
+            @Override
+            public String qrCodeDelivery(QrCodeDelivery qrCodeDelivery) {
+                return "二维码下发失败";
+            }
         };
     }
 }
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/SecurityDetectionClient.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/SecurityDetectionClient.java
new file mode 100644
index 0000000..6d127f9
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/SecurityDetectionClient.java
@@ -0,0 +1,15 @@
+package com.ruoyi.integration.api.feignClient;
+
+import com.ruoyi.common.core.constant.ServiceNameConstants;
+import com.ruoyi.integration.api.factory.SecurityDetectionFallbackFactory;
+import org.springframework.cloud.openfeign.FeignClient;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/10/8 14:23
+ */
+@FeignClient(contextId = "SecurityDetectionClient", value = ServiceNameConstants.INTEGRATION_SERVICE, fallbackFactory = SecurityDetectionFallbackFactory.class)
+public interface SecurityDetectionClient {
+
+
+}
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/SendMessageClient.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/SendMessageClient.java
index df4db22..9d3263b 100644
--- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/SendMessageClient.java
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/SendMessageClient.java
@@ -4,6 +4,7 @@
 import com.ruoyi.integration.api.factory.SendMessageFallbackFactory;
 import com.ruoyi.integration.api.model.PlatformStartCharging;
 import com.ruoyi.integration.api.model.PlatformStopCharging;
+import com.ruoyi.integration.api.model.QrCodeDelivery;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -32,4 +33,13 @@
 	 */
 	@PostMapping("/sendMessage/platformStopCharging")
 	String platformStopCharging(@RequestBody PlatformStopCharging platformStopCharging);
+	
+	
+	/**
+	 * 二维码下发
+	 * @param qrCodeDelivery
+	 * @return
+	 */
+	@PostMapping("/sendMessage/qrCodeDelivery")
+	String qrCodeDelivery(@RequestBody QrCodeDelivery qrCodeDelivery);
 }
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/PlatformStartChargingReply.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/PlatformStartChargingReply.java
index 54f09f3..af8b03e 100644
--- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/PlatformStartChargingReply.java
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/PlatformStartChargingReply.java
@@ -15,7 +15,6 @@
 @Document(collection = "platform_start_charging_reply") //指定要对应的文档名(表名)
 @Accessors(chain = true)
 public class PlatformStartChargingReply extends BaseModel {
-    @Id
     private String transaction_serial_number; // 交易流水号
     private String charging_pile_code; // 桩编码
     private String charging_gun_code; // 抢号
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/SecurityDetection.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/SecurityDetection.java
index b59b244..06be3e2 100644
--- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/SecurityDetection.java
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/SecurityDetection.java
@@ -9,8 +9,7 @@
 @Document(collection = "security_detection") //指定要对应的文档名(表名)
 @Accessors(chain = true)
 public class SecurityDetection {
-
-    @Id
+    private String transaction_serial_number; // 交易流水号
     private String charging_pile_code; // 桩编码
     private String charging_gun_code; // 抢号
     private Integer secure_connection; // 车枪连接(0=未连接,1=连接)
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-api/ruoyi-api-integration/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index 5ed2383..e9bb146 100644
--- a/ruoyi-api/ruoyi-api-integration/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/ruoyi-api/ruoyi-api-integration/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -5,4 +5,5 @@
 com.ruoyi.integration.api.factory.PlatformStartChargingReplyFallbackFactory
 com.ruoyi.integration.api.factory.PlatformStopChargingReplyFallbackFactory
 com.ruoyi.integration.api.factory.SwitchwayGateFallbackFactory
-com.ruoyi.integration.api.factory.IotInterfaceFallbackFactory
\ No newline at end of file
+com.ruoyi.integration.api.factory.IotInterfaceFallbackFactory
+com.ruoyi.integration.api.factory.SecurityDetectionFallbackFactory
\ No newline at end of file
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
index 778b2b8..a743b4a 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
@@ -30,7 +30,7 @@
 import org.springframework.http.HttpEntity;
 import org.springframework.http.HttpMethod;
 import org.springframework.http.ResponseEntity;
-import org.springframework.mock.web.MockMultipartFile;
+//import org.springframework.mock.web.MockMultipartFile;
 import org.springframework.util.LinkedMultiValueMap;
 import org.springframework.util.MultiValueMap;
 import org.springframework.web.bind.annotation.*;
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java
index 002eb28..a31d8e0 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java
@@ -19,6 +19,8 @@
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.page.PageInfo;
 import com.ruoyi.common.security.utils.SecurityUtils;
+import com.ruoyi.integration.api.feignClient.SendMessageClient;
+import com.ruoyi.integration.api.model.QrCodeDelivery;
 import com.ruoyi.other.api.feignClient.RoleSiteClient;
 import com.ruoyi.other.api.feignClient.UserSiteClient;
 import com.ruoyi.system.api.domain.SysUser;
@@ -60,6 +62,9 @@
 
     @Resource
     private SysUserRoleClient sysUserRoleClient;
+    
+    @Resource
+    private SendMessageClient sendMessageClient;
 
     
     
@@ -116,8 +121,17 @@
             return AjaxResult.error("接口编码已存在");
         }
         this.save(dto);
+        TChargingPile chargingPile = chargingPileService.getById(dto.getChargingPileId());
+    
         //下发硬件充电二维码
-        
+        String code_prefix = "https://mxcd.zhinenganguan.com?No=";
+        QrCodeDelivery qrCodeDelivery = new QrCodeDelivery();
+        qrCodeDelivery.setCharging_pile_code(chargingPile.getCode());
+        qrCodeDelivery.setCode_format(1);
+        qrCodeDelivery.setPrefix_length(code_prefix.length());
+        qrCodeDelivery.setCode_prefix(code_prefix);
+        qrCodeDelivery.setQr_code(code_prefix + chargingPile.getCode() + dto.getCode());
+        sendMessageClient.qrCodeDelivery(qrCodeDelivery);
         return AjaxResult.success();
     }
     
@@ -143,8 +157,17 @@
             return AjaxResult.error("接口编码已存在");
         }
         this.updateById(dto);
+        TChargingPile chargingPile = chargingPileService.getById(dto.getChargingPileId());
+    
         //下发硬件充电二维码
-        
+        String code_prefix = "https://mxcd.zhinenganguan.com?No=";
+        QrCodeDelivery qrCodeDelivery = new QrCodeDelivery();
+        qrCodeDelivery.setCharging_pile_code(chargingPile.getCode());
+        qrCodeDelivery.setCode_format(1);
+        qrCodeDelivery.setPrefix_length(code_prefix.length());
+        qrCodeDelivery.setCode_prefix(code_prefix);
+        qrCodeDelivery.setQr_code(code_prefix + chargingPile.getCode() + dto.getCode());
+        sendMessageClient.qrCodeDelivery(qrCodeDelivery);
         return AjaxResult.success();
     }
 
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/controller/SecurityDetectionController.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/controller/SecurityDetectionController.java
new file mode 100644
index 0000000..b5ab6e4
--- /dev/null
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/controller/SecurityDetectionController.java
@@ -0,0 +1,22 @@
+package com.ruoyi.integration.controller;
+
+import com.ruoyi.integration.mongodb.service.SecurityDetectionService;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/10/8 14:25
+ */
+@RestController
+@RequestMapping("/securityDetection")
+public class SecurityDetectionController {
+	
+	@Resource
+	private SecurityDetectionService securityDetectionService;
+	
+	
+	
+}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/SecurityDetectionService.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/SecurityDetectionService.java
index 8ba09de..ae025dd 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/SecurityDetectionService.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/SecurityDetectionService.java
@@ -7,5 +7,12 @@
 /**
  */
 public interface SecurityDetectionService extends BaseService<SecurityDetection> {
-
+	
+	
+	/**
+	 * 根据业务流水号查询数据
+	 * @param transactionSerialNumber
+	 * @return
+	 */
+	SecurityDetection getSecurityDetection(String transactionSerialNumber);
 }
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/SecurityDetectionServiceImpl.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/SecurityDetectionServiceImpl.java
index 2f27fc9..061e367 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/SecurityDetectionServiceImpl.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/SecurityDetectionServiceImpl.java
@@ -33,4 +33,14 @@
     public List<SecurityDetection> findAll() {
         return mongoTemplate.findAll(SecurityDetection.class);
     }
+    
+    /**
+     * 根据业务流水号查询数据
+     * @param transactionSerialNumber
+     * @return
+     */
+    @Override
+    public SecurityDetection getSecurityDetection(String transactionSerialNumber) {
+        return null;
+    }
 }
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 352d1d3..dcc55cb 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
@@ -650,6 +650,9 @@
 		//执行5分钟的定时任务检测
 		ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
 		scheduler.scheduleAtFixedRate(()->{
+			//获取安全校验
+			
+			
 			List<PlatformStartChargingReply> data = platformStartChargingReplyClient.getPlatformStartChargingReply(code).getData();
 			System.err.println("-------------------开始检查调起充电结果-------------------");
 			System.err.println(data.toString());

--
Gitblit v1.7.1