From 9bb396b8a49c0a44bc95e38c2211da3810c13d54 Mon Sep 17 00:00:00 2001 From: zhaoxianglong Date: Mon, 22 Jul 2024 14:40:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=9D=9E=E6=9C=BA=E9=A2=84?= =?UTF-8?q?=E8=AD=A6=E9=87=8D=E8=BF=9E=E6=9C=BA=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../NonAutomaticWarningController.java | 37 +++++++++++++------ 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/zc-business/src/main/java/com/zc/business/controller/NonAutomaticWarningController.java b/zc-business/src/main/java/com/zc/business/controller/NonAutomaticWarningController.java index 4dac907d..16c956fc 100644 --- a/zc-business/src/main/java/com/zc/business/controller/NonAutomaticWarningController.java +++ b/zc-business/src/main/java/com/zc/business/controller/NonAutomaticWarningController.java @@ -27,6 +27,9 @@ import javax.annotation.PostConstruct; import javax.annotation.Resource; import java.text.SimpleDateFormat; import java.util.*; +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.TimeUnit; /** @@ -52,6 +55,8 @@ public class NonAutomaticWarningController extends BaseController { private IDcWarningService dcWarningService; @Autowired private ISysConfigService configService; + private final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1); + /*millimeterWaveRadar * 调用功能 @@ -119,11 +124,19 @@ public class NonAutomaticWarningController extends BaseController { client.setCallback(new MqttCallback() { public void connectionLost(Throwable cause) { - System.out.println("断开连接.........."); + logger.info("断开连接.........."); + // 延迟重连 + scheduler.schedule(() -> { + try { + getAjaxResult(parameter); + } catch (Exception e) { + throw new RuntimeException(e); + } + }, 10, TimeUnit.SECONDS); } public void messageArrived(String topic, MqttMessage message) { - System.out.println("======监听到来自[" + topic + "]的消息======"); + logger.info("======监听到来自[" + topic + "]的消息======"); String jsonObjString = new String(message.getPayload()); JSONObject eventJsonObject = JSONObject.parseObject(jsonObjString); JSONObject params = eventJsonObject.getJSONObject("params"); @@ -250,33 +263,33 @@ public class NonAutomaticWarningController extends BaseController { dcWarning.setWarningState(UniversalEnum.ONE.getNumber()); SimpleDateFormat sdf = new SimpleDateFormat(UniversalEnum.CHINESE_CHARACTER_TIME_FORMAT.getValue()); String formattedDate = sdf.format(happenTime); - dcWarning.setRemark("非机预警设备:"+formattedDate + "在" + stakeMark + srcName + "收费站的" + direction + "发生了一起" + warningType + "事件"); + dcWarning.setRemark("非机预警设备:" + formattedDate + "在" + stakeMark + srcName + "收费站的" + direction + "发生了一起" + warningType + "事件"); dcWarningService.insertDcWarning(dcWarning); }); - System.out.println("message content:" + jsonObjString); - System.out.println("============"); + logger.info("message content:" + jsonObjString); + logger.info("============"); } public void deliveryComplete(IMqttDeliveryToken token) { - System.out.println("deliveryComplete---------" + token.isComplete()); + logger.info("deliveryComplete---------" + token.isComplete()); } }); // 建立连接 - System.out.println("连接到 broker: " + host); + logger.info("连接到 broker: " + host); client.connect(options); - System.out.println("连接成功."); + logger.info("连接成功."); //订阅消息 //client.subscribe(topicName.getString("6274883585"), 1); - //System.out.println("开始监听" + topicName.getString("6274883585")); + //logger.info("开始监听" + topicName.getString("6274883585")); client.subscribe(topicName.getString("6274879489"), UniversalEnum.ONE.getNumber()); - System.out.println("开始监听" + topicName.getString("6274879489")); + logger.info("开始监听" + topicName.getString("6274879489")); //client.subscribe(topicName.getString("7768236033"), 1); - //System.out.println("开始监听" + topicName.getString("7768236033")); + //logger.info("开始监听" + topicName.getString("7768236033")); //client.subscribe(topicName.getString("7835340801"), 1); - //System.out.println("开始监听" + topicName.getString("7835340801")); + //logger.info("开始监听" + topicName.getString("7835340801")); } catch (Exception e) { e.printStackTrace(); }