From d7e18fe5f9962b2fc6d8fd7da7692a9aabe50bdf Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期三, 28 六月 2023 10:10:12 +0800
Subject: [PATCH] 报警业务增加雷达报警

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

diff --git a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
index 6c3b90b..5d24727 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
@@ -6,6 +6,8 @@
 import com.ruoyi.alarm.globalAlarm.domain.GlobalAlarmCondition;
 import com.ruoyi.alarm.globalAlarm.domain.GlobalAlarmData;
 import com.ruoyi.alarm.globalAlarm.service.IGlobalAlarmService;
+import com.ruoyi.alarm.radarAlarm.domain.ArdAlarmRadar;
+import com.ruoyi.alarm.radarAlarm.mapper.ArdAlarmRadarMapper;
 import com.ruoyi.alarm.stealAlarm.domain.ArdAlarmStealelec;
 import com.ruoyi.alarm.stealAlarm.mapper.ArdAlarmStealelecMapper;
 import com.ruoyi.alarm.tubeAlarm.domain.ArdAlarmTube;
@@ -50,6 +52,8 @@
 @Service
 @Slf4j(topic = "mqtt")
 public class GlobalAlarmServiceImpl implements IGlobalAlarmService {
+    @Resource
+    ArdAlarmRadarMapper ardAlarmRadarMapper;
     @Resource
     ArdAlarmStealelecMapper ardAlarmStealelecMapper;
     @Resource
@@ -111,6 +115,36 @@
                                     .setLatitude(ardAlarmCamera.getLatitude())
                                     .setCount(ardAlarmCamera.getCount())
                                     .setTotal(ardAlarmCamera.getTotal());
+                            return globalAlarmData;
+                        })
+                        .collect(Collectors.toList());
+            case 1003:
+                List<ArdAlarmRadar> ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime,"杩愬姩鐩爣妫�娴�");
+                return ardAlarmRadars.stream()
+                        .map(ardAlarmRadar -> {
+                            GlobalAlarmData globalAlarmData = new GlobalAlarmData()
+                                    .setId(ardAlarmRadar.getId())
+                                    .setName(ardAlarmRadar.getName())
+                                    .setAlarmTime(ardAlarmRadar.getAlarmTime())
+                                    .setLongitude(ardAlarmRadar.getLongitude())
+                                    .setLatitude(ardAlarmRadar.getLatitude())
+                                    .setCount(ardAlarmRadar.getCount())
+                                    .setTotal(ardAlarmRadar.getTotal());
+                            return globalAlarmData;
+                        })
+                        .collect(Collectors.toList());
+            case 1004:
+                ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime,"鐑簮妫�娴�");
+                return ardAlarmRadars.stream()
+                        .map(ardAlarmRadar -> {
+                            GlobalAlarmData globalAlarmData = new GlobalAlarmData()
+                                    .setId(ardAlarmRadar.getId())
+                                    .setName(ardAlarmRadar.getName())
+                                    .setAlarmTime(ardAlarmRadar.getAlarmTime())
+                                    .setLongitude(ardAlarmRadar.getLongitude())
+                                    .setLatitude(ardAlarmRadar.getLatitude())
+                                    .setCount(ardAlarmRadar.getCount())
+                                    .setTotal(ardAlarmRadar.getTotal());
                             return globalAlarmData;
                         })
                         .collect(Collectors.toList());
@@ -277,6 +311,16 @@
                     }
                     //endregion
                     break;
+                case "radar":
+                    //region 澶勭悊闆疯揪鎶ヨ
+                    ArdAlarmRadar ardAlarmRadar = JSONObject.parseObject(message, ArdAlarmRadar.class);
+                    ardAlarmRadar.setId(simpleUUID);
+                    int aar = ardAlarmRadarMapper.insertArdAlarmRadar(ardAlarmRadar);
+                    if (aar > 0) {
+                        log.debug("radar鍏ュ簱鎴愬姛锛�" + ardAlarmRadar);
+                    }
+                    //endregion
+                    break;
             }
         } catch (Exception ex) {
             log.error("鎺ユ敹鎶ヨ寮傚父:" + ex.getMessage());
@@ -358,18 +402,26 @@
      * @淇敼浜哄拰鍏跺畠淇℃伅
      */
     @Override
-    public Map<String, Integer> selectAlarmLogsCount() {
+    public Map<String, Object> selectAlarmLogsCount() {
+        Map<String, Object> map = new HashMap<>();
         Map<String, Integer> countMap = new HashMap<>();
         String refreshTime = configService.selectConfigByKey("refreshTime");
         int count1001 = ardAlarmStealelecMapper.selectCountByStartTime(refreshTime);
         countMap.put("1001", count1001);
-        int count1014 = ardAlarmTubeMapper.selectCountByStartTime(refreshTime);
-        countMap.put("1014 ", count1014);
-        return countMap;
+        int count1002 = ardAlarmCameraMapper.selectCountByAlarmTime(refreshTime);
+        countMap.put("1002", count1002);
+        int count1003 = ardAlarmRadarMapper.selectCountByAlarmTime(refreshTime,"杩愬姩鐩爣妫�娴�");
+        countMap.put("1003", count1003);
+        int count1004 = ardAlarmRadarMapper.selectCountByAlarmTime(refreshTime,"鐑簮妫�娴�");
+        countMap.put("1004", count1004);
+        int count1014 = ardAlarmTubeMapper.selectCountByAlarmTime(refreshTime);
+        countMap.put("1014", count1014);
+        map.put("20000", countMap);
+        return map;
     }
 
     @Override
-    public Object selectAlarmList(Integer command, String beginTime, String endTime) {
+    public Object selectAlarmList(Integer command, String beginTime, String endTime, Integer pageNum, Integer pageSize) {
         Map<String, Object> params = new HashMap<>();
         params.put("beginTime", beginTime);
         params.put("endTime", endTime);
@@ -377,19 +429,64 @@
             case 1001:
                 ArdAlarmStealelec aas = new ArdAlarmStealelec();
                 aas.setParams(params);
+                aas.setPageNum(pageNum);
+                aas.setPageSize(pageSize);
                 List<ArdAlarmStealelec> ardAlarmStealelecs = ardAlarmStealelecMapper.selectArdAlarmStealelecList(aas);
                 return ardAlarmStealelecs;
             case 1002:
                 ArdAlarmCamera aac = new ArdAlarmCamera();
                 aac.setParams(params);
+                aac.setPageNum(pageNum);
+                aac.setPageSize(pageSize);
                 List<ArdAlarmCamera> ardAlarmCameras = ardAlarmCameraMapper.selectArdAlarmCameraList(aac);
                 return ardAlarmCameras;
+            case 1003:
+                ArdAlarmRadar aar = new ArdAlarmRadar();
+                aar.setParams(params);
+                aar.setPageNum(pageNum);
+                aar.setPageSize(pageSize);
+                aar.setAlarmType("杩愬姩鐩爣妫�娴�");
+                List<ArdAlarmRadar> ardAlarmRadar = ardAlarmRadarMapper.selectArdAlarmRadarList(aar);
+                return ardAlarmRadar;
+            case 1004:
+                ArdAlarmRadar aarr = new ArdAlarmRadar();
+                aarr.setParams(params);
+                aarr.setPageNum(pageNum);
+                aarr.setPageSize(pageSize);
+                aarr.setAlarmType("鐑簮妫�娴�");
+                List<ArdAlarmRadar> ardAlarmRadarr = ardAlarmRadarMapper.selectArdAlarmRadarList(aarr);
+                return ardAlarmRadarr;
             case 1014:
                 ArdAlarmTube aat = new ArdAlarmTube();
                 aat.setParams(params);
+                aat.setPageNum(pageNum);
+                aat.setPageSize(pageSize);
                 List<ArdAlarmTube> ardAlarmTubes = ardAlarmTubeMapper.selectArdAlarmTubeList(aat);
                 return ardAlarmTubes;
         }
         return null;
     }
+
+    public static void main(String[] args) {
+        // 缁欏畾鍧愭爣 A
+        double Ax = 0;
+        double Ay = 0;
+
+        // 缁欏畾瑙掑害锛堜互搴︿负鍗曚綅锛�
+        double angle = 45;
+
+        // 缁欏畾璺濈
+        double distance = 1.414;
+
+        // 灏嗚搴﹁浆鎹负寮у害
+        double radians = Math.toRadians(angle);
+
+        // 璁$畻 B 鍧愭爣
+        double Bx = Ax + distance * Math.cos(radians);
+        double By = Ay + distance * Math.sin(radians);
+
+        // 杈撳嚭缁撴灉
+        System.out.println("鍧愭爣 B: (" + Bx + ", " + By + ")");
+    }
+
 }

--
Gitblit v1.9.3