Просмотр исходного кода

2023-10-21 添加气瓶带离后,添加预案的横条通知。

chaiyunlong лет назад: 2
Родитель
Сommit
45ac015243

+ 5 - 0
zd-modules/zd-airbottle/src/main/java/com/zd/airbottle/ZdAirbottleApplication.java

@@ -16,6 +16,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.context.annotation.ComponentScan;
 import org.springframework.scheduling.annotation.EnableScheduling;
 
+import java.util.Collection;
 import java.util.List;
 import java.util.concurrent.TimeUnit;
 
@@ -45,6 +46,10 @@ public class ZdAirbottleApplication implements ApplicationRunner {
 
     @Override
     public void run(ApplicationArguments args) throws Exception {
+        Collection <String> cllKey = redisService.keys(BaseConstants.BEACON_MATE_NOTICE + "*");
+        for(String key:cllKey){
+            redisService.deleteObject(key);
+        }
         //TODO 启动气瓶服务的时候,需要把信标全部载入redis一次,(主要防止服务器断电重启后,被带离的气瓶无法知道)
         List <DbStock> list = dbStockService.list();
         for(DbStock db:list){

+ 4 - 0
zd-modules/zd-modules-laboratory/src/main/java/com/zd/laboratory/event/RedisExpiredAndWorkListener.java

@@ -181,6 +181,8 @@ public class RedisExpiredAndWorkListener extends KeyExpirationEventMessageListen
                     }
                     //下发通知,告诉前端页面,查询redis获取相关信息
                     messageSendService.bluetoothGatewayToMac(Long.parseLong(beaconStr[2]));
+                    //向前端发送mqtt预案触发提示
+                    messageSendService.riskPlanTriggerNotice();
                 }else{
                     log.info("34.=====================================》通知消息:");
                     List<Map <String,Object>> beaconList = new ArrayList <>();
@@ -188,6 +190,8 @@ public class RedisExpiredAndWorkListener extends KeyExpirationEventMessageListen
                     redisService.setCacheObject(BaseConstants.BEACON_MATE_NOTICE+"~"+ beaconStr[2],beaconList, 30L, TimeUnit.MINUTES);
                     //下发通知,告诉前端页面,查询redis获取相关信息
                     messageSendService.bluetoothGatewayToMac(Long.parseLong(beaconStr[2]));
+                    //向前端发送mqtt预案触发提示
+                    messageSendService.riskPlanTriggerNotice();
                 }
                 Map <String,String> tagMap = new HashMap<>();
                 tagMap.put("beaconTag",beaconStr[1]);

+ 2 - 0
zd-modules/zd-modules-laboratory/src/main/java/com/zd/laboratory/socket/service/impl/BeaconMateImpl.java

@@ -110,6 +110,8 @@ public class BeaconMateImpl implements BeaconMate {
                         //判断通知消息集合有数据,说明信标有变动,需要重新变更加通知
                         redisService.setCacheObject(BaseConstants.BEACON_MATE_NOTICE+"~"+ subId,newNoticeList, 30L, TimeUnit.MINUTES);
                         messageSendService.bluetoothGatewayToMac(subId);
+                        //向前端发送mqtt预案触发提示
+                        messageSendService.riskPlanTriggerNotice();
                     }
                 }
             }