‘liusuyi’
2023-09-02 636054d8d283b06802c05e0c15724c22637d8b30
将雷达报警分成3个表存储
已添加18个文件
已修改8个文件
2744 ■■■■■ 文件已修改
ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java 436 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/QueueTaskExecutor.java 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/controller/ArdAlarmRadarFireController.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/controller/ArdAlarmRadarMoveController.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/controller/ArdAlarmRadarPumpController.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/domain/ArdAlarmRadarFire.java 232 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/domain/ArdAlarmRadarMove.java 232 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/domain/ArdAlarmRadarPump.java 232 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/mapper/ArdAlarmRadarFireMapper.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/mapper/ArdAlarmRadarMoveMapper.java 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/mapper/ArdAlarmRadarPumpMapper.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/service/IArdAlarmRadarFireService.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/service/IArdAlarmRadarMoveService.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/service/IArdAlarmRadarPumpService.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/service/impl/ArdAlarmRadarFireServiceImpl.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/service/impl/ArdAlarmRadarMoveServiceImpl.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/radar/service/impl/ArdAlarmRadarPumpServiceImpl.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/wall/domain/ArdAlarmWall.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/wall/mapper/ArdAlarmWallMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/device/radar/mapper/ArdEquipRadarMapper.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarFireMapper.xml 152 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarMapper.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarMoveMapper.xml 156 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarPumpMapper.xml 152 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/resources/mapper/alarm/ArdAlarmWallMapper.xml 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/resources/mapper/device/ArdEquipRadarMapper.xml 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java
@@ -14,13 +14,17 @@
import com.ruoyi.alarm.global.domain.GuidePriorityQueue;
import com.ruoyi.alarm.global.domain.GuideTask;
import com.ruoyi.alarm.global.service.IGlobalAlarmService;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadar;
import com.ruoyi.alarm.radar.domain.RadarAlarmData;
import com.ruoyi.alarm.radar.domain.*;
import com.ruoyi.alarm.radar.mapper.ArdAlarmRadarFireMapper;
import com.ruoyi.alarm.radar.mapper.ArdAlarmRadarMapper;
import com.ruoyi.alarm.radar.mapper.ArdAlarmRadarMoveMapper;
import com.ruoyi.alarm.radar.mapper.ArdAlarmRadarPumpMapper;
import com.ruoyi.alarm.steal.domain.ArdAlarmStealelec;
import com.ruoyi.alarm.steal.mapper.ArdAlarmStealelecMapper;
import com.ruoyi.alarm.tube.domain.ArdAlarmTube;
import com.ruoyi.alarm.tube.mapper.ArdAlarmTubeMapper;
import com.ruoyi.alarm.wall.domain.ArdAlarmWall;
import com.ruoyi.alarm.wall.mapper.ArdAlarmWallMapper;
import com.ruoyi.alarmpoints.tube.domain.ArdTubes;
import com.ruoyi.alarmpoints.tube.domain.ArdTubesDetails;
import com.ruoyi.alarmpoints.tube.mapper.ArdTubesDetailsMapper;
@@ -34,6 +38,7 @@
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.device.external.domain.ArdEquipExternal;
import com.ruoyi.device.external.mapper.ArdEquipExternalMapper;
import com.ruoyi.device.radar.mapper.ArdEquipRadarMapper;
import com.ruoyi.utils.gis.GisUtil;
import com.ruoyi.utils.tools.ArdTool;
import com.ruoyi.common.utils.uuid.IdUtils;
@@ -65,6 +70,8 @@
public class GlobalAlarmServiceImpl implements IGlobalAlarmService {
    //region ä¾èµ–注入
    @Resource
    private ArdAlarmWallMapper ardAlarmWallMapper;
    @Resource
    private ArdAlarmApponekeyMapper ardAlarmApponekeyMapper;
    @Resource
    private ArdEquipExternalMapper ardEquipExternalMapper;
@@ -72,8 +79,14 @@
    private ArdAlarmAccessMapper ardAlarmAccessMapper;
    @Resource
    private ArdAlarmExternalMapper ardAlarmExternalMapper;
    //@Resource
    //private ArdAlarmRadarMapper ardAlarmRadarMapper;
    @Resource
    private ArdAlarmRadarMapper ardAlarmRadarMapper;
    private ArdAlarmRadarMoveMapper ardAlarmRadarMoveMapper;
    @Resource
    private ArdAlarmRadarFireMapper ardAlarmRadarFireMapper;
    @Resource
    private ArdAlarmRadarPumpMapper ardAlarmRadarPumpMapper;
    @Resource
    private ArdAlarmStealelecMapper ardAlarmStealelecMapper;
    @Resource
@@ -94,10 +107,13 @@
    private RedisCache redisCache;
    @Resource
    private QueueManager queueManager;
    @Resource
    private ArdEquipRadarMapper ardEquipRadarMapper;
    //endregion
    //每个点位未引导次数
    private Map<String, Integer> unGuideCountMap = new HashMap<>();
    private Map<String, Integer> unGuideCountMapMove = new HashMap<>();
    private Map<String, Integer> unGuideCountMapFire = new HashMap<>();
    private Map<String, Integer> unGuideCountMapPump = new HashMap<>();
    /**
     * @描述 æŸ¥è¯¢æ‰€æœ‰æŠ¥è­¦çš„当前数量
     * @参数 []
@@ -115,11 +131,11 @@
        countMap.put("1001", count1001);
        int count1002 = ardAlarmCameraMapper.selectCountByAlarmTime(refreshTime);
        countMap.put("1002", count1002);
        int count1003 = ardAlarmRadarMapper.selectCountByAlarmTime(refreshTime, "运动目标检测");
        int count1003 = ardAlarmRadarMoveMapper.selectCountByAlarmTime(refreshTime);
        countMap.put("1003", count1003);
        int count1004 = ardAlarmRadarMapper.selectCountByAlarmTime(refreshTime, "热源检测");
        int count1004 = ardAlarmRadarFireMapper.selectCountByAlarmTime(refreshTime);
        countMap.put("1004", count1004);
        int count1007 = ardAlarmRadarMapper.selectCountByAlarmTime(refreshTime, "雷达抽油机停机");
        int count1007 = ardAlarmRadarPumpMapper.selectCountByAlarmTime(refreshTime);
        countMap.put("1007", count1007);
        int count1005 = ardAlarmExternalMapper.selectCountByAlarmTime(refreshTime, "防区报警");
        countMap.put("1005", count1005);
@@ -127,6 +143,8 @@
        countMap.put("1006", count1006);
        int count1009 = ardAlarmApponekeyMapper.selectCountByAlarmTime(refreshTime);
        countMap.put("1009", count1009);
        int count1010 = ardAlarmWallMapper.selectCountByAlarmTime(refreshTime);
        countMap.put("1010", count1010);
        int count1014 = ardAlarmTubeMapper.selectCountByAlarmTime(refreshTime);
        countMap.put("1014", count1014);
        map.put("20000", countMap);
@@ -175,8 +193,8 @@
                            return globalAlarmData;
                        }).collect(Collectors.toList());
            case 1003:
                List<ArdAlarmRadar> ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime, "运动目标检测");
                return ardAlarmRadars.stream()
                List<ArdAlarmRadarMove> ardAlarmRadarMoves = ardAlarmRadarMoveMapper.selectListAllByCommand(refreshTime);
                return ardAlarmRadarMoves.stream()
                        .map(ardAlarmRadar -> {
                            GlobalAlarmData globalAlarmData = new GlobalAlarmData()
                                    .setId(ardAlarmRadar.getId())
@@ -189,8 +207,8 @@
                            return globalAlarmData;
                        }).collect(Collectors.toList());
            case 1004:
                ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime, "热源检测");
                return ardAlarmRadars.stream()
                List<ArdAlarmRadarFire> ardAlarmRadarFires = ardAlarmRadarFireMapper.selectListAllByCommand(refreshTime);
                return ardAlarmRadarFires.stream()
                        .map(ardAlarmRadar -> {
                            GlobalAlarmData globalAlarmData = new GlobalAlarmData()
                                    .setId(ardAlarmRadar.getId())
@@ -231,8 +249,8 @@
                            return globalAlarmData;
                        }).collect(Collectors.toList());
            case 1007:
                ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime, "雷达抽油机停机");
                return ardAlarmRadars.stream()
                List<ArdAlarmRadarPump> ardAlarmRadarPumps = ardAlarmRadarPumpMapper.selectListAllByCommand(refreshTime);
                return ardAlarmRadarPumps.stream()
                        .map(ardAlarmRadar -> {
                            GlobalAlarmData globalAlarmData = new GlobalAlarmData()
                                    .setId(ardAlarmRadar.getId())
@@ -256,6 +274,20 @@
                                    .setLatitude(ardAlarmApponekey.getLatitude())
                                    .setCount(ardAlarmApponekey.getCount())
                                    .setTotal(ardAlarmApponekey.getTotal());
                            return globalAlarmData;
                        }).collect(Collectors.toList());
            case 1010:
                List<ArdAlarmWall> ardAlarmWalls = ardAlarmWallMapper.selectListAllByCommand(refreshTime);
                return ardAlarmWalls.stream()
                        .map(ardAlarmWall -> {
                            GlobalAlarmData globalAlarmData = new GlobalAlarmData()
                                    .setId(ardAlarmWall.getId())
                                    .setName(ardAlarmWall.getWallName())
                                    .setAlarmTime(ardAlarmWall.getCreateTime())
                                    .setLongitude(ardAlarmWall.getLongitude())
                                    .setLatitude(ardAlarmWall.getLatitude())
                                    .setCount(ardAlarmWall.getCount())
                                    .setTotal(ardAlarmWall.getTotal());
                            return globalAlarmData;
                        }).collect(Collectors.toList());
            case 1014:
@@ -319,8 +351,8 @@
            GlobalAlarmDataList.addAll(alarmData1002);
        }
        List<ArdAlarmRadar> ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime, "运动目标检测");
        List<GlobalAlarmData> alarmData1003= ardAlarmRadars.stream()
        List<ArdAlarmRadarMove> ardAlarmRadarMoves = ardAlarmRadarMoveMapper.selectListAllByCommand(refreshTime);
        List<GlobalAlarmData> alarmData1003= ardAlarmRadarMoves.stream()
                .map(ardAlarmRadar -> {
                    GlobalAlarmData globalAlarmData = new GlobalAlarmData()
                            .setId(ardAlarmRadar.getId())
@@ -337,8 +369,8 @@
            GlobalAlarmDataList.addAll(alarmData1003);
        }
        ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime, "热源检测");
        List<GlobalAlarmData> alarmData1004=  ardAlarmRadars.stream()
        List<ArdAlarmRadarFire> ardAlarmRadarFires = ardAlarmRadarFireMapper.selectListAllByCommand(refreshTime);
        List<GlobalAlarmData> alarmData1004=  ardAlarmRadarFires.stream()
                .map(ardAlarmRadar -> {
                    GlobalAlarmData globalAlarmData = new GlobalAlarmData()
                            .setId(ardAlarmRadar.getId())
@@ -391,8 +423,8 @@
            GlobalAlarmDataList.addAll(alarmData1006);
        }
        ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime, "雷达抽油机停机");
        List<GlobalAlarmData> alarmData1007= ardAlarmRadars.stream()
        List<ArdAlarmRadarPump> ardAlarmRadarPumps = ardAlarmRadarPumpMapper.selectListAllByCommand(refreshTime);
        List<GlobalAlarmData> alarmData1007= ardAlarmRadarPumps.stream()
                .map(ardAlarmRadar -> {
                    GlobalAlarmData globalAlarmData = new GlobalAlarmData()
                            .setId(ardAlarmRadar.getId())
@@ -425,6 +457,24 @@
                }).collect(Collectors.toList());
        if(alarmData1009.size()>0) {
            GlobalAlarmDataList.addAll(alarmData1009);
        }
        List<ArdAlarmWall> ardAlarmWalls = ardAlarmWallMapper.selectListAllByCommand(refreshTime);
        List<GlobalAlarmData> alarmData1010= ardAlarmWalls.stream()
                .map(ardAlarmWall -> {
                    GlobalAlarmData globalAlarmData = new GlobalAlarmData()
                            .setId(ardAlarmWall.getId())
                            .setName(ardAlarmWall.getWallName())
                            .setAlarmTime(ardAlarmWall.getCreateTime())
                            .setLongitude(ardAlarmWall.getLongitude())
                            .setLatitude(ardAlarmWall.getLatitude())
                            .setCount(ardAlarmWall.getCount())
                            .setTotal(ardAlarmWall.getTotal())
                            .setAlarmType("1010");
                    return globalAlarmData;
                }).collect(Collectors.toList());
        if(alarmData1010.size()>0) {
            GlobalAlarmDataList.addAll(alarmData1010);
        }
        List<ArdAlarmTube> ardAlarmTubes = ardAlarmTubeMapper.selectListAllByCommand(refreshTime);
@@ -475,26 +525,26 @@
                aac.setPageSize(pageSize);
                return ardAlarmCameraMapper.selectArdAlarmCameraList(aac);
            case 1003:
                ArdAlarmRadar aar = new ArdAlarmRadar();
                aar.setParams(params);
                aar.setPageNum(pageNum);
                aar.setPageSize(pageSize);
                aar.setAlarmType("运动目标检测");
                return ardAlarmRadarMapper.selectArdAlarmRadarList(aar);
                ArdAlarmRadarMove aarm = new ArdAlarmRadarMove();
                aarm.setParams(params);
                aarm.setPageNum(pageNum);
                aarm.setPageSize(pageSize);
                aarm.setAlarmType("运动目标检测");
                return ardAlarmRadarMoveMapper.selectArdAlarmRadarMoveList(aarm);
            case 1004:
                ArdAlarmRadar aarr = new ArdAlarmRadar();
                aarr.setParams(params);
                aarr.setPageNum(pageNum);
                aarr.setPageSize(pageSize);
                aarr.setAlarmType("热源检测");
                return ardAlarmRadarMapper.selectArdAlarmRadarList(aarr);
                ArdAlarmRadarFire aarf = new ArdAlarmRadarFire();
                aarf.setParams(params);
                aarf.setPageNum(pageNum);
                aarf.setPageSize(pageSize);
                aarf.setAlarmType("热源检测");
                return ardAlarmRadarFireMapper.selectArdAlarmRadarFireList(aarf);
            case 1007:
                ArdAlarmRadar aarrr = new ArdAlarmRadar();
                aarrr.setParams(params);
                aarrr.setPageNum(pageNum);
                aarrr.setPageSize(pageSize);
                aarrr.setAlarmType("雷达抽油机停机");
                return ardAlarmRadarMapper.selectArdAlarmRadarList(aarrr);
                ArdAlarmRadarPump aarp = new ArdAlarmRadarPump();
                aarp.setParams(params);
                aarp.setPageNum(pageNum);
                aarp.setPageSize(pageSize);
                aarp.setAlarmType("雷达抽油机停机");
                return ardAlarmRadarPumpMapper.selectArdAlarmRadarPumpList(aarp);
            case 1005:
                ArdAlarmExternal aae = new ArdAlarmExternal();
                aae.setParams(params);
@@ -515,6 +565,12 @@
                aaak.setPageNum(pageNum);
                aaak.setPageSize(pageSize);
                return ardAlarmApponekeyMapper.selectArdAlarmApponekeyList(aaak);
            case 1010:
                ArdAlarmWall aaw = new ArdAlarmWall();
                aaw.setParams(params);
                aaw.setPageNum(pageNum);
                aaw.setPageSize(pageSize);
                return ardAlarmWallMapper.selectArdAlarmWallList(aaw);
            case 1014:
                ArdAlarmTube aat = new ArdAlarmTube();
                aat.setParams(params);
@@ -554,15 +610,28 @@
                    return ardAlarmCamera;
                }
            case 1003:
                ArdAlarmRadarMove ardAlarmRadarMove = ardAlarmRadarMoveMapper.selectArdAlarmRadarMoveById(condition.getId());
                if (StringUtils.isNotNull(ardAlarmRadarMove)) {
                    String name = ardAlarmRadarMove.getName();
                    String alarmTime = fmt.format(ardAlarmRadarMove.getAlarmTime());
                    ardAlarmRadarMoveMapper.updateViewTimeByCondition(name, alarmTime, DateUtils.getTime());
                    return ardAlarmRadarMove;
                }
            case 1004:
                ArdAlarmRadarFire ardAlarmRadarFire = ardAlarmRadarFireMapper.selectArdAlarmRadarFireById(condition.getId());
                if (StringUtils.isNotNull(ardAlarmRadarFire)) {
                    String name = ardAlarmRadarFire.getName();
                    String alarmTime = fmt.format(ardAlarmRadarFire.getAlarmTime());
                    ardAlarmRadarFireMapper.updateViewTimeByCondition(name, alarmTime, DateUtils.getTime());
                    return ardAlarmRadarFire;
                }
            case 1007:
                ArdAlarmRadar ardAlarmRadar = ardAlarmRadarMapper.selectArdAlarmRadarById(condition.getId());
                if (StringUtils.isNotNull(ardAlarmRadar)) {
                    String name = ardAlarmRadar.getName();
                    String alarmType = ardAlarmRadar.getAlarmType();
                    String alarmTime = fmt.format(ardAlarmRadar.getAlarmTime());
                    ardAlarmRadarMapper.updateViewTimeByCondition(name, alarmType, alarmTime, DateUtils.getTime());
                    return ardAlarmRadar;
                ArdAlarmRadarPump ardAlarmRadarPump = ardAlarmRadarPumpMapper.selectArdAlarmRadarPumpById(condition.getId());
                if (StringUtils.isNotNull(ardAlarmRadarPump)) {
                    String name = ardAlarmRadarPump.getName();
                    String alarmTime = fmt.format(ardAlarmRadarPump.getAlarmTime());
                    ardAlarmRadarPumpMapper.updateViewTimeByCondition(name, alarmTime, DateUtils.getTime());
                    return ardAlarmRadarPump;
                }
            case 1005:
                ArdAlarmExternal ardAlarmExternal = ardAlarmExternalMapper.selectArdAlarmExternalById(condition.getId());
@@ -588,6 +657,14 @@
                    String alarmTime = fmt.format(ardAlarmApponekey.getCreateTime());
                    ardAlarmApponekeyMapper.updateViewTimeByUserId(userId, alarmTime, DateUtils.getTime());
                    return ardAlarmApponekey;
                }
            case 1010:
                ArdAlarmWall ardAlarmWall = ardAlarmWallMapper.selectArdAlarmWallById(condition.getId());
                if (StringUtils.isNotNull(ardAlarmWall)) {
                    String userId = ardAlarmWall.getUserId();
                    String alarmTime = fmt.format(ardAlarmWall.getCreateTime());
                    ardAlarmWallMapper.updateViewTimeByUserId(userId, alarmTime, DateUtils.getTime());
                    return ardAlarmWall;
                }
            case 1014:
                ArdAlarmTube ardAlarmTube = ardAlarmTubeMapper.selectArdAlarmTubeById(condition.getId());
@@ -682,81 +759,69 @@
                    //region å¤„理雷达报警
                    RadarAlarmData radarAlarmData = JSONObject.parseObject(message, RadarAlarmData.class);
                    List<ArdAlarmRadar> ardAlarmRadars = radarAlarmData.getArdAlarmRadars();
                    List<ArdAlarmRadarMove>ardAlarmRadarMoves=new ArrayList<>();
                    List<ArdAlarmRadarFire>ardAlarmRadarFires=new ArrayList<>();
                    List<ArdAlarmRadarPump>ardAlarmRadarPumps=new ArrayList<>();
                    for (ArdAlarmRadar ardAlarmRadar : ardAlarmRadars) {
                        String uuid = IdUtils.simpleUUID();
                        ardAlarmRadar.setId(uuid);//报警ID
                        ardAlarmRadar.setAlarmTime(radarAlarmData.getAlarmTime());//报警时间
                        String alarmpointName = ardAlarmRadar.getName();//兴趣点名称
                        ardAlarmRadar.setName(ardAlarmRadar.getName() + "(" + radarAlarmData.getRadarName() + ")");//报警点名称
                        ardAlarmRadar.setCreateTime(new Date());//接收时间
                        Double longitude = ardAlarmRadar.getLongitude();
                        Double latitude = ardAlarmRadar.getLatitude();
                        String targetId=ardAlarmRadar.getTargetId();
                        switch (ardAlarmRadar.getAlarmType()) {
                            case "运动目标检测":
                                String alarmType = "sys_radar_move";
                                ArdAlarmRadarMove ardAlarmRadarMove=new ArdAlarmRadarMove();
                                ardAlarmRadarMove.setId(uuid);
                                ardAlarmRadarMove.setTargetId(targetId);
                                ardAlarmRadarMove.setAlarmTime(radarAlarmData.getAlarmTime());
                                ardAlarmRadarMove.setCreateTime(new Date());
                                ardAlarmRadarMove.setName(alarmpointName + "(" + radarAlarmData.getRadarName() + ")");
                                ardAlarmRadarMove.setAlarmType("sys_radar_move");
                                ardAlarmRadarMove.setLongitude(longitude);
                                ardAlarmRadarMove.setLatitude(latitude);
                                //入库
                                ardAlarmRadarMoveMapper.insertArdAlarmRadarMove(ardAlarmRadarMove);
                                ardAlarmRadarMoves.add(ardAlarmRadarMove);
                                break;
                            case "热源检测":
                                alarmType = "sys_radar_fire";
                                ArdAlarmRadarFire ardAlarmRadarFire=new ArdAlarmRadarFire();
                                ardAlarmRadarFire.setId(uuid);
                                ardAlarmRadarFire.setTargetId(targetId);
                                ardAlarmRadarFire.setAlarmTime(radarAlarmData.getAlarmTime());
                                ardAlarmRadarFire.setCreateTime(new Date());
                                ardAlarmRadarFire.setName(alarmpointName + "(" + radarAlarmData.getRadarName() + ")");
                                ardAlarmRadarFire.setAlarmType("sys_radar_fire");
                                ardAlarmRadarFire.setLongitude(longitude);
                                ardAlarmRadarFire.setLatitude(latitude);
                                //入库
                                ardAlarmRadarFireMapper.insertArdAlarmRadarFire(ardAlarmRadarFire);
                                ardAlarmRadarFires.add(ardAlarmRadarFire);
                                break;
                            case "雷达抽油机停机":
                                alarmType = "sys_radar_pumpshutdown";
                                ArdAlarmRadarPump ardAlarmRadarPump=new ArdAlarmRadarPump();
                                ardAlarmRadarPump.setId(uuid);
                                ardAlarmRadarPump.setTargetId(targetId);
                                ardAlarmRadarPump.setAlarmTime(radarAlarmData.getAlarmTime());
                                ardAlarmRadarPump.setCreateTime(new Date());
                                ardAlarmRadarPump.setName(ardAlarmRadar.getName() + "(" + radarAlarmData.getRadarName() + ")");
                                ardAlarmRadarPump.setAlarmType("sys_radar_pump");
                                ArdAlarmpointsWell ardAlarmpointsWell = ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(alarmpointName);
                                if (StringUtils.isNotNull(ardAlarmpointsWell)) {
                                    ardAlarmRadar.setLongitude(ardAlarmpointsWell.getLongitude());
                                    ardAlarmRadar.setLatitude(ardAlarmpointsWell.getLatitude());
                                }
                                break;
                                    ardAlarmRadarPump.setLongitude(ardAlarmpointsWell.getLongitude());
                                    ardAlarmRadarPump.setLatitude(ardAlarmpointsWell.getLatitude());
                        }
                        //入库
                        ardAlarmRadarMapper.insertArdAlarmRadar(ardAlarmRadar);
                                ardAlarmRadarPumpMapper.insertArdAlarmRadarPump(ardAlarmRadarPump);
                                ardAlarmRadarPumps.add(ardAlarmRadarPump);
                    }
                    //按兴趣点去重,然后按引导逻辑进行引导入队
                    ardAlarmRadars = ardAlarmRadars.stream()
                            .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new java.util.TreeSet<>(java.util.Comparator.comparing(ArdAlarmRadar::getName))), ArrayList::new));
                    for (ArdAlarmRadar ardAlarmRadar : ardAlarmRadars) {
                        //遍历报警数据进行引导
                        if (StringUtils.isNull(ardAlarmRadar.getLongitude()) || StringUtils.isNull(ardAlarmRadar.getLatitude())) {
                            //坐标为空不引导
                            continue;
                        }
                        double[] coordinate = new double[]{ardAlarmRadar.getLongitude(), ardAlarmRadar.getLatitude()};//报警坐标
                        //从redis中取出当前报警点的5分钟内是否有引导
                        ArdAlarmRadar AlarmRadar = redisCache.getCacheObject("global_alarm:" + ardAlarmRadar.getName());//从redis中取出最新引导的报警数据
                        if (AlarmRadar == null) {
                            //5分钟内redis中没有数据,说明5分钟内没有引导数据
                            ardAlarmRadar.setGuideFlag(1);
                            //将引导数据写入redis è®¾ç½®5分钟过期
                            redisCache.setCacheObject("global_alarm:" + ardAlarmRadar.getName(), ardAlarmRadar, 5, TimeUnit.MINUTES);//引导数据写入redis
                            unGuideCountMap.put(ardAlarmRadar.getName(), 0);
                            //引导入队
                            radarGuide(radarAlarmData.getRadarId(), ardAlarmRadar.getName(), ardAlarmRadar.getAlarmType(), ardAlarmRadar.getCreateTime(), coordinate);
                        } else {
                            //5分钟内redis中有数据,说明5分钟内有引导数据,获取当前报警点的未引导次数
                            Integer count = unGuideCountMap.get(ardAlarmRadar.getName());
                            if (count != null) {
                                if (count > 2) {
                                    //未引导次数3次后进行引导
                                    ardAlarmRadar.setGuideFlag(1);
                                    //将引导数据写入redis è®¾ç½®5分钟过期
                                    redisCache.setCacheObject("global_alarm:" + ardAlarmRadar.getName(), ardAlarmRadar, 5, TimeUnit.MINUTES);
                                    count = 0;
                                    //引导入队
                                    radarGuide(radarAlarmData.getRadarId(), ardAlarmRadar.getName(), ardAlarmRadar.getAlarmType(), ardAlarmRadar.getCreateTime(), coordinate);
                                } else {
                                    ardAlarmRadar.setGuideFlag(0);
                                    count++;
                                }
                            } else {
                                ardAlarmRadar.setGuideFlag(0);
                                count = 0;
                            }
                            unGuideCountMap.put(ardAlarmRadar.getName(), count);
                            //更新
                            ardAlarmRadarMapper.updateArdAlarmRadar(ardAlarmRadar);
                                break;
                        }
                    }
                    //endregion
                    radarMoveGuide(ardAlarmRadarMoves,radarAlarmData);
                    radarFireGuide(ardAlarmRadarFires,radarAlarmData);
                    radarPumpGuide(ardAlarmRadarPumps,radarAlarmData);
                    break;
                case "external":
                    //region å¤„理外联报警
@@ -945,14 +1010,15 @@
    /**
     * é›·è¾¾å¼•导入队
     */
    private void radarGuide(String radarId, String alarmpointName, String alarmType, Date createTime, double[] coordinate) {
        String uuid = IdUtils.simpleUUID();
    private void radarGuideToQueue(String alarmId,String radarId, String name, String alarmType, Date createTime, double[] coordinate) {
        int index = name.indexOf("(");
        String alarmpointName = name.substring(0, index);
        //获取雷达所在塔上的大光电
        String cameraIdWithTower = ardAlarmRadarMapper.getCameraByRadar(radarId);
        String cameraIdWithTower = ardEquipRadarMapper.getCameraByRadar(radarId);
        if (StringUtils.isNotNull(cameraIdWithTower) && StringUtils.isNotEmpty(cameraIdWithTower)) {
            log.info("获取到雷达塔上的光电:" + cameraIdWithTower);
            //如果雷达塔上有光电
            messagesEnqueued(cameraIdWithTower, uuid, alarmType, createTime, 1, 1, coordinate);
            messagesEnqueued(cameraIdWithTower, alarmId, alarmType, createTime, 1, 1, coordinate);
        }
        //获取报警点关联的大光电
        ArdAlarmpointsWell ardAlarmpointsWell = ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(alarmpointName);
@@ -963,8 +1029,160 @@
            }
            log.info("获取到报警点关联的光电:" + cameraId);
            //如果报警点关联了光电
            messagesEnqueued(cameraId, uuid, alarmType, createTime, 1, 2, coordinate);
            messagesEnqueued(cameraId, alarmId, alarmType, createTime, 1, 2, coordinate);
        }
    }
    private void radarMoveGuide(List<ArdAlarmRadarMove> ardAlarmRadarMoves,RadarAlarmData radarAlarmData)
    {
        //按兴趣点去重,然后按引导逻辑进行引导入队
        ardAlarmRadarMoves = ardAlarmRadarMoves.stream()
                .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new java.util.TreeSet<>(java.util.Comparator.comparing(ArdAlarmRadarMove::getName))), ArrayList::new));
        for (ArdAlarmRadarMove ardAlarmRadarMove : ardAlarmRadarMoves) {
            //遍历报警数据进行引导
            if (StringUtils.isNull(ardAlarmRadarMove.getLongitude()) || StringUtils.isNull(ardAlarmRadarMove.getLatitude())) {
                //坐标为空不引导
                continue;
            }
            double[] coordinate = new double[]{ardAlarmRadarMove.getLongitude(), ardAlarmRadarMove.getLatitude()};//报警坐标
            //从redis中取出当前报警点的5分钟内是否有引导
            ArdAlarmRadarMove alarmRadarMove = redisCache.getCacheObject("global_move_alarm:" + ardAlarmRadarMove.getName());//从redis中取出最新引导的报警数据
            if (alarmRadarMove == null) {
                //5分钟内redis中没有数据,说明5分钟内没有引导数据
                ardAlarmRadarMove.setGuideFlag(1);
                //将引导数据写入redis è®¾ç½®5分钟过期
                redisCache.setCacheObject("global_move_alarm:" + ardAlarmRadarMove.getName(), ardAlarmRadarMove, 5, TimeUnit.MINUTES);//引导数据写入redis
                unGuideCountMapMove.put(ardAlarmRadarMove.getName(), 0);
                //引导入队
                radarGuideToQueue(ardAlarmRadarMove.getId(),radarAlarmData.getRadarId(), ardAlarmRadarMove.getName(), ardAlarmRadarMove.getAlarmType(), ardAlarmRadarMove.getCreateTime(), coordinate);//更新
            } else {
                //5分钟内redis中有数据,说明5分钟内有引导数据,获取当前报警点的未引导次数
                Integer count = unGuideCountMapMove.get(ardAlarmRadarMove.getName());
                if (count != null) {
                    if (count > 2) {
                        //未引导次数3次后进行引导
                        ardAlarmRadarMove.setGuideFlag(1);
                        //将引导数据写入redis è®¾ç½®5分钟过期
                        redisCache.setCacheObject("global_move_alarm:" + ardAlarmRadarMove.getName(), ardAlarmRadarMove, 5, TimeUnit.MINUTES);
                        count = 0;
                        //引导入队
                        radarGuideToQueue(ardAlarmRadarMove.getId(),radarAlarmData.getRadarId(), ardAlarmRadarMove.getName(), ardAlarmRadarMove.getAlarmType(), ardAlarmRadarMove.getCreateTime(), coordinate);
                    } else {
                        ardAlarmRadarMove.setGuideFlag(0);
                        count++;
                    }
                } else {
                    ardAlarmRadarMove.setGuideFlag(0);
                    count = 0;
                }
                unGuideCountMapMove.put(ardAlarmRadarMove.getName(), count);
            }
            //更新
            ardAlarmRadarMoveMapper.updateArdAlarmRadarMove(ardAlarmRadarMove);
        }
        //endregion
    }
    private void radarFireGuide(List<ArdAlarmRadarFire> ardAlarmRadarFires,RadarAlarmData radarAlarmData)
    {
        //按兴趣点去重,然后按引导逻辑进行引导入队
        ardAlarmRadarFires = ardAlarmRadarFires.stream()
                .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new java.util.TreeSet<>(java.util.Comparator.comparing(ArdAlarmRadarFire::getName))), ArrayList::new));
        for (ArdAlarmRadarFire ardAlarmRadarFire : ardAlarmRadarFires) {
            //遍历报警数据进行引导
            if (StringUtils.isNull(ardAlarmRadarFire.getLongitude()) || StringUtils.isNull(ardAlarmRadarFire.getLatitude())) {
                //坐标为空不引导
                continue;
            }
            double[] coordinate = new double[]{ardAlarmRadarFire.getLongitude(), ardAlarmRadarFire.getLatitude()};//报警坐标
            //从redis中取出当前报警点的5分钟内是否有引导
            ArdAlarmRadarFire alarmRadarFire = redisCache.getCacheObject("global_fire_alarm:" + ardAlarmRadarFire.getName());//从redis中取出最新引导的报警数据
            if (alarmRadarFire == null) {
                //5分钟内redis中没有数据,说明5分钟内没有引导数据
                ardAlarmRadarFire.setGuideFlag(1);
                //将引导数据写入redis è®¾ç½®5分钟过期
                redisCache.setCacheObject("global_fire_alarm:" + ardAlarmRadarFire.getName(), ardAlarmRadarFire, 5, TimeUnit.MINUTES);//引导数据写入redis
                unGuideCountMapFire.put(alarmRadarFire.getName(), 0);
                //引导入队
                radarGuideToQueue(ardAlarmRadarFire.getId(),radarAlarmData.getRadarId(), ardAlarmRadarFire.getName(), ardAlarmRadarFire.getAlarmType(), ardAlarmRadarFire.getCreateTime(), coordinate);
            } else {
                //5分钟内redis中有数据,说明5分钟内有引导数据,获取当前报警点的未引导次数
                Integer count = unGuideCountMapFire.get(alarmRadarFire.getName());
                if (count != null) {
                    if (count > 2) {
                        //未引导次数3次后进行引导
                        ardAlarmRadarFire.setGuideFlag(1);
                        //将引导数据写入redis è®¾ç½®5分钟过期
                        redisCache.setCacheObject("global_fire_alarm:" + ardAlarmRadarFire.getName(), ardAlarmRadarFire, 5, TimeUnit.MINUTES);
                        count = 0;
                        //引导入队
                        radarGuideToQueue(ardAlarmRadarFire.getId(),radarAlarmData.getRadarId(), ardAlarmRadarFire.getName(), ardAlarmRadarFire.getAlarmType(), ardAlarmRadarFire.getCreateTime(), coordinate);
                    } else {
                        ardAlarmRadarFire.setGuideFlag(0);
                        count++;
                    }
                } else {
                    ardAlarmRadarFire.setGuideFlag(0);
                    count = 0;
                }
                unGuideCountMapFire.put(ardAlarmRadarFire.getName(), count);
            }
            //更新
            ardAlarmRadarFireMapper.updateArdAlarmRadarFire(ardAlarmRadarFire);
        }
        //endregion
    }
    private void radarPumpGuide(List<ArdAlarmRadarPump> ardAlarmRadarPumps,RadarAlarmData radarAlarmData)
    {
        //按兴趣点去重,然后按引导逻辑进行引导入队
        ardAlarmRadarPumps = ardAlarmRadarPumps.stream()
                .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new java.util.TreeSet<>(java.util.Comparator.comparing(ArdAlarmRadarPump::getName))), ArrayList::new));
        for (ArdAlarmRadarPump ardAlarmRadarPump : ardAlarmRadarPumps) {
            //遍历报警数据进行引导
            if (StringUtils.isNull(ardAlarmRadarPump.getLongitude()) || StringUtils.isNull(ardAlarmRadarPump.getLatitude())) {
                //坐标为空不引导
                continue;
            }
            double[] coordinate = new double[]{ardAlarmRadarPump.getLongitude(), ardAlarmRadarPump.getLatitude()};//报警坐标
            //从redis中取出当前报警点的5分钟内是否有引导
            ArdAlarmRadarPump alarmRadarPump = redisCache.getCacheObject("global_pump_alarm:" + ardAlarmRadarPump.getName());//从redis中取出最新引导的报警数据
            if (alarmRadarPump == null) {
                //5分钟内redis中没有数据,说明5分钟内没有引导数据
                ardAlarmRadarPump.setGuideFlag(1);
                //将引导数据写入redis è®¾ç½®5分钟过期
                redisCache.setCacheObject("global_pump_alarm:" + ardAlarmRadarPump.getName(), ardAlarmRadarPump, 5, TimeUnit.MINUTES);//引导数据写入redis
                unGuideCountMapPump.put(alarmRadarPump.getName(), 0);
                //引导入队
                radarGuideToQueue(ardAlarmRadarPump.getId(),radarAlarmData.getRadarId(), ardAlarmRadarPump.getName(), ardAlarmRadarPump.getAlarmType(), ardAlarmRadarPump.getCreateTime(), coordinate);
            } else {
                //5分钟内redis中有数据,说明5分钟内有引导数据,获取当前报警点的未引导次数
                Integer count = unGuideCountMapPump.get(ardAlarmRadarPump.getName());
                if (count != null) {
                    if (count > 2) {
                        //未引导次数3次后进行引导
                        ardAlarmRadarPump.setGuideFlag(1);
                        //将引导数据写入redis è®¾ç½®5分钟过期
                        redisCache.setCacheObject("global_pump_alarm:" + ardAlarmRadarPump.getName(), ardAlarmRadarPump, 5, TimeUnit.MINUTES);
                        count = 0;
                        //引导入队
                        radarGuideToQueue(ardAlarmRadarPump.getId(),radarAlarmData.getRadarId(), ardAlarmRadarPump.getName(), ardAlarmRadarPump.getAlarmType(), ardAlarmRadarPump.getCreateTime(), coordinate);
                    } else {
                        ardAlarmRadarPump.setGuideFlag(0);
                        count++;
                    }
                } else {
                    ardAlarmRadarPump.setGuideFlag(0);
                    count = 0;
                }
                unGuideCountMapPump.put(ardAlarmRadarPump.getName(), count);
            }
            //更新
            ardAlarmRadarPumpMapper.updateArdAlarmRadarPump(ardAlarmRadarPump);
        }
        //endregion
    }
}
ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/QueueTaskExecutor.java
@@ -6,6 +6,12 @@
import com.ruoyi.alarm.external.service.IArdAlarmExternalService;
import com.ruoyi.alarm.global.domain.GuideTask;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadar;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarFire;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarMove;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarPump;
import com.ruoyi.alarm.radar.service.IArdAlarmRadarFireService;
import com.ruoyi.alarm.radar.service.IArdAlarmRadarMoveService;
import com.ruoyi.alarm.radar.service.IArdAlarmRadarPumpService;
import com.ruoyi.alarm.radar.service.IArdAlarmRadarService;
import com.ruoyi.alarm.tube.domain.ArdAlarmTube;
import com.ruoyi.alarm.tube.service.IArdAlarmTubeService;
@@ -29,11 +35,16 @@
@Slf4j(topic = "guideQueue")
public class QueueTaskExecutor {
    @Resource
    IArdAlarmRadarMoveService ardAlarmRadarMoveService;
    @Resource
    IArdAlarmRadarFireService ardAlarmRadarFireService;
    @Resource
    IArdAlarmRadarPumpService ardAlarmRadarPumpService;
    @Resource
    IHikClientService hikClientService;
    @Resource
    IArdAlarmTubeService ardAlarmTubeService;
    @Resource
    IArdAlarmRadarService ardAlarmRadarService;
    @Resource
    IArdAlarmExternalService ardAlarmExternalService;
    @Resource
@@ -69,16 +80,33 @@
                            ardAlarmTubeService.updateArdAlarmTube(ardAlarmTube);
                            break;
                        case "sys_radar_move":
                        case "sys_radar_fire":
                        case "sys_radar_pumpshutdown":
                            ArdAlarmRadar ardAlarmRadar = new ArdAlarmRadar();
                            ardAlarmRadar.setId(guideTask.getAlarmId());
                            ArdAlarmRadarMove ardAlarmRadarMove = new ArdAlarmRadarMove();
                            ardAlarmRadarMove.setId(guideTask.getAlarmId());
                            if (guideTask.getRecordSn().equals(1)) {
                                ardAlarmRadar.setRecordUrl1(url);
                                ardAlarmRadarMove.setRecordUrl1(url);
                            } else {
                                ardAlarmRadar.setRecordUrl2(url);
                                ardAlarmRadarMove.setRecordUrl2(url);
                            }
                            ardAlarmRadarService.updateArdAlarmRadar(ardAlarmRadar);
                            ardAlarmRadarMoveService.updateArdAlarmRadarMove(ardAlarmRadarMove);
                            break;
                        case "sys_radar_fire":
                            ArdAlarmRadarFire ardAlarmRadarFire = new ArdAlarmRadarFire();
                            ardAlarmRadarFire.setId(guideTask.getAlarmId());
                            if (guideTask.getRecordSn().equals(1)) {
                                ardAlarmRadarFire.setRecordUrl1(url);
                            } else {
                                ardAlarmRadarFire.setRecordUrl2(url);
                            }
                            ardAlarmRadarFireService.updateArdAlarmRadarFire(ardAlarmRadarFire);
                        case "sys_radar_pump":
                            ArdAlarmRadarPump ardAlarmRadarPump = new ArdAlarmRadarPump();
                            ardAlarmRadarPump.setId(guideTask.getAlarmId());
                            if (guideTask.getRecordSn().equals(1)) {
                                ardAlarmRadarPump.setRecordUrl1(url);
                            } else {
                                ardAlarmRadarPump.setRecordUrl2(url);
                            }
                            ardAlarmRadarPumpService.updateArdAlarmRadarPump(ardAlarmRadarPump);
                            break;
                        case "sys_external":
                            ArdAlarmExternal ardAlarmExternal = new ArdAlarmExternal();
ard-work/src/main/java/com/ruoyi/alarm/radar/controller/ArdAlarmRadarFireController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,104 @@
package com.ruoyi.alarm.radar.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
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.alarm.radar.domain.ArdAlarmRadarFire;
import com.ruoyi.alarm.radar.service.IArdAlarmRadarFireService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
 * é›·è¾¾é˜²ç«æŠ¥è­¦Controller
 *
 * @author ard
 * @date 2023-09-02
 */
@RestController
@RequestMapping("/radar/fire")
public class ArdAlarmRadarFireController extends BaseController
{
    @Autowired
    private IArdAlarmRadarFireService ardAlarmRadarFireService;
    /**
     * æŸ¥è¯¢é›·è¾¾é˜²ç«æŠ¥è­¦åˆ—表
     */
    @PreAuthorize("@ss.hasPermi('radar:fire:list')")
    @GetMapping("/list")
    public TableDataInfo list(ArdAlarmRadarFire ardAlarmRadarFire)
    {
        startPage();
        List<ArdAlarmRadarFire> list = ardAlarmRadarFireService.selectArdAlarmRadarFireList(ardAlarmRadarFire);
        return getDataTable(list);
    }
    /**
     * å¯¼å‡ºé›·è¾¾é˜²ç«æŠ¥è­¦åˆ—表
     */
    @PreAuthorize("@ss.hasPermi('radar:fire:export')")
    @Log(title = "雷达防火报警", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, ArdAlarmRadarFire ardAlarmRadarFire)
    {
        List<ArdAlarmRadarFire> list = ardAlarmRadarFireService.selectArdAlarmRadarFireList(ardAlarmRadarFire);
        ExcelUtil<ArdAlarmRadarFire> util = new ExcelUtil<ArdAlarmRadarFire>(ArdAlarmRadarFire.class);
        util.exportExcel(response, list, "雷达防火报警数据");
    }
    /**
     * èŽ·å–é›·è¾¾é˜²ç«æŠ¥è­¦è¯¦ç»†ä¿¡æ¯
     */
    @PreAuthorize("@ss.hasPermi('radar:fire:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") String id)
    {
        return success(ardAlarmRadarFireService.selectArdAlarmRadarFireById(id));
    }
    /**
     * æ–°å¢žé›·è¾¾é˜²ç«æŠ¥è­¦
     */
    @PreAuthorize("@ss.hasPermi('radar:fire:add')")
    @Log(title = "雷达防火报警", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ArdAlarmRadarFire ardAlarmRadarFire)
    {
        return toAjax(ardAlarmRadarFireService.insertArdAlarmRadarFire(ardAlarmRadarFire));
    }
    /**
     * ä¿®æ”¹é›·è¾¾é˜²ç«æŠ¥è­¦
     */
    @PreAuthorize("@ss.hasPermi('radar:fire:edit')")
    @Log(title = "雷达防火报警", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody ArdAlarmRadarFire ardAlarmRadarFire)
    {
        return toAjax(ardAlarmRadarFireService.updateArdAlarmRadarFire(ardAlarmRadarFire));
    }
    /**
     * åˆ é™¤é›·è¾¾é˜²ç«æŠ¥è­¦
     */
    @PreAuthorize("@ss.hasPermi('radar:fire:remove')")
    @Log(title = "雷达防火报警", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable String[] ids)
    {
        return toAjax(ardAlarmRadarFireService.deleteArdAlarmRadarFireByIds(ids));
    }
}
ard-work/src/main/java/com/ruoyi/alarm/radar/controller/ArdAlarmRadarMoveController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,104 @@
package com.ruoyi.alarm.radar.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
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.alarm.radar.domain.ArdAlarmRadarMove;
import com.ruoyi.alarm.radar.service.IArdAlarmRadarMoveService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
 * é›·è¾¾ç§»åŠ¨æŠ¥è­¦Controller
 *
 * @author ard
 * @date 2023-09-02
 */
@RestController
@RequestMapping("/radar/move")
public class ArdAlarmRadarMoveController extends BaseController
{
    @Autowired
    private IArdAlarmRadarMoveService ardAlarmRadarMoveService;
    /**
     * æŸ¥è¯¢é›·è¾¾ç§»åŠ¨æŠ¥è­¦åˆ—è¡¨
     */
    @PreAuthorize("@ss.hasPermi('radar:move:list')")
    @GetMapping("/list")
    public TableDataInfo list(ArdAlarmRadarMove ardAlarmRadarMove)
    {
        startPage();
        List<ArdAlarmRadarMove> list = ardAlarmRadarMoveService.selectArdAlarmRadarMoveList(ardAlarmRadarMove);
        return getDataTable(list);
    }
    /**
     * å¯¼å‡ºé›·è¾¾ç§»åŠ¨æŠ¥è­¦åˆ—è¡¨
     */
    @PreAuthorize("@ss.hasPermi('radar:move:export')")
    @Log(title = "雷达移动报警", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, ArdAlarmRadarMove ardAlarmRadarMove)
    {
        List<ArdAlarmRadarMove> list = ardAlarmRadarMoveService.selectArdAlarmRadarMoveList(ardAlarmRadarMove);
        ExcelUtil<ArdAlarmRadarMove> util = new ExcelUtil<ArdAlarmRadarMove>(ArdAlarmRadarMove.class);
        util.exportExcel(response, list, "雷达移动报警数据");
    }
    /**
     * èŽ·å–é›·è¾¾ç§»åŠ¨æŠ¥è­¦è¯¦ç»†ä¿¡æ¯
     */
    @PreAuthorize("@ss.hasPermi('radar:move:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") String id)
    {
        return success(ardAlarmRadarMoveService.selectArdAlarmRadarMoveById(id));
    }
    /**
     * æ–°å¢žé›·è¾¾ç§»åŠ¨æŠ¥è­¦
     */
    @PreAuthorize("@ss.hasPermi('radar:move:add')")
    @Log(title = "雷达移动报警", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ArdAlarmRadarMove ardAlarmRadarMove)
    {
        return toAjax(ardAlarmRadarMoveService.insertArdAlarmRadarMove(ardAlarmRadarMove));
    }
    /**
     * ä¿®æ”¹é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     */
    @PreAuthorize("@ss.hasPermi('radar:move:edit')")
    @Log(title = "雷达移动报警", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody ArdAlarmRadarMove ardAlarmRadarMove)
    {
        return toAjax(ardAlarmRadarMoveService.updateArdAlarmRadarMove(ardAlarmRadarMove));
    }
    /**
     * åˆ é™¤é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     */
    @PreAuthorize("@ss.hasPermi('radar:move:remove')")
    @Log(title = "雷达移动报警", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable String[] ids)
    {
        return toAjax(ardAlarmRadarMoveService.deleteArdAlarmRadarMoveByIds(ids));
    }
}
ard-work/src/main/java/com/ruoyi/alarm/radar/controller/ArdAlarmRadarPumpController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,104 @@
package com.ruoyi.alarm.radar.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
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.alarm.radar.domain.ArdAlarmRadarPump;
import com.ruoyi.alarm.radar.service.IArdAlarmRadarPumpService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
 * é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦Controller
 *
 * @author ard
 * @date 2023-09-02
 */
@RestController
@RequestMapping("/radar/pump")
public class ArdAlarmRadarPumpController extends BaseController
{
    @Autowired
    private IArdAlarmRadarPumpService ardAlarmRadarPumpService;
    /**
     * æŸ¥è¯¢é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦åˆ—表
     */
    @PreAuthorize("@ss.hasPermi('radar:pump:list')")
    @GetMapping("/list")
    public TableDataInfo list(ArdAlarmRadarPump ardAlarmRadarPump)
    {
        startPage();
        List<ArdAlarmRadarPump> list = ardAlarmRadarPumpService.selectArdAlarmRadarPumpList(ardAlarmRadarPump);
        return getDataTable(list);
    }
    /**
     * å¯¼å‡ºé›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦åˆ—表
     */
    @PreAuthorize("@ss.hasPermi('radar:pump:export')")
    @Log(title = "雷达抽油机停机报警", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, ArdAlarmRadarPump ardAlarmRadarPump)
    {
        List<ArdAlarmRadarPump> list = ardAlarmRadarPumpService.selectArdAlarmRadarPumpList(ardAlarmRadarPump);
        ExcelUtil<ArdAlarmRadarPump> util = new ExcelUtil<ArdAlarmRadarPump>(ArdAlarmRadarPump.class);
        util.exportExcel(response, list, "雷达抽油机停机报警数据");
    }
    /**
     * èŽ·å–é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦è¯¦ç»†ä¿¡æ¯
     */
    @PreAuthorize("@ss.hasPermi('radar:pump:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") String id)
    {
        return success(ardAlarmRadarPumpService.selectArdAlarmRadarPumpById(id));
    }
    /**
     * æ–°å¢žé›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     */
    @PreAuthorize("@ss.hasPermi('radar:pump:add')")
    @Log(title = "雷达抽油机停机报警", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ArdAlarmRadarPump ardAlarmRadarPump)
    {
        return toAjax(ardAlarmRadarPumpService.insertArdAlarmRadarPump(ardAlarmRadarPump));
    }
    /**
     * ä¿®æ”¹é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     */
    @PreAuthorize("@ss.hasPermi('radar:pump:edit')")
    @Log(title = "雷达抽油机停机报警", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody ArdAlarmRadarPump ardAlarmRadarPump)
    {
        return toAjax(ardAlarmRadarPumpService.updateArdAlarmRadarPump(ardAlarmRadarPump));
    }
    /**
     * åˆ é™¤é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     */
    @PreAuthorize("@ss.hasPermi('radar:pump:remove')")
    @Log(title = "雷达抽油机停机报警", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable String[] ids)
    {
        return toAjax(ardAlarmRadarPumpService.deleteArdAlarmRadarPumpByIds(ids));
    }
}
ard-work/src/main/java/com/ruoyi/alarm/radar/domain/ArdAlarmRadarFire.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,232 @@
package com.ruoyi.alarm.radar.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
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_fire
 *
 * @author ard
 * @date 2023-09-02
 */
public class ArdAlarmRadarFire extends BaseEntity
{
    private static final long serialVersionUID = 1L;
    /** è®°å½•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")
    @Excel(name = "报警时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date alarmTime;
    /** ç»åº¦ */
    @Excel(name = "经度")
    private Double longitude;
    /** çº¬åº¦ */
    @Excel(name = "纬度")
    private Double latitude;
    /** å¼•导录像2 */
    @Excel(name = "引导录像2")
    private String recordUrl2;
    /** å¼•导录像1 */
    @Excel(name = "引导录像1")
    private String recordUrl1;
    /** æŸ¥çœ‹æ—¶é—´ */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "查看时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date viewTime;
    /** ç”¨æˆ·ID */
    @Excel(name = "用户ID")
    private String userId;
    /** éƒ¨é—¨ID */
    @Excel(name = "部门ID")
    private Long deptId;
    /** å¼•导标记 */
    @Excel(name = "引导标记")
    private Integer guideFlag;
    /**
     * æŠ¥è­¦æ€»æ•°
     */
    private Integer total;
    /**
     * æœªè¯»æŠ¥è­¦æ•°é‡
     */
    private Integer count;
    public Integer getTotal() {
        return total;
    }
    public void setTotal(Integer total) {
        this.total = total;
    }
    public Integer getCount() {
        return count;
    }
    public void setCount(Integer count) {
        this.count = count;
    }
    public void setId(String id)
    {
        this.id = id;
    }
    public String getId()
    {
        return id;
    }
    public void setName(String name)
    {
        this.name = name;
    }
    public String getName()
    {
        return name;
    }
    public void setTargetId(String targetId)
    {
        this.targetId = targetId;
    }
    public String getTargetId()
    {
        return targetId;
    }
    public void setAlarmType(String alarmType)
    {
        this.alarmType = alarmType;
    }
    public String getAlarmType()
    {
        return alarmType;
    }
    public void setAlarmTime(Date alarmTime)
    {
        this.alarmTime = alarmTime;
    }
    public Date getAlarmTime()
    {
        return alarmTime;
    }
    public void setLongitude(Double longitude)
    {
        this.longitude = longitude;
    }
    public Double getLongitude()
    {
        return longitude;
    }
    public void setLatitude(Double latitude)
    {
        this.latitude = latitude;
    }
    public Double getLatitude()
    {
        return latitude;
    }
    public void setRecordUrl1(String recordUrl1)
    {
        this.recordUrl1 = recordUrl1;
    }
    public String getRecordUrl1()
    {
        return recordUrl1;
    }
    public void setViewTime(Date viewTime)
    {
        this.viewTime = viewTime;
    }
    public Date getViewTime()
    {
        return viewTime;
    }
    public void setUserId(String userId)
    {
        this.userId = userId;
    }
    public String getUserId()
    {
        return userId;
    }
    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }
    public Long getDeptId()
    {
        return deptId;
    }
    public void setGuideFlag(Integer guideFlag)
    {
        this.guideFlag = guideFlag;
    }
    public Integer getGuideFlag()
    {
        return guideFlag;
    }
    public String getRecordUrl2() {
        return recordUrl2;
    }
    public void setRecordUrl2(String recordUrl2) {
        this.recordUrl2 = recordUrl2;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("targetId", getTargetId())
            .append("alarmType", getAlarmType())
            .append("alarmTime", getAlarmTime())
            .append("longitude", getLongitude())
            .append("latitude", getLatitude())
            .append("recordUrl1", getRecordUrl1())
            .append("viewTime", getViewTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("userId", getUserId())
            .append("deptId", getDeptId())
            .append("guideFlag", getGuideFlag())
            .toString();
    }
}
ard-work/src/main/java/com/ruoyi/alarm/radar/domain/ArdAlarmRadarMove.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,232 @@
package com.ruoyi.alarm.radar.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
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_move
 *
 * @author ard
 * @date 2023-09-02
 */
public class ArdAlarmRadarMove extends BaseEntity
{
    private static final long serialVersionUID = 1L;
    /** è®°å½•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")
    @Excel(name = "报警时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date alarmTime;
    /** ç»åº¦ */
    @Excel(name = "经度")
    private Double longitude;
    /** çº¬åº¦ */
    @Excel(name = "纬度")
    private Double latitude;
    /** å¼•导录像1 */
    @Excel(name = "引导录像1")
    private String recordUrl1;
    /** å¼•导录像2 */
    @Excel(name = "引导录像2")
    private String recordUrl2;
    /** æŸ¥çœ‹æ—¶é—´ */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "查看时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date viewTime;
    /** ç”¨æˆ·ID */
    @Excel(name = "用户ID")
    private String userId;
    /** éƒ¨é—¨ID */
    @Excel(name = "部门ID")
    private Long deptId;
    /** å¼•导标记 */
    @Excel(name = "引导标记")
    private Integer guideFlag;
    /**
     * æŠ¥è­¦æ€»æ•°
     */
    private Integer total;
    /**
     * æœªè¯»æŠ¥è­¦æ•°é‡
     */
    private Integer count;
    public Integer getTotal() {
        return total;
    }
    public void setTotal(Integer total) {
        this.total = total;
    }
    public Integer getCount() {
        return count;
    }
    public void setCount(Integer count) {
        this.count = count;
    }
    public void setId(String id)
    {
        this.id = id;
    }
    public String getId()
    {
        return id;
    }
    public void setName(String name)
    {
        this.name = name;
    }
    public String getName()
    {
        return name;
    }
    public void setTargetId(String targetId)
    {
        this.targetId = targetId;
    }
    public String getTargetId()
    {
        return targetId;
    }
    public void setAlarmType(String alarmType)
    {
        this.alarmType = alarmType;
    }
    public String getAlarmType()
    {
        return alarmType;
    }
    public void setAlarmTime(Date alarmTime)
    {
        this.alarmTime = alarmTime;
    }
    public Date getAlarmTime()
    {
        return alarmTime;
    }
    public void setLongitude(Double longitude)
    {
        this.longitude = longitude;
    }
    public Double getLongitude()
    {
        return longitude;
    }
    public void setLatitude(Double latitude)
    {
        this.latitude = latitude;
    }
    public Double getLatitude()
    {
        return latitude;
    }
    public void setRecordUrl1(String recordUrl1)
    {
        this.recordUrl1 = recordUrl1;
    }
    public String getRecordUrl1()
    {
        return recordUrl1;
    }
    public void setViewTime(Date viewTime)
    {
        this.viewTime = viewTime;
    }
    public Date getViewTime()
    {
        return viewTime;
    }
    public void setUserId(String userId)
    {
        this.userId = userId;
    }
    public String getUserId()
    {
        return userId;
    }
    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }
    public Long getDeptId()
    {
        return deptId;
    }
    public void setGuideFlag(Integer guideFlag)
    {
        this.guideFlag = guideFlag;
    }
    public Integer getGuideFlag()
    {
        return guideFlag;
    }
    public String getRecordUrl2() {
        return recordUrl2;
    }
    public void setRecordUrl2(String recordUrl2) {
        this.recordUrl2 = recordUrl2;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("targetId", getTargetId())
            .append("alarmType", getAlarmType())
            .append("alarmTime", getAlarmTime())
            .append("longitude", getLongitude())
            .append("latitude", getLatitude())
            .append("recordUrl1", getRecordUrl1())
            .append("viewTime", getViewTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("userId", getUserId())
            .append("deptId", getDeptId())
            .append("guideFlag", getGuideFlag())
            .toString();
    }
}
ard-work/src/main/java/com/ruoyi/alarm/radar/domain/ArdAlarmRadarPump.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,232 @@
package com.ruoyi.alarm.radar.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
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_pump
 *
 * @author ard
 * @date 2023-09-02
 */
public class ArdAlarmRadarPump extends BaseEntity
{
    private static final long serialVersionUID = 1L;
    /** è®°å½•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")
    @Excel(name = "报警时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date alarmTime;
    /** ç»åº¦ */
    @Excel(name = "经度")
    private Double longitude;
    /** çº¬åº¦ */
    @Excel(name = "纬度")
    private Double latitude;
    /** å¼•导录像1 */
    @Excel(name = "引导录像1")
    private String recordUrl1;
    /** å¼•导录像2 */
    @Excel(name = "引导录像2")
    private String recordUrl2;
    /** æŸ¥çœ‹æ—¶é—´ */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "查看时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date viewTime;
    /** ç”¨æˆ·ID */
    @Excel(name = "用户ID")
    private String userId;
    /** éƒ¨é—¨ID */
    @Excel(name = "部门ID")
    private Long deptId;
    /** å¼•导标记 */
    @Excel(name = "引导标记")
    private Integer guideFlag;
    /**
     * æŠ¥è­¦æ€»æ•°
     */
    private Integer total;
    /**
     * æœªè¯»æŠ¥è­¦æ•°é‡
     */
    private Integer count;
    public Integer getTotal() {
        return total;
    }
    public void setTotal(Integer total) {
        this.total = total;
    }
    public Integer getCount() {
        return count;
    }
    public void setCount(Integer count) {
        this.count = count;
    }
    public void setId(String id)
    {
        this.id = id;
    }
    public String getId()
    {
        return id;
    }
    public void setName(String name)
    {
        this.name = name;
    }
    public String getName()
    {
        return name;
    }
    public void setTargetId(String targetId)
    {
        this.targetId = targetId;
    }
    public String getTargetId()
    {
        return targetId;
    }
    public void setAlarmType(String alarmType)
    {
        this.alarmType = alarmType;
    }
    public String getAlarmType()
    {
        return alarmType;
    }
    public void setAlarmTime(Date alarmTime)
    {
        this.alarmTime = alarmTime;
    }
    public Date getAlarmTime()
    {
        return alarmTime;
    }
    public void setLongitude(Double longitude)
    {
        this.longitude = longitude;
    }
    public Double getLongitude()
    {
        return longitude;
    }
    public void setLatitude(Double latitude)
    {
        this.latitude = latitude;
    }
    public Double getLatitude()
    {
        return latitude;
    }
    public void setRecordUrl1(String recordUrl1)
    {
        this.recordUrl1 = recordUrl1;
    }
    public String getRecordUrl1()
    {
        return recordUrl1;
    }
    public void setViewTime(Date viewTime)
    {
        this.viewTime = viewTime;
    }
    public Date getViewTime()
    {
        return viewTime;
    }
    public void setUserId(String userId)
    {
        this.userId = userId;
    }
    public String getUserId()
    {
        return userId;
    }
    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }
    public Long getDeptId()
    {
        return deptId;
    }
    public void setGuideFlag(Integer guideFlag)
    {
        this.guideFlag = guideFlag;
    }
    public Integer getGuideFlag()
    {
        return guideFlag;
    }
    public String getRecordUrl2() {
        return recordUrl2;
    }
    public void setRecordUrl2(String recordUrl2) {
        this.recordUrl2 = recordUrl2;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("targetId", getTargetId())
            .append("alarmType", getAlarmType())
            .append("alarmTime", getAlarmTime())
            .append("longitude", getLongitude())
            .append("latitude", getLatitude())
            .append("recordUrl1", getRecordUrl1())
            .append("viewTime", getViewTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("userId", getUserId())
            .append("deptId", getDeptId())
            .append("guideFlag", getGuideFlag())
            .toString();
    }
}
ard-work/src/main/java/com/ruoyi/alarm/radar/mapper/ArdAlarmRadarFireMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,70 @@
package com.ruoyi.alarm.radar.mapper;
import java.util.List;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadar;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarFire;
import org.apache.ibatis.annotations.Param;
/**
 * é›·è¾¾é˜²ç«æŠ¥è­¦Mapper接口
 *
 * @author ard
 * @date 2023-09-02
 */
public interface ArdAlarmRadarFireMapper
{
    /**
     * æŸ¥è¯¢é›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param id é›·è¾¾é˜²ç«æŠ¥è­¦ä¸»é”®
     * @return é›·è¾¾é˜²ç«æŠ¥è­¦
     */
    public ArdAlarmRadarFire selectArdAlarmRadarFireById(String id);
    /**
     * æŸ¥è¯¢é›·è¾¾é˜²ç«æŠ¥è­¦åˆ—表
     *
     * @param ardAlarmRadarFire é›·è¾¾é˜²ç«æŠ¥è­¦
     * @return é›·è¾¾é˜²ç«æŠ¥è­¦é›†åˆ
     */
    public List<ArdAlarmRadarFire> selectArdAlarmRadarFireList(ArdAlarmRadarFire ardAlarmRadarFire);
    /**
     * æ–°å¢žé›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param ardAlarmRadarFire é›·è¾¾é˜²ç«æŠ¥è­¦
     * @return ç»“æžœ
     */
    public int insertArdAlarmRadarFire(ArdAlarmRadarFire ardAlarmRadarFire);
    /**
     * ä¿®æ”¹é›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param ardAlarmRadarFire é›·è¾¾é˜²ç«æŠ¥è­¦
     * @return ç»“æžœ
     */
    public int updateArdAlarmRadarFire(ArdAlarmRadarFire ardAlarmRadarFire);
    /**
     * åˆ é™¤é›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param id é›·è¾¾é˜²ç«æŠ¥è­¦ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarFireById(String id);
    /**
     * æ‰¹é‡åˆ é™¤é›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param ids éœ€è¦åˆ é™¤çš„æ•°æ®ä¸»é”®é›†åˆ
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarFireByIds(String[] ids);
    int selectCountByAlarmTime(@Param("refreshTime") String refreshTime);
    List<ArdAlarmRadarFire> selectListAllByCommand(@Param("refreshTime") String refreshTime);
    public int updateViewTimeByCondition(@Param("name")String name,@Param("alarmTime") String alarmTime,@Param("viewTime") String viewTime);
}
ard-work/src/main/java/com/ruoyi/alarm/radar/mapper/ArdAlarmRadarMoveMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,72 @@
package com.ruoyi.alarm.radar.mapper;
import java.util.List;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadar;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarMove;
import org.apache.ibatis.annotations.Param;
/**
 * é›·è¾¾ç§»åŠ¨æŠ¥è­¦Mapper接口
 *
 * @author ard
 * @date 2023-09-02
 */
public interface ArdAlarmRadarMoveMapper
{
    /**
     * æŸ¥è¯¢é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param id é›·è¾¾ç§»åŠ¨æŠ¥è­¦ä¸»é”®
     * @return é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     */
    public ArdAlarmRadarMove selectArdAlarmRadarMoveById(String id);
    /**
     * æŸ¥è¯¢é›·è¾¾ç§»åŠ¨æŠ¥è­¦åˆ—è¡¨
     *
     * @param ardAlarmRadarMove é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     * @return é›·è¾¾ç§»åŠ¨æŠ¥è­¦é›†åˆ
     */
    public List<ArdAlarmRadarMove> selectArdAlarmRadarMoveList(ArdAlarmRadarMove ardAlarmRadarMove);
    /**
     * æ–°å¢žé›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param ardAlarmRadarMove é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     * @return ç»“æžœ
     */
    public int insertArdAlarmRadarMove(ArdAlarmRadarMove ardAlarmRadarMove);
    /**
     * ä¿®æ”¹é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param ardAlarmRadarMove é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     * @return ç»“æžœ
     */
    public int updateArdAlarmRadarMove(ArdAlarmRadarMove ardAlarmRadarMove);
    /**
     * åˆ é™¤é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param id é›·è¾¾ç§»åŠ¨æŠ¥è­¦ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarMoveById(String id);
    /**
     * æ‰¹é‡åˆ é™¤é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param ids éœ€è¦åˆ é™¤çš„æ•°æ®ä¸»é”®é›†åˆ
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarMoveByIds(String[] ids);
    int selectCountByAlarmTime(@Param("refreshTime") String refreshTime);
    List<ArdAlarmRadarMove> selectListAllByCommand(@Param("refreshTime") String refreshTime);
    public int updateViewTimeByCondition(@Param("name")String name,@Param("alarmTime") String alarmTime,@Param("viewTime") String viewTime);
    /**
     * é€šè¿‡é›·è¾¾id找到关联塔上的大光电id
     */
    String getCameraByRadar(String radarId);
}
ard-work/src/main/java/com/ruoyi/alarm/radar/mapper/ArdAlarmRadarPumpMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,70 @@
package com.ruoyi.alarm.radar.mapper;
import java.util.List;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadar;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarPump;
import org.apache.ibatis.annotations.Param;
/**
 * é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦Mapper接口
 *
 * @author ard
 * @date 2023-09-02
 */
public interface ArdAlarmRadarPumpMapper
{
    /**
     * æŸ¥è¯¢é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param id é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦ä¸»é”®
     * @return é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     */
    public ArdAlarmRadarPump selectArdAlarmRadarPumpById(String id);
    /**
     * æŸ¥è¯¢é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦åˆ—表
     *
     * @param ardAlarmRadarPump é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     * @return é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦é›†åˆ
     */
    public List<ArdAlarmRadarPump> selectArdAlarmRadarPumpList(ArdAlarmRadarPump ardAlarmRadarPump);
    /**
     * æ–°å¢žé›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param ardAlarmRadarPump é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     * @return ç»“æžœ
     */
    public int insertArdAlarmRadarPump(ArdAlarmRadarPump ardAlarmRadarPump);
    /**
     * ä¿®æ”¹é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param ardAlarmRadarPump é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     * @return ç»“æžœ
     */
    public int updateArdAlarmRadarPump(ArdAlarmRadarPump ardAlarmRadarPump);
    /**
     * åˆ é™¤é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param id é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarPumpById(String id);
    /**
     * æ‰¹é‡åˆ é™¤é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param ids éœ€è¦åˆ é™¤çš„æ•°æ®ä¸»é”®é›†åˆ
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarPumpByIds(String[] ids);
    int selectCountByAlarmTime(@Param("refreshTime") String refreshTime);
    List<ArdAlarmRadarPump> selectListAllByCommand(@Param("refreshTime") String refreshTime);
    public int updateViewTimeByCondition(@Param("name")String name,@Param("alarmTime") String alarmTime,@Param("viewTime") String viewTime);
}
ard-work/src/main/java/com/ruoyi/alarm/radar/service/IArdAlarmRadarFireService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,61 @@
package com.ruoyi.alarm.radar.service;
import java.util.List;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarFire;
/**
 * é›·è¾¾é˜²ç«æŠ¥è­¦Service接口
 *
 * @author ard
 * @date 2023-09-02
 */
public interface IArdAlarmRadarFireService
{
    /**
     * æŸ¥è¯¢é›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param id é›·è¾¾é˜²ç«æŠ¥è­¦ä¸»é”®
     * @return é›·è¾¾é˜²ç«æŠ¥è­¦
     */
    public ArdAlarmRadarFire selectArdAlarmRadarFireById(String id);
    /**
     * æŸ¥è¯¢é›·è¾¾é˜²ç«æŠ¥è­¦åˆ—表
     *
     * @param ardAlarmRadarFire é›·è¾¾é˜²ç«æŠ¥è­¦
     * @return é›·è¾¾é˜²ç«æŠ¥è­¦é›†åˆ
     */
    public List<ArdAlarmRadarFire> selectArdAlarmRadarFireList(ArdAlarmRadarFire ardAlarmRadarFire);
    /**
     * æ–°å¢žé›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param ardAlarmRadarFire é›·è¾¾é˜²ç«æŠ¥è­¦
     * @return ç»“æžœ
     */
    public int insertArdAlarmRadarFire(ArdAlarmRadarFire ardAlarmRadarFire);
    /**
     * ä¿®æ”¹é›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param ardAlarmRadarFire é›·è¾¾é˜²ç«æŠ¥è­¦
     * @return ç»“æžœ
     */
    public int updateArdAlarmRadarFire(ArdAlarmRadarFire ardAlarmRadarFire);
    /**
     * æ‰¹é‡åˆ é™¤é›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param ids éœ€è¦åˆ é™¤çš„雷达防火报警主键集合
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarFireByIds(String[] ids);
    /**
     * åˆ é™¤é›·è¾¾é˜²ç«æŠ¥è­¦ä¿¡æ¯
     *
     * @param id é›·è¾¾é˜²ç«æŠ¥è­¦ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarFireById(String id);
}
ard-work/src/main/java/com/ruoyi/alarm/radar/service/IArdAlarmRadarMoveService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,61 @@
package com.ruoyi.alarm.radar.service;
import java.util.List;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarMove;
/**
 * é›·è¾¾ç§»åŠ¨æŠ¥è­¦Service接口
 *
 * @author ard
 * @date 2023-09-02
 */
public interface IArdAlarmRadarMoveService
{
    /**
     * æŸ¥è¯¢é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param id é›·è¾¾ç§»åŠ¨æŠ¥è­¦ä¸»é”®
     * @return é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     */
    public ArdAlarmRadarMove selectArdAlarmRadarMoveById(String id);
    /**
     * æŸ¥è¯¢é›·è¾¾ç§»åŠ¨æŠ¥è­¦åˆ—è¡¨
     *
     * @param ardAlarmRadarMove é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     * @return é›·è¾¾ç§»åŠ¨æŠ¥è­¦é›†åˆ
     */
    public List<ArdAlarmRadarMove> selectArdAlarmRadarMoveList(ArdAlarmRadarMove ardAlarmRadarMove);
    /**
     * æ–°å¢žé›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param ardAlarmRadarMove é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     * @return ç»“æžœ
     */
    public int insertArdAlarmRadarMove(ArdAlarmRadarMove ardAlarmRadarMove);
    /**
     * ä¿®æ”¹é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param ardAlarmRadarMove é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     * @return ç»“æžœ
     */
    public int updateArdAlarmRadarMove(ArdAlarmRadarMove ardAlarmRadarMove);
    /**
     * æ‰¹é‡åˆ é™¤é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param ids éœ€è¦åˆ é™¤çš„雷达移动报警主键集合
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarMoveByIds(String[] ids);
    /**
     * åˆ é™¤é›·è¾¾ç§»åŠ¨æŠ¥è­¦ä¿¡æ¯
     *
     * @param id é›·è¾¾ç§»åŠ¨æŠ¥è­¦ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarMoveById(String id);
}
ard-work/src/main/java/com/ruoyi/alarm/radar/service/IArdAlarmRadarPumpService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,61 @@
package com.ruoyi.alarm.radar.service;
import java.util.List;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarPump;
/**
 * é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦Service接口
 *
 * @author ard
 * @date 2023-09-02
 */
public interface IArdAlarmRadarPumpService
{
    /**
     * æŸ¥è¯¢é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param id é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦ä¸»é”®
     * @return é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     */
    public ArdAlarmRadarPump selectArdAlarmRadarPumpById(String id);
    /**
     * æŸ¥è¯¢é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦åˆ—表
     *
     * @param ardAlarmRadarPump é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     * @return é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦é›†åˆ
     */
    public List<ArdAlarmRadarPump> selectArdAlarmRadarPumpList(ArdAlarmRadarPump ardAlarmRadarPump);
    /**
     * æ–°å¢žé›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param ardAlarmRadarPump é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     * @return ç»“æžœ
     */
    public int insertArdAlarmRadarPump(ArdAlarmRadarPump ardAlarmRadarPump);
    /**
     * ä¿®æ”¹é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param ardAlarmRadarPump é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     * @return ç»“æžœ
     */
    public int updateArdAlarmRadarPump(ArdAlarmRadarPump ardAlarmRadarPump);
    /**
     * æ‰¹é‡åˆ é™¤é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param ids éœ€è¦åˆ é™¤çš„雷达抽油机停机报警主键集合
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarPumpByIds(String[] ids);
    /**
     * åˆ é™¤é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦ä¿¡æ¯
     *
     * @param id é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteArdAlarmRadarPumpById(String id);
}
ard-work/src/main/java/com/ruoyi/alarm/radar/service/impl/ArdAlarmRadarFireServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,96 @@
package com.ruoyi.alarm.radar.service.impl;
import java.util.List;
        import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.alarm.radar.mapper.ArdAlarmRadarFireMapper;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarFire;
import com.ruoyi.alarm.radar.service.IArdAlarmRadarFireService;
import javax.annotation.Resource;
/**
 * é›·è¾¾é˜²ç«æŠ¥è­¦Service业务层处理
 *
 * @author ard
 * @date 2023-09-02
 */
@Service
public class ArdAlarmRadarFireServiceImpl implements IArdAlarmRadarFireService {
    @Resource
    private ArdAlarmRadarFireMapper ardAlarmRadarFireMapper;
    /**
     * æŸ¥è¯¢é›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param id é›·è¾¾é˜²ç«æŠ¥è­¦ä¸»é”®
     * @return é›·è¾¾é˜²ç«æŠ¥è­¦
     */
    @Override
    public ArdAlarmRadarFire selectArdAlarmRadarFireById(String id) {
        return ardAlarmRadarFireMapper.selectArdAlarmRadarFireById(id);
    }
    /**
     * æŸ¥è¯¢é›·è¾¾é˜²ç«æŠ¥è­¦åˆ—表
     *
     * @param ardAlarmRadarFire é›·è¾¾é˜²ç«æŠ¥è­¦
     * @return é›·è¾¾é˜²ç«æŠ¥è­¦
     */
    @Override
    public List<ArdAlarmRadarFire> selectArdAlarmRadarFireList(ArdAlarmRadarFire ardAlarmRadarFire) {
        return ardAlarmRadarFireMapper.selectArdAlarmRadarFireList(ardAlarmRadarFire);
    }
    /**
     * æ–°å¢žé›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param ardAlarmRadarFire é›·è¾¾é˜²ç«æŠ¥è­¦
     * @return ç»“æžœ
     */
    @Override
    public int insertArdAlarmRadarFire(ArdAlarmRadarFire ardAlarmRadarFire) {
                ardAlarmRadarFire.setId(IdUtils.simpleUUID());
                ardAlarmRadarFire.setCreateBy(SecurityUtils.getUsername());
                ardAlarmRadarFire.setCreateTime(DateUtils.getNowDate());
                ardAlarmRadarFire.setUserId(SecurityUtils.getUserId());
            return ardAlarmRadarFireMapper.insertArdAlarmRadarFire(ardAlarmRadarFire);
    }
    /**
     * ä¿®æ”¹é›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param ardAlarmRadarFire é›·è¾¾é˜²ç«æŠ¥è­¦
     * @return ç»“æžœ
     */
    @Override
    public int updateArdAlarmRadarFire(ArdAlarmRadarFire ardAlarmRadarFire) {
        return ardAlarmRadarFireMapper.updateArdAlarmRadarFire(ardAlarmRadarFire);
    }
    /**
     * æ‰¹é‡åˆ é™¤é›·è¾¾é˜²ç«æŠ¥è­¦
     *
     * @param ids éœ€è¦åˆ é™¤çš„雷达防火报警主键
     * @return ç»“æžœ
     */
    @Override
    public int deleteArdAlarmRadarFireByIds(String[] ids) {
        return ardAlarmRadarFireMapper.deleteArdAlarmRadarFireByIds(ids);
    }
    /**
     * åˆ é™¤é›·è¾¾é˜²ç«æŠ¥è­¦ä¿¡æ¯
     *
     * @param id é›·è¾¾é˜²ç«æŠ¥è­¦ä¸»é”®
     * @return ç»“æžœ
     */
    @Override
    public int deleteArdAlarmRadarFireById(String id) {
        return ardAlarmRadarFireMapper.deleteArdAlarmRadarFireById(id);
    }
}
ard-work/src/main/java/com/ruoyi/alarm/radar/service/impl/ArdAlarmRadarMoveServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,96 @@
package com.ruoyi.alarm.radar.service.impl;
import java.util.List;
        import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.alarm.radar.mapper.ArdAlarmRadarMoveMapper;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarMove;
import com.ruoyi.alarm.radar.service.IArdAlarmRadarMoveService;
import javax.annotation.Resource;
/**
 * é›·è¾¾ç§»åŠ¨æŠ¥è­¦Service业务层处理
 *
 * @author ard
 * @date 2023-09-02
 */
@Service
public class ArdAlarmRadarMoveServiceImpl implements IArdAlarmRadarMoveService {
    @Resource
    private ArdAlarmRadarMoveMapper ardAlarmRadarMoveMapper;
    /**
     * æŸ¥è¯¢é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param id é›·è¾¾ç§»åŠ¨æŠ¥è­¦ä¸»é”®
     * @return é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     */
    @Override
    public ArdAlarmRadarMove selectArdAlarmRadarMoveById(String id) {
        return ardAlarmRadarMoveMapper.selectArdAlarmRadarMoveById(id);
    }
    /**
     * æŸ¥è¯¢é›·è¾¾ç§»åŠ¨æŠ¥è­¦åˆ—è¡¨
     *
     * @param ardAlarmRadarMove é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     * @return é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     */
    @Override
    public List<ArdAlarmRadarMove> selectArdAlarmRadarMoveList(ArdAlarmRadarMove ardAlarmRadarMove) {
        return ardAlarmRadarMoveMapper.selectArdAlarmRadarMoveList(ardAlarmRadarMove);
    }
    /**
     * æ–°å¢žé›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param ardAlarmRadarMove é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     * @return ç»“æžœ
     */
    @Override
    public int insertArdAlarmRadarMove(ArdAlarmRadarMove ardAlarmRadarMove) {
                ardAlarmRadarMove.setId(IdUtils.simpleUUID());
                ardAlarmRadarMove.setCreateBy(SecurityUtils.getUsername());
                ardAlarmRadarMove.setCreateTime(DateUtils.getNowDate());
                ardAlarmRadarMove.setUserId(SecurityUtils.getUserId());
            return ardAlarmRadarMoveMapper.insertArdAlarmRadarMove(ardAlarmRadarMove);
    }
    /**
     * ä¿®æ”¹é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param ardAlarmRadarMove é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     * @return ç»“æžœ
     */
    @Override
    public int updateArdAlarmRadarMove(ArdAlarmRadarMove ardAlarmRadarMove) {
        return ardAlarmRadarMoveMapper.updateArdAlarmRadarMove(ardAlarmRadarMove);
    }
    /**
     * æ‰¹é‡åˆ é™¤é›·è¾¾ç§»åŠ¨æŠ¥è­¦
     *
     * @param ids éœ€è¦åˆ é™¤çš„雷达移动报警主键
     * @return ç»“æžœ
     */
    @Override
    public int deleteArdAlarmRadarMoveByIds(String[] ids) {
        return ardAlarmRadarMoveMapper.deleteArdAlarmRadarMoveByIds(ids);
    }
    /**
     * åˆ é™¤é›·è¾¾ç§»åŠ¨æŠ¥è­¦ä¿¡æ¯
     *
     * @param id é›·è¾¾ç§»åŠ¨æŠ¥è­¦ä¸»é”®
     * @return ç»“æžœ
     */
    @Override
    public int deleteArdAlarmRadarMoveById(String id) {
        return ardAlarmRadarMoveMapper.deleteArdAlarmRadarMoveById(id);
    }
}
ard-work/src/main/java/com/ruoyi/alarm/radar/service/impl/ArdAlarmRadarPumpServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,96 @@
package com.ruoyi.alarm.radar.service.impl;
import java.util.List;
        import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.alarm.radar.mapper.ArdAlarmRadarPumpMapper;
import com.ruoyi.alarm.radar.domain.ArdAlarmRadarPump;
import com.ruoyi.alarm.radar.service.IArdAlarmRadarPumpService;
import javax.annotation.Resource;
/**
 * é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦Service业务层处理
 *
 * @author ard
 * @date 2023-09-02
 */
@Service
public class ArdAlarmRadarPumpServiceImpl implements IArdAlarmRadarPumpService {
    @Resource
    private ArdAlarmRadarPumpMapper ardAlarmRadarPumpMapper;
    /**
     * æŸ¥è¯¢é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param id é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦ä¸»é”®
     * @return é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     */
    @Override
    public ArdAlarmRadarPump selectArdAlarmRadarPumpById(String id) {
        return ardAlarmRadarPumpMapper.selectArdAlarmRadarPumpById(id);
    }
    /**
     * æŸ¥è¯¢é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦åˆ—表
     *
     * @param ardAlarmRadarPump é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     * @return é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     */
    @Override
    public List<ArdAlarmRadarPump> selectArdAlarmRadarPumpList(ArdAlarmRadarPump ardAlarmRadarPump) {
        return ardAlarmRadarPumpMapper.selectArdAlarmRadarPumpList(ardAlarmRadarPump);
    }
    /**
     * æ–°å¢žé›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param ardAlarmRadarPump é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     * @return ç»“æžœ
     */
    @Override
    public int insertArdAlarmRadarPump(ArdAlarmRadarPump ardAlarmRadarPump) {
                ardAlarmRadarPump.setId(IdUtils.simpleUUID());
                ardAlarmRadarPump.setCreateBy(SecurityUtils.getUsername());
                ardAlarmRadarPump.setCreateTime(DateUtils.getNowDate());
                ardAlarmRadarPump.setUserId(SecurityUtils.getUserId());
            return ardAlarmRadarPumpMapper.insertArdAlarmRadarPump(ardAlarmRadarPump);
    }
    /**
     * ä¿®æ”¹é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param ardAlarmRadarPump é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     * @return ç»“æžœ
     */
    @Override
    public int updateArdAlarmRadarPump(ArdAlarmRadarPump ardAlarmRadarPump) {
        return ardAlarmRadarPumpMapper.updateArdAlarmRadarPump(ardAlarmRadarPump);
    }
    /**
     * æ‰¹é‡åˆ é™¤é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦
     *
     * @param ids éœ€è¦åˆ é™¤çš„雷达抽油机停机报警主键
     * @return ç»“æžœ
     */
    @Override
    public int deleteArdAlarmRadarPumpByIds(String[] ids) {
        return ardAlarmRadarPumpMapper.deleteArdAlarmRadarPumpByIds(ids);
    }
    /**
     * åˆ é™¤é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦ä¿¡æ¯
     *
     * @param id é›·è¾¾æŠ½æ²¹æœºåœæœºæŠ¥è­¦ä¸»é”®
     * @return ç»“æžœ
     */
    @Override
    public int deleteArdAlarmRadarPumpById(String id) {
        return ardAlarmRadarPumpMapper.deleteArdAlarmRadarPumpById(id);
    }
}
ard-work/src/main/java/com/ruoyi/alarm/wall/domain/ArdAlarmWall.java
@@ -51,6 +51,30 @@
    /** é«˜å±‚ */
    @Excel(name = "高层")
    private Double altitude;
    /**
     * æŠ¥è­¦æ€»æ•°
     */
    private Integer total;
    /**
     * æœªè¯»æŠ¥è­¦æ•°é‡
     */
    private Integer count;
    public Integer getTotal() {
        return total;
    }
    public void setTotal(Integer total) {
        this.total = total;
    }
    public Integer getCount() {
        return count;
    }
    public void setCount(Integer count) {
        this.count = count;
    }
    public void setId(String id) 
    {
ard-work/src/main/java/com/ruoyi/alarm/wall/mapper/ArdAlarmWallMapper.java
@@ -1,7 +1,10 @@
package com.ruoyi.alarm.wall.mapper;
import java.util.List;
import com.ruoyi.alarm.apponekey.domain.ArdAlarmApponekey;
import com.ruoyi.alarm.wall.domain.ArdAlarmWall;
import org.apache.ibatis.annotations.Param;
/**
 * ç”µå­å›´æ æŠ¥è­¦Mapper接口
@@ -58,4 +61,11 @@
     * @return ç»“æžœ
     */
    public int deleteArdAlarmWallByIds(String[] ids);
    int selectCountByAlarmTime(@Param("refreshTime") String refreshTime);
    public List<ArdAlarmWall> selectListAllByCommand(@Param("refreshTime") String refreshTime);
    public int updateViewTimeByUserId(@Param("userId")String userId,@Param("createTime") String createTime,@Param("viewTime") String viewTime);
}
ard-work/src/main/java/com/ruoyi/device/radar/mapper/ArdEquipRadarMapper.java
@@ -58,4 +58,9 @@
     * @return ç»“æžœ
     */
    public int deleteArdEquipRadarByIds(String[] ids);
    /**
     * é€šè¿‡é›·è¾¾id找到关联塔上的大光电id
     */
    String getCameraByRadar(String radarId);
}
ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarFireMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,152 @@
<?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.radar.mapper.ArdAlarmRadarFireMapper">
    <resultMap type="ArdAlarmRadarFire" id="ArdAlarmRadarFireResult">
        <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="recordUrl1"    column="record_url1"    />
        <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"    />
        <result property="guideFlag"    column="guide_flag"    />
    </resultMap>
    <sql id="selectArdAlarmRadarFireVo">
        select id, name, target_id, alarm_type, alarm_time, longitude, latitude, record_url1, view_time, create_by, create_time, user_id, dept_id, guide_flag from ard_alarm_radar_fire
    </sql>
    <select id="selectArdAlarmRadarFireList" parameterType="ArdAlarmRadarFire" resultMap="ArdAlarmRadarFireResult">
        <include refid="selectArdAlarmRadarFireVo"/>
        <where>
            <if test="name != null  and name != ''"> and name like '%'||#{name}||'%'</if>
            <if test="targetId != null  and targetId != ''"> and target_id = #{targetId}</if>
            <if test="alarmType != null  and alarmType != ''"> and alarm_type = #{alarmType}</if>
            <if test="alarmTime != null "> and alarm_time = #{alarmTime}</if>
            <if test="longitude != null "> and longitude = #{longitude}</if>
            <if test="latitude != null "> and latitude = #{latitude}</if>
            <if test="recordUrl1 != null  and recordUrl1 != ''"> and record_url1 = #{recordUrl1}</if>
            <if test="viewTime != null "> and view_time = #{viewTime}</if>
            <if test="userId != null  and userId != ''"> and user_id = #{userId}</if>
            <if test="deptId != null "> and dept_id = #{deptId}</if>
            <if test="guideFlag != null "> and guide_flag = #{guideFlag}</if>
        </where>
    </select>
    <select id="selectArdAlarmRadarFireById" parameterType="String" resultMap="ArdAlarmRadarFireResult">
        <include refid="selectArdAlarmRadarFireVo"/>
        where id = #{id}
    </select>
    <insert id="insertArdAlarmRadarFire" parameterType="ArdAlarmRadarFire">
        insert into ard_alarm_radar_fire
        <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="recordUrl1 != null">record_url1,</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>
            <if test="guideFlag != null">guide_flag,</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="recordUrl1 != null">#{recordUrl1},</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>
            <if test="guideFlag != null">#{guideFlag},</if>
         </trim>
    </insert>
    <update id="updateArdAlarmRadarFire" parameterType="ArdAlarmRadarFire">
        update ard_alarm_radar_fire
        <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="recordUrl1 != null">record_url1 = #{recordUrl1},</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>
            <if test="guideFlag != null">guide_flag = #{guideFlag},</if>
        </trim>
        where id = #{id}
    </update>
    <delete id="deleteArdAlarmRadarFireById" parameterType="String">
        delete from ard_alarm_radar_fire where id = #{id}
    </delete>
    <delete id="deleteArdAlarmRadarFireByIds" parameterType="String">
        delete from ard_alarm_radar_fire where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
    <select id="selectCountByAlarmTime" resultType="Integer">
        SELECT COUNT(DISTINCT aarm.name)
        FROM ard_alarm_radar_fire aarm
        WHERE aarm.alarm_time >= CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE
          and aarm.view_time is null
    </select>
    <select id="selectListAllByCommand" resultMap="ArdAlarmRadarFireResult">
        select aaar.ID,
               aaar.target_id,
               aaar.NAME,
               aaar.alarm_type,
               aaar.alarm_time,
               aaar.longitude,
               aaar.latitude,
               r.COUNT,
               r.total  from
            (SELECT
                 aar.NAME,
                 max(aar.create_time) as create_time1,
                 count(case when aar.view_time is null THEN 1  END) as count,
                 count(aar.id) as total
             FROM
                 ard_alarm_radar_fire aar
             WHERE
                 aar.create_time >= ( CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE )
             GROUP BY aar.NAME
            ) r
                INNER JOIN ard_alarm_radar aaar ON r.create_time1 = aaar.create_time
    </select>
    <update id="updateViewTimeByCondition" parameterType="String">
        update ard_alarm_radar_fire
        set view_time=#{viewTime}
        where name = #{name}
          and alarm_time&lt;=#{alarmTime}
          and view_time is null
    </update>
</mapper>
ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarMapper.xml
@@ -159,10 +159,8 @@
          and aar.view_time is null
    </select>
    <select id="getCameraByRadar" resultType="String">
        select ac.id
        from ard_equip_radar aer
                 INNER JOIN ard_towers at
        on aer.tower_id= at.id
        select ac.id from ard_equip_radar aer
        INNER JOIN ard_towers at on aer.tower_id= at.id
            INNER JOIN ard_cameras ac on aer.tower_id=ac.tower_id
    </select>
    <select id="getArdAlarmRadarWithGuide" resultMap="ArdAlarmRadarResult">
ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarMoveMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,156 @@
<?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.radar.mapper.ArdAlarmRadarMoveMapper">
    <resultMap type="ArdAlarmRadarMove" id="ArdAlarmRadarMoveResult">
        <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="recordUrl1"    column="record_url1"    />
        <result property="recordUrl2"    column="record_url2"    />
        <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"    />
        <result property="guideFlag"    column="guide_flag"    />
    </resultMap>
    <sql id="selectArdAlarmRadarMoveVo">
        select id, name, target_id, alarm_type, alarm_time, longitude, latitude, record_url1,record_url2, view_time, create_by, create_time, user_id, dept_id, guide_flag from ard_alarm_radar_move
    </sql>
    <select id="selectArdAlarmRadarMoveList" parameterType="ArdAlarmRadarMove" resultMap="ArdAlarmRadarMoveResult">
        <include refid="selectArdAlarmRadarMoveVo"/>
        <where>
            <if test="name != null  and name != ''"> and name like '%'||#{name}||'%'</if>
            <if test="targetId != null  and targetId != ''"> and target_id = #{targetId}</if>
            <if test="alarmType != null  and alarmType != ''"> and alarm_type = #{alarmType}</if>
            <if test="alarmTime != null "> and alarm_time = #{alarmTime}</if>
            <if test="longitude != null "> and longitude = #{longitude}</if>
            <if test="latitude != null "> and latitude = #{latitude}</if>
            <if test="recordUrl1 != null  and recordUrl1 != ''"> and record_url1 = #{recordUrl1}</if>
            <if test="viewTime != null "> and view_time = #{viewTime}</if>
            <if test="userId != null  and userId != ''"> and user_id = #{userId}</if>
            <if test="deptId != null "> and dept_id = #{deptId}</if>
            <if test="guideFlag != null "> and guide_flag = #{guideFlag}</if>
        </where>
    </select>
    <select id="selectArdAlarmRadarMoveById" parameterType="String" resultMap="ArdAlarmRadarMoveResult">
        <include refid="selectArdAlarmRadarMoveVo"/>
        where id = #{id}
    </select>
    <insert id="insertArdAlarmRadarMove" parameterType="ArdAlarmRadarMove">
        insert into ard_alarm_radar_move
        <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="recordUrl1 != null">record_url1,</if>
            <if test="recordUrl2 != null">record_url2,</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>
            <if test="guideFlag != null">guide_flag,</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="recordUrl1 != null">#{recordUrl1},</if>
            <if test="recordUrl2 != null">#{recordUrl2},</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>
            <if test="guideFlag != null">#{guideFlag},</if>
         </trim>
    </insert>
    <update id="updateArdAlarmRadarMove" parameterType="ArdAlarmRadarMove">
        update ard_alarm_radar_move
        <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="recordUrl1 != null">record_url1 = #{recordUrl1},</if>
            <if test="recordUrl2 != null">record_url2 = #{recordUrl2},</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>
            <if test="guideFlag != null">guide_flag = #{guideFlag},</if>
        </trim>
        where id = #{id}
    </update>
    <delete id="deleteArdAlarmRadarMoveById" parameterType="String">
        delete from ard_alarm_radar_move where id = #{id}
    </delete>
    <delete id="deleteArdAlarmRadarMoveByIds" parameterType="String">
        delete from ard_alarm_radar_move where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
    <select id="selectCountByAlarmTime" resultType="Integer">
        SELECT COUNT(DISTINCT aarm.name)
        FROM ard_alarm_radar_move aarm
        WHERE aarm.alarm_time >= CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE
          and aarm.view_time is null
    </select>
    <select id="selectListAllByCommand" resultMap="ArdAlarmRadarMoveResult">
        select aaar.ID,
               aaar.target_id,
               aaar.NAME,
               aaar.alarm_type,
               aaar.alarm_time,
               aaar.longitude,
               aaar.latitude,
               r.COUNT,
               r.total  from
            (SELECT
                 aar.NAME,
                 max(aar.create_time) as create_time1,
                 count(case when aar.view_time is null THEN 1  END) as count,
                 count(aar.id) as total
             FROM
                 ard_alarm_radar aar
             WHERE
                 aar.create_time >= ( CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE )
             GROUP BY aar.NAME
            ) r
                INNER JOIN ard_alarm_radar aaar ON r.create_time1 = aaar.create_time
    </select>
    <update id="updateViewTimeByCondition" parameterType="String">
        update ard_alarm_radar_move
        set view_time=#{viewTime}
        where name = #{name}
          and alarm_time&lt;=#{alarmTime}
          and view_time is null
    </update>
</mapper>
ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarPumpMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,152 @@
<?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.radar.mapper.ArdAlarmRadarPumpMapper">
    <resultMap type="ArdAlarmRadarPump" id="ArdAlarmRadarPumpResult">
        <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="recordUrl1"    column="record_url1"    />
        <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"    />
        <result property="guideFlag"    column="guide_flag"    />
    </resultMap>
    <sql id="selectArdAlarmRadarPumpVo">
        select id, name, target_id, alarm_type, alarm_time, longitude, latitude, record_url1, view_time, create_by, create_time, user_id, dept_id, guide_flag from ard_alarm_radar_pump
    </sql>
    <select id="selectArdAlarmRadarPumpList" parameterType="ArdAlarmRadarPump" resultMap="ArdAlarmRadarPumpResult">
        <include refid="selectArdAlarmRadarPumpVo"/>
        <where>
            <if test="name != null  and name != ''"> and name like '%'||#{name}||'%'</if>
            <if test="targetId != null  and targetId != ''"> and target_id = #{targetId}</if>
            <if test="alarmType != null  and alarmType != ''"> and alarm_type = #{alarmType}</if>
            <if test="alarmTime != null "> and alarm_time = #{alarmTime}</if>
            <if test="longitude != null "> and longitude = #{longitude}</if>
            <if test="latitude != null "> and latitude = #{latitude}</if>
            <if test="recordUrl1 != null  and recordUrl1 != ''"> and record_url1 = #{recordUrl1}</if>
            <if test="viewTime != null "> and view_time = #{viewTime}</if>
            <if test="userId != null  and userId != ''"> and user_id = #{userId}</if>
            <if test="deptId != null "> and dept_id = #{deptId}</if>
            <if test="guideFlag != null "> and guide_flag = #{guideFlag}</if>
        </where>
    </select>
    <select id="selectArdAlarmRadarPumpById" parameterType="String" resultMap="ArdAlarmRadarPumpResult">
        <include refid="selectArdAlarmRadarPumpVo"/>
        where id = #{id}
    </select>
    <insert id="insertArdAlarmRadarPump" parameterType="ArdAlarmRadarPump">
        insert into ard_alarm_radar_pump
        <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="recordUrl1 != null">record_url1,</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>
            <if test="guideFlag != null">guide_flag,</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="recordUrl1 != null">#{recordUrl1},</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>
            <if test="guideFlag != null">#{guideFlag},</if>
         </trim>
    </insert>
    <update id="updateArdAlarmRadarPump" parameterType="ArdAlarmRadarPump">
        update ard_alarm_radar_pump
        <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="recordUrl1 != null">record_url1 = #{recordUrl1},</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>
            <if test="guideFlag != null">guide_flag = #{guideFlag},</if>
        </trim>
        where id = #{id}
    </update>
    <delete id="deleteArdAlarmRadarPumpById" parameterType="String">
        delete from ard_alarm_radar_pump where id = #{id}
    </delete>
    <delete id="deleteArdAlarmRadarPumpByIds" parameterType="String">
        delete from ard_alarm_radar_pump where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
    <select id="selectCountByAlarmTime" resultType="Integer">
        SELECT COUNT(DISTINCT aarm.name)
        FROM ard_alarm_radar_pump aarm
        WHERE aarm.alarm_time >= CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE
          and aarm.view_time is null
    </select>
    <select id="selectListAllByCommand" resultMap="ArdAlarmRadarPumpResult">
        select aaar.ID,
               aaar.target_id,
               aaar.NAME,
               aaar.alarm_type,
               aaar.alarm_time,
               aaar.longitude,
               aaar.latitude,
               r.COUNT,
               r.total  from
            (SELECT
                 aar.NAME,
                 max(aar.create_time) as create_time1,
                 count(case when aar.view_time is null THEN 1  END) as count,
                 count(aar.id) as total
             FROM
                 ard_alarm_radar_pump aar
             WHERE
                 aar.create_time >= ( CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE )
             GROUP BY aar.NAME
            ) r
                INNER JOIN ard_alarm_radar aaar ON r.create_time1 = aaar.create_time
    </select>
    <update id="updateViewTimeByCondition" parameterType="String">
        update ard_alarm_radar_pump
        set view_time=#{viewTime}
        where name = #{name}
          and alarm_time&lt;=#{alarmTime}
          and view_time is null
    </update>
</mapper>
ard-work/src/main/resources/mapper/alarm/ArdAlarmWallMapper.xml
@@ -21,7 +21,20 @@
    </resultMap>
    <sql id="selectArdAlarmWallVo">
        select id,wall_id,wall_name, user_id, alarm_type, alarm_time, longitude, latitude, altitude, create_by, create_time, update_by, update_time from ard_alarm_wall
        select id,
               wall_id,
               wall_name,
               user_id,
               alarm_type,
               alarm_time,
               longitude,
               latitude,
               altitude,
               create_by,
               create_time,
               update_by,
               update_time
        from ard_alarm_wall
    </sql>
    <select id="selectArdAlarmWallList" parameterType="ArdAlarmWall" resultMap="ArdAlarmWallResult">
@@ -97,7 +110,9 @@
    </update>
    <delete id="deleteArdAlarmWallById" parameterType="String">
        delete from ard_alarm_wall where id = #{id}
        delete
        from ard_alarm_wall
        where id = #{id}
    </delete>
    <delete id="deleteArdAlarmWallByIds" parameterType="String">
@@ -106,4 +121,39 @@
            #{id}
        </foreach>
    </delete>
    <select id="selectCountByAlarmTime" resultType="Integer">
        SELECT COUNT(DISTINCT aaw.wall_name)
        FROM ard_alarm_wall aaw
        WHERE aaw.alarm_time >= CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE
          and aaw.view_time is null
    </select>
    <select id="selectListAllByCommand" resultMap="ArdAlarmWallResult">
        SELECT T.*
        FROM (
                 SELECT aaa.ID,
                        aaa.user_id,
                        aaa.wall_NAME,
                        aaa.alarm_time,
                        aaa.longitude,
                        aaa.latitude,
                        aaa.altitude,
                        ROW_NUMBER() OVER ( PARTITION BY aaa.wall_NAME ORDER BY aaa.alarm_time DESC ) AS rn,
                        COUNT(CASE WHEN aaa.view_time IS NULL THEN 1 END) OVER ( PARTITION BY aaa.wall_NAME ) AS COUNT,
                        COUNT ( aaa.alarm_time ) OVER ( PARTITION BY aaa.wall_NAME ) AS total
                 FROM
                     ard_alarm_wall aaa
                 WHERE
                     aaa.alarm_time >= ( CURRENT_TIMESTAMP - INTERVAL '%${refreshTime}%' MINUTE )
                 ORDER BY
                     aaa.create_time DESC
             ) T
        WHERE T.rn = 1
    </select>
    <update id="updateViewTimeByUserId" parameterType="String">
        update ard_alarm_wall
        set view_time=#{viewTime}
        where user_id = #{userId}
          and create_time &lt;= #{createTime}
          and view_time is null
    </update>
</mapper>
ard-work/src/main/resources/mapper/device/ArdEquipRadarMapper.xml
@@ -183,7 +183,9 @@
    </update>
    <delete id="deleteArdEquipRadarById" parameterType="String">
        delete from ard_equip_radar where id = #{id}
        delete
        from ard_equip_radar
        where id = #{id}
    </delete>
    <delete id="deleteArdEquipRadarByIds" parameterType="String">
@@ -192,4 +194,12 @@
            #{id}
        </foreach>
    </delete>
    <select id="getCameraByRadar" resultType="String">
        select ac.id
        from ard_equip_radar aer
                 INNER JOIN ard_towers at
        on aer.tower_id= at.id
            INNER JOIN ard_cameras ac on aer.tower_id=ac.tower_id
        where aer.id=#{radarId} limit 1
    </select>
</mapper>