From 27fa371d0fff1590be0534277fe8680ed6515315 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期三, 07 六月 2023 17:18:18 +0800
Subject: [PATCH] 增加管线泄露报警点坐标算法

---
 ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/GlobalAlarmServiceImpl.java |   42 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 41 insertions(+), 1 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/GlobalAlarmServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/GlobalAlarmServiceImpl.java
index 823bd40..bf0c6cd 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/GlobalAlarmServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/GlobalAlarmServiceImpl.java
@@ -1,8 +1,18 @@
 package com.ruoyi.alarm.globalAlarm.service;
 
+import com.alibaba.fastjson2.JSONObject;
 import com.ruoyi.alarm.globalAlarm.domain.GlobalAlarmCondition;
 import com.ruoyi.alarm.stealAlarm.domain.ArdAlarmStealelec;
 import com.ruoyi.alarm.stealAlarm.mapper.ArdAlarmStealelecMapper;
+import com.ruoyi.alarm.tubeAlarm.domain.ArdAlarmTube;
+import com.ruoyi.alarm.tubeAlarm.mapper.ArdAlarmTubeMapper;
+import com.ruoyi.alarm.tubeAlarm.service.IArdAlarmTubeService;
+import com.ruoyi.alarmpoints.tube.domain.ArdTubes;
+import com.ruoyi.alarmpoints.tube.domain.ArdTubesDetails;
+import com.ruoyi.alarmpoints.tube.mapper.ArdTubesDetailsMapper;
+import com.ruoyi.alarmpoints.tube.mapper.ArdTubesMapper;
+import com.ruoyi.common.utils.uuid.UUID;
+import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -20,7 +30,12 @@
 public class GlobalAlarmServiceImpl implements IGlobalAlarmService {
     @Resource
     ArdAlarmStealelecMapper ardAlarmStealelecMapper;
-
+    @Resource
+    IArdAlarmTubeService ardAlarmTubeService;
+    @Resource
+    ArdTubesMapper ardTubesMapper;
+    @Resource
+    ArdTubesDetailsMapper ardTubesDetailsMapper;
     @Override
     public List<Object> selectAlarmLogs(GlobalAlarmCondition condition) {
         switch (condition.getCommand()) {
@@ -32,4 +47,29 @@
         }
     }
 
+    @Override
+    @Async("alarmExecutor")
+    public void receiveAlarm(String topic,String message)
+    {
+        switch (topic)
+        {
+            case "tube":
+                ArdAlarmTube ardAlarmTube = JSONObject.parseObject(message,ArdAlarmTube.class);
+                ardAlarmTube.setId(UUID.randomUUID().toString().replace("-",""));
+                ArdTubesDetails atd=new ArdTubesDetails();
+                atd.setReelNumber(ardAlarmTube.getTubeId());
+                List<ArdTubesDetails> ardTubesDetails = ardTubesDetailsMapper.selectArdTubesDetailsList(atd);
+                if(ardTubesDetails.size()>0)
+                {
+                    String tubeId = ardTubesDetails.get(0).getTubeId();
+                    ArdTubes ardTubes = ardTubesMapper.selectArdTubesById(tubeId);
+                    ardAlarmTube.setTubeName(ardTubes.getName());
+                    ardAlarmTube.setColor(ardTubes.getColor());
+                    ardAlarmTube.setPipeDiameter(ardTubes.getPipeDiameter());
+                    ardAlarmTube.setTubeType(ardTubes.getType());
+                }
+                int i = ardAlarmTubeService.insertArdAlarmTube(ardAlarmTube);
+                break;
+        }
+    }
 }

--
Gitblit v1.9.3