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  |   71 +++++
 ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/mapper/ArdAlarmRadarMapper.java            |   66 ++++++
 ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/service/IArdAlarmRadarService.java         |   63 +++++
 ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/service/impl/ArdAlarmRadarServiceImpl.java |   93 ++++++++
 ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/ArdAlarmRadar.java                  |   73 ++++++
 ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarMapper.xml                             |  143 +++++++++++++
 ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/controller/ArdAlarmRadarController.java    |  105 +++++++++
 ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/controller/ArdAlarmTubeController.java      |    1 
 8 files changed, 607 insertions(+), 8 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 1bf8e38..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;
@@ -35,15 +37,8 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
-import java.io.UnsupportedEncodingException;
-import java.math.BigInteger;
-import java.nio.charset.Charset;
-import java.nio.charset.StandardCharsets;
-import java.text.DateFormat;
 import java.text.SimpleDateFormat;
 import java.util.*;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
 
@@ -57,6 +52,8 @@
 @Service
 @Slf4j(topic = "mqtt")
 public class GlobalAlarmServiceImpl implements IGlobalAlarmService {
+    @Resource
+    ArdAlarmRadarMapper ardAlarmRadarMapper;
     @Resource
     ArdAlarmStealelecMapper ardAlarmStealelecMapper;
     @Resource
@@ -118,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());
@@ -284,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());
@@ -373,6 +410,10 @@
         countMap.put("1001", count1001);
         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);
@@ -399,6 +440,22 @@
                 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);
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/controller/ArdAlarmRadarController.java b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/controller/ArdAlarmRadarController.java
new file mode 100644
index 0000000..0e9dd32
--- /dev/null
+++ b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/controller/ArdAlarmRadarController.java
@@ -0,0 +1,105 @@
+package com.ruoyi.alarm.radarAlarm.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.ruoyi.alarm.radarAlarm.domain.ArdAlarmRadar;
+import com.ruoyi.alarm.radarAlarm.service.IArdAlarmRadarService;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 闆疯揪鎶ヨController
+ * 
+ * @author ard
+ * @date 2023-06-28
+ */
+@RestController
+@RequestMapping("/alarm/radar")
+public class ArdAlarmRadarController extends BaseController
+{
+    @Autowired
+    private IArdAlarmRadarService ardAlarmRadarService;
+
+    /**
+     * 鏌ヨ闆疯揪鎶ヨ鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('alarm:radar:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(ArdAlarmRadar ardAlarmRadar)
+    {
+        startPage();
+        List<ArdAlarmRadar> list = ardAlarmRadarService.selectArdAlarmRadarList(ardAlarmRadar);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭闆疯揪鎶ヨ鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('alarm:radar:export')")
+    @Log(title = "闆疯揪鎶ヨ", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, ArdAlarmRadar ardAlarmRadar)
+    {
+        List<ArdAlarmRadar> list = ardAlarmRadarService.selectArdAlarmRadarList(ardAlarmRadar);
+        ExcelUtil<ArdAlarmRadar> util = new ExcelUtil<ArdAlarmRadar>(ArdAlarmRadar.class);
+        util.exportExcel(response, list, "闆疯揪鎶ヨ鏁版嵁");
+    }
+
+    /**
+     * 鑾峰彇闆疯揪鎶ヨ璇︾粏淇℃伅
+     */
+    @PreAuthorize("@ss.hasPermi('alarm:radar:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") String id)
+    {
+        return success(ardAlarmRadarService.selectArdAlarmRadarById(id));
+    }
+
+    /**
+     * 鏂板闆疯揪鎶ヨ
+     */
+    @PreAuthorize("@ss.hasPermi('alarm:radar:add')")
+    @Log(title = "闆疯揪鎶ヨ", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody ArdAlarmRadar ardAlarmRadar)
+    {
+        return toAjax(ardAlarmRadarService.insertArdAlarmRadar(ardAlarmRadar));
+    }
+
+    /**
+     * 淇敼闆疯揪鎶ヨ
+     */
+    @PreAuthorize("@ss.hasPermi('alarm:radar:edit')")
+    @Log(title = "闆疯揪鎶ヨ", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody ArdAlarmRadar ardAlarmRadar)
+    {
+        return toAjax(ardAlarmRadarService.updateArdAlarmRadar(ardAlarmRadar));
+    }
+
+    /**
+     * 鍒犻櫎闆疯揪鎶ヨ
+     */
+    @PreAuthorize("@ss.hasPermi('alarm:radar:remove')")
+    @Log(title = "闆疯揪鎶ヨ", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable String[] ids)
+    {
+        return toAjax(ardAlarmRadarService.deleteArdAlarmRadarByIds(ids));
+    }
+}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/ArdAlarmRadar.java b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/ArdAlarmRadar.java
new file mode 100644
index 0000000..9229d29
--- /dev/null
+++ b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/ArdAlarmRadar.java
@@ -0,0 +1,73 @@
+package com.ruoyi.alarm.radarAlarm.domain;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 闆疯揪鎶ヨ瀵硅薄 ard_alarm_radar
+ * 
+ * @author ard
+ * @date 2023-06-28
+ */
+@Data
+public class ArdAlarmRadar extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 鐢ㄦ埛ID */
+    @Excel(name = "鐢ㄦ埛ID")
+    private String userId;
+
+    /** 閮ㄩ棬ID */
+    @Excel(name = "閮ㄩ棬ID")
+    private Integer deptId;
+
+    /** 璁板綍ID */
+    private String id;
+
+    /** 鍏磋叮鐐瑰悕绉� */
+    @Excel(name = "鍏磋叮鐐瑰悕绉�")
+    private String name;
+
+    /** 鐩爣ID */
+    @Excel(name = "鐩爣ID")
+    private String targetId;
+
+    /** 鎶ヨ绫诲瀷 */
+    @Excel(name = "鎶ヨ绫诲瀷")
+    private String alarmType;
+
+    /** 鎶ヨ鏃堕棿 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "鎶ヨ鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+    private Date alarmTime;
+
+    /** 缁忓害 */
+    @Excel(name = "缁忓害")
+    private Double longitude;
+
+    /** 绾害 */
+    @Excel(name = "绾害")
+    private Double latitude;
+
+    /** 鏌ョ湅鏃堕棿 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "鏌ョ湅鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date viewTime;
+
+
+    /**
+     * 鎶ヨ鎬绘暟
+     */
+    private Integer total;
+    /**
+     * 鏈鎶ヨ鏁伴噺
+     */
+    private Integer count;
+
+}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/mapper/ArdAlarmRadarMapper.java b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/mapper/ArdAlarmRadarMapper.java
new file mode 100644
index 0000000..5f6d460
--- /dev/null
+++ b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/mapper/ArdAlarmRadarMapper.java
@@ -0,0 +1,66 @@
+package com.ruoyi.alarm.radarAlarm.mapper;
+
+import com.ruoyi.alarm.radarAlarm.domain.ArdAlarmRadar;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+
+/**
+ * 闆疯揪鎶ヨMapper鎺ュ彛
+ * 
+ * @author ard
+ * @date 2023-06-28
+ */
+public interface ArdAlarmRadarMapper 
+{
+    /**
+     * 鏌ヨ闆疯揪鎶ヨ
+     * 
+     * @param id 闆疯揪鎶ヨ涓婚敭
+     * @return 闆疯揪鎶ヨ
+     */
+    public ArdAlarmRadar selectArdAlarmRadarById(String id);
+
+    /**
+     * 鏌ヨ闆疯揪鎶ヨ鍒楄〃
+     * 
+     * @param ardAlarmRadar 闆疯揪鎶ヨ
+     * @return 闆疯揪鎶ヨ闆嗗悎
+     */
+    public List<ArdAlarmRadar> selectArdAlarmRadarList(ArdAlarmRadar ardAlarmRadar);
+
+    /**
+     * 鏂板闆疯揪鎶ヨ
+     * 
+     * @param ardAlarmRadar 闆疯揪鎶ヨ
+     * @return 缁撴灉
+     */
+    public int insertArdAlarmRadar(ArdAlarmRadar ardAlarmRadar);
+
+    /**
+     * 淇敼闆疯揪鎶ヨ
+     * 
+     * @param ardAlarmRadar 闆疯揪鎶ヨ
+     * @return 缁撴灉
+     */
+    public int updateArdAlarmRadar(ArdAlarmRadar ardAlarmRadar);
+
+    /**
+     * 鍒犻櫎闆疯揪鎶ヨ
+     * 
+     * @param id 闆疯揪鎶ヨ涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteArdAlarmRadarById(String id);
+
+    /**
+     * 鎵归噺鍒犻櫎闆疯揪鎶ヨ
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteArdAlarmRadarByIds(String[] ids);
+
+    public List<ArdAlarmRadar> selectListAllByCommand(@Param("refreshTime")String refreshTime,@Param("alarmType")String alarmType);
+    int selectCountByAlarmTime(@Param("refreshTime")String refreshTime,@Param("alarmType")String alarmType);
+}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/service/IArdAlarmRadarService.java b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/service/IArdAlarmRadarService.java
new file mode 100644
index 0000000..4b6b9ea
--- /dev/null
+++ b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/service/IArdAlarmRadarService.java
@@ -0,0 +1,63 @@
+package com.ruoyi.alarm.radarAlarm.service;
+
+import com.ruoyi.alarm.radarAlarm.domain.ArdAlarmRadar;
+
+import java.util.List;
+
+
+/**
+ * 闆疯揪鎶ヨService鎺ュ彛
+ * 
+ * @author ard
+ * @date 2023-06-28
+ */
+public interface IArdAlarmRadarService 
+{
+    /**
+     * 鏌ヨ闆疯揪鎶ヨ
+     * 
+     * @param id 闆疯揪鎶ヨ涓婚敭
+     * @return 闆疯揪鎶ヨ
+     */
+    public ArdAlarmRadar selectArdAlarmRadarById(String id);
+
+    /**
+     * 鏌ヨ闆疯揪鎶ヨ鍒楄〃
+     * 
+     * @param ardAlarmRadar 闆疯揪鎶ヨ
+     * @return 闆疯揪鎶ヨ闆嗗悎
+     */
+    public List<ArdAlarmRadar> selectArdAlarmRadarList(ArdAlarmRadar ardAlarmRadar);
+
+    /**
+     * 鏂板闆疯揪鎶ヨ
+     * 
+     * @param ardAlarmRadar 闆疯揪鎶ヨ
+     * @return 缁撴灉
+     */
+    public int insertArdAlarmRadar(ArdAlarmRadar ardAlarmRadar);
+
+    /**
+     * 淇敼闆疯揪鎶ヨ
+     * 
+     * @param ardAlarmRadar 闆疯揪鎶ヨ
+     * @return 缁撴灉
+     */
+    public int updateArdAlarmRadar(ArdAlarmRadar ardAlarmRadar);
+
+    /**
+     * 鎵归噺鍒犻櫎闆疯揪鎶ヨ
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑闆疯揪鎶ヨ涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteArdAlarmRadarByIds(String[] ids);
+
+    /**
+     * 鍒犻櫎闆疯揪鎶ヨ淇℃伅
+     * 
+     * @param id 闆疯揪鎶ヨ涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteArdAlarmRadarById(String id);
+}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/service/impl/ArdAlarmRadarServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/service/impl/ArdAlarmRadarServiceImpl.java
new file mode 100644
index 0000000..8b2f682
--- /dev/null
+++ b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/service/impl/ArdAlarmRadarServiceImpl.java
@@ -0,0 +1,93 @@
+package com.ruoyi.alarm.radarAlarm.service.impl;
+
+import java.util.List;
+
+import com.ruoyi.alarm.radarAlarm.domain.ArdAlarmRadar;
+import com.ruoyi.alarm.radarAlarm.mapper.ArdAlarmRadarMapper;
+import com.ruoyi.alarm.radarAlarm.service.IArdAlarmRadarService;
+import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.SecurityUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+
+/**
+ * 闆疯揪鎶ヨService涓氬姟灞傚鐞�
+ *
+ * @author ard
+ * @date 2023-06-28
+ */
+@Service
+public class ArdAlarmRadarServiceImpl implements IArdAlarmRadarService {
+    @Autowired
+    private ArdAlarmRadarMapper ardAlarmRadarMapper;
+
+    /**
+     * 鏌ヨ闆疯揪鎶ヨ
+     *
+     * @param id 闆疯揪鎶ヨ涓婚敭
+     * @return 闆疯揪鎶ヨ
+     */
+    @Override
+    public ArdAlarmRadar selectArdAlarmRadarById(String id) {
+        return ardAlarmRadarMapper.selectArdAlarmRadarById(id);
+    }
+
+    /**
+     * 鏌ヨ闆疯揪鎶ヨ鍒楄〃
+     *
+     * @param ardAlarmRadar 闆疯揪鎶ヨ
+     * @return 闆疯揪鎶ヨ
+     */
+    @Override
+    public List<ArdAlarmRadar> selectArdAlarmRadarList(ArdAlarmRadar ardAlarmRadar) {
+        return ardAlarmRadarMapper.selectArdAlarmRadarList(ardAlarmRadar);
+    }
+
+    /**
+     * 鏂板闆疯揪鎶ヨ
+     *
+     * @param ardAlarmRadar 闆疯揪鎶ヨ
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertArdAlarmRadar(ArdAlarmRadar ardAlarmRadar) {
+                ardAlarmRadar.setCreateBy(SecurityUtils.getUsername());
+                ardAlarmRadar.setCreateTime(DateUtils.getNowDate());
+                ardAlarmRadar.setUserId(SecurityUtils.getUserId());
+            return ardAlarmRadarMapper.insertArdAlarmRadar(ardAlarmRadar);
+    }
+
+    /**
+     * 淇敼闆疯揪鎶ヨ
+     *
+     * @param ardAlarmRadar 闆疯揪鎶ヨ
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateArdAlarmRadar(ArdAlarmRadar ardAlarmRadar) {
+        return ardAlarmRadarMapper.updateArdAlarmRadar(ardAlarmRadar);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎闆疯揪鎶ヨ
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑闆疯揪鎶ヨ涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteArdAlarmRadarByIds(String[] ids) {
+        return ardAlarmRadarMapper.deleteArdAlarmRadarByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎闆疯揪鎶ヨ淇℃伅
+     *
+     * @param id 闆疯揪鎶ヨ涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteArdAlarmRadarById(String id) {
+        return ardAlarmRadarMapper.deleteArdAlarmRadarById(id);
+    }
+}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/controller/ArdAlarmTubeController.java b/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/controller/ArdAlarmTubeController.java
index b7b7ec2..629e21e 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/controller/ArdAlarmTubeController.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/tubeAlarm/controller/ArdAlarmTubeController.java
@@ -41,7 +41,6 @@
      */
     @PreAuthorize("@ss.hasPermi('alarm:tubeAlarm:list')")
     @GetMapping("/list")
-    @ApiOperation("鏌ヨ绠$嚎娉勯湶鎶ヨ鍒楄〃")
     public TableDataInfo list(ArdAlarmTube ardAlarmTube)
     {
         startPage();
diff --git a/ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarMapper.xml b/ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarMapper.xml
new file mode 100644
index 0000000..1a98bc8
--- /dev/null
+++ b/ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarMapper.xml
@@ -0,0 +1,143 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.alarm.radarAlarm.mapper.ArdAlarmRadarMapper">
+    <resultMap type="ArdAlarmRadar" id="ArdAlarmRadarResult">
+        <result property="id" column="id"/>
+        <result property="name" column="name"/>
+        <result property="targetId" column="target_id"/>
+        <result property="alarmType" column="alarm_type"/>
+        <result property="alarmTime" column="alarm_time"/>
+        <result property="longitude" column="longitude"/>
+        <result property="latitude" column="latitude"/>
+        <result property="viewTime" column="view_time"/>
+        <result property="createBy" column="create_by"/>
+        <result property="createTime" column="create_time"/>
+        <result property="userId" column="user_id"/>
+        <result property="deptId" column="dept_id"/>
+    </resultMap>
+
+    <sql id="selectArdAlarmRadarVo">
+        select id,
+               name,
+               target_id,
+               alarm_type,
+               alarm_time,
+               longitude,
+               latitude,
+               view_time,
+               create_by,
+               create_time,
+               user_id,
+               dept_id
+        from ard_alarm_radar
+    </sql>
+
+    <select id="selectArdAlarmRadarList" parameterType="ArdAlarmRadar" resultMap="ArdAlarmRadarResult">
+        <include refid="selectArdAlarmRadarVo"/>
+        <where>
+            <if test="name != null  and name != ''">and name like '%'||#{name}||'%'</if>
+            <if test="alarmType != null  and alarmType != ''">and alarm_type = #{alarmType}</if>
+            <if test="deptId != null ">and dept_id = #{deptId}</if>
+        </where>
+    </select>
+
+    <select id="selectArdAlarmRadarById" parameterType="String" resultMap="ArdAlarmRadarResult">
+        <include refid="selectArdAlarmRadarVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertArdAlarmRadar" parameterType="ArdAlarmRadar">
+        insert into ard_alarm_radar
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="name != null">name,</if>
+            <if test="targetId != null">target_id,</if>
+            <if test="alarmType != null">alarm_type,</if>
+            <if test="alarmTime != null">alarm_time,</if>
+            <if test="longitude != null">longitude,</if>
+            <if test="latitude != null">latitude,</if>
+            <if test="viewTime != null">view_time,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="userId != null">user_id,</if>
+            <if test="deptId != null">dept_id,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="name != null">#{name},</if>
+            <if test="targetId != null">#{targetId},</if>
+            <if test="alarmType != null">#{alarmType},</if>
+            <if test="alarmTime != null">#{alarmTime},</if>
+            <if test="longitude != null">#{longitude},</if>
+            <if test="latitude != null">#{latitude},</if>
+            <if test="viewTime != null">#{viewTime},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="userId != null">#{userId},</if>
+            <if test="deptId != null">#{deptId},</if>
+        </trim>
+    </insert>
+
+    <update id="updateArdAlarmRadar" parameterType="ArdAlarmRadar">
+        update ard_alarm_radar
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="name != null">name = #{name},</if>
+            <if test="targetId != null">target_id = #{targetId},</if>
+            <if test="alarmType != null">alarm_type = #{alarmType},</if>
+            <if test="alarmTime != null">alarm_time = #{alarmTime},</if>
+            <if test="longitude != null">longitude = #{longitude},</if>
+            <if test="latitude != null">latitude = #{latitude},</if>
+            <if test="viewTime != null">view_time = #{viewTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="userId != null">user_id = #{userId},</if>
+            <if test="deptId != null">dept_id = #{deptId},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteArdAlarmRadarById" parameterType="String">
+        delete
+        from ard_alarm_radar
+        where id = #{id}
+    </delete>
+
+    <delete id="deleteArdAlarmRadarByIds" parameterType="String">
+        delete from ard_alarm_radar where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+
+    <select id="selectListAllByCommand" resultMap="ArdAlarmRadarResult">
+        SELECT T
+                   .*
+        FROM (
+                 SELECT aar.ID,
+                        aar.target_id,
+                        aar.NAME,
+                        aar.alarm_type,
+                        aar.alarm_time,
+                        aar.longitude,
+                        aar.latitude,
+                        ROW_NUMBER() OVER ( PARTITION BY aar.NAME ORDER BY aar.alarm_time DESC ) AS rn, COUNT(CASE WHEN aar.view_time IS NULL THEN 1 END) OVER ( PARTITION BY aar.NAME ) AS COUNT,
+		COUNT ( aar.alarm_time ) OVER ( PARTITION BY aar.NAME ) AS total
+                 FROM
+                     ard_alarm_radar aar
+                 WHERE
+                     aar.alarm_time >= ( CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE )
+                   AND aar.alarm_type = #{alarmType}
+                 ORDER BY
+                     aar.alarm_time DESC
+             ) T
+        WHERE T.rn = 1
+    </select>
+    <select id="selectCountByAlarmTime" resultType="Integer">
+        SELECT COUNT(DISTINCT aar.name)
+        FROM ard_alarm_radar aar
+        WHERE aar.alarm_time >= CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE
+          and aar.alarm_type = #{alarmType}
+    </select>
+</mapper>
\ No newline at end of file

--
Gitblit v1.9.3