From 157c26f5188c7ed62a4547f7e3b5a5a3e3ed7729 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期日, 08 十月 2023 09:40:47 +0800
Subject: [PATCH] 优化mqtt生产者取消消费者订阅

---
 src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java |   28 ++++++++++++++++------------
 1 files changed, 16 insertions(+), 12 deletions(-)

diff --git a/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java b/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
index 1cc832e..2714637 100644
--- a/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
+++ b/src/main/java/com/ard/alarm/stealelec/service/StealElecAlarmService.java
@@ -3,14 +3,14 @@
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONObject;
 import com.ard.alarm.stealelec.domain.ArdAlarmStealelec;
-import com.ard.utils.mqtt.MqttConsumer;
+import com.ard.utils.http.HttpUtils;
+import com.ard.utils.mqtt.MqttProducer;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Service;
-import org.springframework.web.client.RestTemplate;
-import javax.annotation.Resource;
+
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -24,12 +24,14 @@
  */
 @Slf4j(topic = "stealAlarm")
 @Service
-public class StealElecAlarmService{
-    @Resource
-    RestTemplate restTemplate;
+public class StealElecAlarmService {
+
     @Value("${spring.stealelec.url}")
     private String stealElecUrl;
-    List<String> tempList=new ArrayList<>();
+    @Value("${spring.stealelec.enabled}")
+    private Boolean enabled;
+    List<String> tempList = new ArrayList<>();
+
     /**
      * @鎻忚堪 鑾峰彇api鏁版嵁鎺ㄩ�乵qtt
      * @鍙傛暟 []
@@ -39,10 +41,13 @@
      * @淇敼浜哄拰鍏跺畠淇℃伅
      */
     @Async("alarm")
-   // @Scheduled(cron="0/5 * * * * ?")
+    @Scheduled(cron = "0/5 * * * * ?")
     public void alarmHandler() {
         try {
-            String allAlarmData = restTemplate.getForObject(stealElecUrl, String.class);
+            if (!enabled) {
+                return;
+            }
+            String allAlarmData = HttpUtils.sendGet(stealElecUrl);
             //鍓旈櫎鎵�鏈塡绗﹀彿
             String message = allAlarmData.replaceAll("\\\\", "");
             //鍓旈櫎鏁翠釜瀛楃涓查灏惧弻寮曞彿
@@ -60,11 +65,10 @@
                     String JSONStr = JSON.toJSONString(object);
                     //杞垚瀹炰綋瀵硅薄
                     ArdAlarmStealelec wd = JSON.parseObject(JSONStr, ArdAlarmStealelec.class);
-                    if(tempList.contains(wd.getId()))
-                    {
+                    if (tempList.contains(wd.getId())) {
                         continue;
                     }
-                    MqttConsumer.publish(2,false,"stealelec", JSON.toJSONString(wd));
+                    MqttProducer.publish(2, false, "stealelec", JSON.toJSONString(wd));
                     tempList.add(wd.getId());
                 }
             }

--
Gitblit v1.9.3