ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java
@@ -1002,32 +1002,44 @@ ardAlarmRadarMove.setId(uuid); ardAlarmRadarMove.setTargetId(targetId); ardAlarmRadarMove.setAlarmTime(radarAlarmData.getAlarmTime()); ardAlarmRadarMove.setCreateTime(new Date()); ardAlarmRadarMove.setCreateTime(DateUtils.covertTime(new Date())); ardAlarmRadarMove.setName(alarmpointName + "(" + radarAlarmData.getRadarName() + ")"); ardAlarmRadarMove.setAlarmType("运动目标检测"); ardAlarmRadarMove.setLongitude(longitude); ardAlarmRadarMove.setLatitude(latitude); ardAlarmRadarMove.setUpdateTime(radarAlarmData.getAlarmTime()); ardAlarmRadarMove.setRadarId(radarId); Date alarmTime = ardAlarmRadarMove.getAlarmTime(); //获取当前兴趣点当前雷达的上一条数据 ArdAlarmRadarMove lastMoveData = ardAlarmRadarMoveMapper.selectArdAlarmRadarLastData(ardAlarmRadarMove.getName()); if (lastMoveData == null) { //入库 ardAlarmRadarMove.setGuideTime(alarmTime); ardAlarmRadarMoveMapper.insertArdAlarmRadarMove(ardAlarmRadarMove); radarMoveGuide(ardAlarmRadarMove);//引导 } else { //否则比对更新时间 Date lastUpdateTime = lastMoveData.getUpdateTime(); Date alarmTime = ardAlarmRadarMove.getAlarmTime(); Date lastGuideTime = lastMoveData.getGuideTime(); long secDatePoor = DateUtils.getSecDatePoor(alarmTime,lastUpdateTime); if (secDatePoor <= radarMergeTime) { //小于10秒的新数据,更新上一条 ArdAlarmRadarMove updateData = new ArdAlarmRadarMove(); updateData.setId(lastMoveData.getId()); updateData.setUpdateTime(alarmTime); //判断引导时间超过5分钟再次引导 long secDatePoorGuide = DateUtils.getSecDatePoor(alarmTime,lastGuideTime); if(secDatePoorGuide>=300) { updateData.setGuideTime(alarmTime); radarMoveGuide(ardAlarmRadarMove);//引导 } ardAlarmRadarMoveMapper.updateArdAlarmRadarMove(updateData); } else { //超过10秒的数据,入库 ardAlarmRadarMove.setGuideTime(alarmTime); ardAlarmRadarMoveMapper.insertArdAlarmRadarMove(ardAlarmRadarMove); radarMoveGuide(ardAlarmRadarMove);//引导 } @@ -1046,7 +1058,7 @@ ardAlarmRadarFire.setId(uuid); ardAlarmRadarFire.setTargetId(targetId); ardAlarmRadarFire.setAlarmTime(radarAlarmData.getAlarmTime()); ardAlarmRadarFire.setCreateTime(new Date()); ardAlarmRadarFire.setCreateTime(DateUtils.covertTime(new Date())); ardAlarmRadarFire.setName(alarmpointName + "(" + radarAlarmData.getRadarName() + ")"); ardAlarmRadarFire.setAlarmType("热源检测"); ardAlarmRadarFire.setLongitude(longitude); @@ -1055,24 +1067,35 @@ ardAlarmRadarFire.setUpdateTime(radarAlarmData.getAlarmTime()); // ArdAlarmRadarFire lastFireData = ardAlarmRadarFireMapper.selectArdAlarmRadarLastData(ardAlarmRadarFire.getName()); alarmTime = ardAlarmRadarFire.getAlarmTime(); if (lastFireData == null) { //入库 ardAlarmRadarFire.setGuideTime(alarmTime); ardAlarmRadarFireMapper.insertArdAlarmRadarFire(ardAlarmRadarFire); radarFireGuide(ardAlarmRadarFire);//引导 } else { //否则比对更新时间 Date lastUpdateTime = lastFireData.getUpdateTime(); Date alarmTime = ardAlarmRadarFire.getAlarmTime(); Date lastGuideTime = lastFireData.getGuideTime(); long secDatePoor = DateUtils.getSecDatePoor(alarmTime,lastUpdateTime); if (secDatePoor <= radarMergeTime) { //小于10秒的新数据,更新上一条 ArdAlarmRadarFire updateData = new ArdAlarmRadarFire(); updateData.setId(lastFireData.getId()); updateData.setUpdateTime(alarmTime); //判断引导时间超过5分钟再次引导 long secDatePoorGuide = DateUtils.getSecDatePoor(alarmTime,lastGuideTime); if(secDatePoorGuide>=300) { updateData.setGuideTime(alarmTime); radarFireGuide(ardAlarmRadarFire);//引导 } ardAlarmRadarFireMapper.updateArdAlarmRadarFire(updateData); } else { //超过10秒的数据,入库 ardAlarmRadarFire.setGuideTime(alarmTime); ardAlarmRadarFireMapper.insertArdAlarmRadarFire(ardAlarmRadarFire); radarFireGuide(ardAlarmRadarFire);//引导 } @@ -1084,10 +1107,11 @@ ardAlarmRadarPump.setId(uuid); ardAlarmRadarPump.setTargetId(targetId); ardAlarmRadarPump.setAlarmTime(radarAlarmData.getAlarmTime()); ardAlarmRadarPump.setCreateTime(new Date()); ardAlarmRadarPump.setCreateTime(DateUtils.covertTime(new Date())); ardAlarmRadarPump.setName(ardAlarmRadar.getName() + "(" + radarAlarmData.getRadarName() + ")"); ardAlarmRadarPump.setAlarmType("雷达抽油机停机"); ardAlarmRadarPump.setUpdateTime(radarAlarmData.getAlarmTime()); alarmTime = ardAlarmRadarPump.getAlarmTime(); ArdAlarmpointsWell ardAlarmpointsWell = ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(alarmpointName); if (StringUtils.isNotNull(ardAlarmpointsWell)) { ardAlarmRadarPump.setLongitude(ardAlarmpointsWell.getLongitude()); @@ -1097,21 +1121,30 @@ ArdAlarmRadarPump lastPumpData = ardAlarmRadarPumpMapper.selectArdAlarmRadarLastData(ardAlarmRadarPump.getName()); if (lastPumpData == null) { //入库 ardAlarmRadarPump.setGuideTime(alarmTime); ardAlarmRadarPumpMapper.insertArdAlarmRadarPump(ardAlarmRadarPump); radarPumpGuide(ardAlarmRadarPump);//引导 } else { //否则比对更新时间 Date lastUpdateTime = lastPumpData.getUpdateTime(); Date alarmTime = ardAlarmRadarPump.getAlarmTime(); Date lastGuideTime = lastPumpData.getGuideTime(); long secDatePoor = DateUtils.getSecDatePoor(alarmTime,lastUpdateTime); if (secDatePoor <= radarMergeTime) { //小于10秒的新数据,更新上一条 ArdAlarmRadarPump updateData = new ArdAlarmRadarPump(); updateData.setId(lastPumpData.getId()); updateData.setUpdateTime(alarmTime); //判断引导时间超过5分钟再次引导 long secDatePoorGuide = DateUtils.getSecDatePoor(alarmTime,lastGuideTime); if(secDatePoorGuide>=300) { radarPumpGuide(ardAlarmRadarPump);//引导 updateData.setGuideTime(alarmTime); } ardAlarmRadarPumpMapper.updateArdAlarmRadarPump(updateData); } else { //超过10秒的数据,入库 ardAlarmRadarPump.setGuideTime(alarmTime); ardAlarmRadarPumpMapper.insertArdAlarmRadarPump(ardAlarmRadarPump); radarPumpGuide(ardAlarmRadarPump);//引导 } @@ -1347,7 +1380,7 @@ //如果雷达塔上有光电 messagesEnqueued(cameraIdWithTower, alarmId, alarmType, createTime, 1, 1, coordinate); } else { log.debug("未获取到雷达塔上的光电"); log.debug("未获取到雷达塔上的光电,无法引导"); } //获取报警点关联的大光电 ArdAlarmpointsWell ardAlarmpointsWell = ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(alarmpointName); @@ -1360,11 +1393,12 @@ //如果报警点关联了光电 messagesEnqueued(cameraId, alarmId, alarmType, createTime, 1, 2, coordinate); } else { log.debug("未获取到报警点关联的光电"); log.debug("未获取到报警点关联的光电,无法引导"); } } //雷达移动引导 private void radarMoveGuide(ArdAlarmRadarMove ardAlarmRadarMove) { log.debug("雷达移动开始引导"); if (StringUtils.isNull(ardAlarmRadarMove.getLongitude()) || StringUtils.isNull(ardAlarmRadarMove.getLatitude())) { log.debug("坐标为空不引导"); return; @@ -1375,6 +1409,7 @@ } //雷达防火引导 private void radarFireGuide(ArdAlarmRadarFire ardAlarmRadarFire) { log.debug("雷达防火开始引导"); if (StringUtils.isNull(ardAlarmRadarFire.getLongitude()) || StringUtils.isNull(ardAlarmRadarFire.getLatitude())) { log.debug("坐标为空不引导"); return; @@ -1385,6 +1420,7 @@ } //雷达抽油机停机引导 private void radarPumpGuide(ArdAlarmRadarPump ardAlarmRadarPump) { log.debug("雷达抽油机停机开始引导"); if (StringUtils.isNull(ardAlarmRadarPump.getLongitude()) || StringUtils.isNull(ardAlarmRadarPump.getLatitude())) { //坐标为空不引导 log.debug("坐标为空不引导"); @@ -1393,166 +1429,6 @@ double[] coordinate = new double[]{ardAlarmRadarPump.getLongitude(), ardAlarmRadarPump.getLatitude()};//报警坐标 //引导入队 radarGuideToQueue(ardAlarmRadarPump.getId(), ardAlarmRadarPump.getRadarId(), ardAlarmRadarPump.getName(), ardAlarmRadarPump.getAlarmType(), ardAlarmRadarPump.getCreateTime(), coordinate);//更新 } //每个点位未引导次数 private Map<String, Integer> unGuideCountMapMove = new HashMap<>(); private Map<String, Integer> unGuideCountMapFire = new HashMap<>(); private Map<String, Integer> unGuideCountMapPump = new HashMap<>(); 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)); if (ardAlarmRadarMoves.size() > 0) { 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)); if (ardAlarmRadarFires.size() > 0) { 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)); if (ardAlarmRadarPumps.size() > 0) { 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
@@ -5,14 +5,12 @@ import com.ruoyi.alarm.external.domain.ArdAlarmExternal; 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; import com.ruoyi.common.utils.StringUtils; ard-work/src/main/java/com/ruoyi/alarm/radar/controller/ArdAlarmRadarController.java
文件已删除 ard-work/src/main/java/com/ruoyi/alarm/radar/domain/ArdAlarmRadarFire.java
@@ -2,6 +2,7 @@ import java.util.Date; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.ruoyi.common.annotation.Excel; @@ -13,6 +14,7 @@ * @author ard * @date 2023-09-02 */ @Data public class ArdAlarmRadarFire extends BaseEntity { private static final long serialVersionUID = 1L; @@ -64,9 +66,10 @@ @Excel(name = "部门ID") private Long deptId; /** 引导标记 */ @Excel(name = "引导标记") private Integer guideFlag; /** 引导时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = "引导时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date guideTime; /** * 报警总数 @@ -82,164 +85,6 @@ */ private String radarId; public String getRadarId() { return radarId; } public void setRadarId(String radarId) { this.radarId = radarId; } 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
@@ -2,6 +2,7 @@ import java.util.Date; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.ruoyi.common.annotation.Excel; @@ -13,6 +14,7 @@ * @author ard * @date 2023-09-02 */ @Data public class ArdAlarmRadarMove extends BaseEntity { private static final long serialVersionUID = 1L; @@ -64,9 +66,10 @@ @Excel(name = "部门ID") private Long deptId; /** 引导标记 */ @Excel(name = "引导标记") private Integer guideFlag; /** 引导时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = "引导时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date guideTime; /** * 报警总数 @@ -82,163 +85,5 @@ private String RadarId; public String getRadarId() { return RadarId; } public void setRadarId(String radarId) { RadarId = radarId; } 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
@@ -2,6 +2,7 @@ import java.util.Date; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.ruoyi.common.annotation.Excel; @@ -13,6 +14,7 @@ * @author ard * @date 2023-09-02 */ @Data public class ArdAlarmRadarPump extends BaseEntity { private static final long serialVersionUID = 1L; @@ -64,9 +66,10 @@ @Excel(name = "部门ID") private Long deptId; /** 引导标记 */ @Excel(name = "引导标记") private Integer guideFlag; /** 引导时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = "引导时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date guideTime; /** @@ -81,164 +84,4 @@ * 雷达ID */ private String radarId; public String getRadarId() { return radarId; } public void setRadarId(String radarId) { this.radarId = radarId; } 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
@@ -2,9 +2,7 @@ import java.util.List; import com.ruoyi.alarm.radar.domain.ArdAlarmRadar; import com.ruoyi.alarm.radar.domain.ArdAlarmRadarFire; import com.ruoyi.alarm.radar.domain.ArdAlarmRadarMove; import org.apache.ibatis.annotations.Param; /** ard-work/src/main/java/com/ruoyi/alarm/radar/mapper/ArdAlarmRadarMapper.java
文件已删除 ard-work/src/main/java/com/ruoyi/alarm/radar/mapper/ArdAlarmRadarMoveMapper.java
@@ -2,7 +2,6 @@ import java.util.List; import com.ruoyi.alarm.radar.domain.ArdAlarmRadar; import com.ruoyi.alarm.radar.domain.ArdAlarmRadarMove; import org.apache.ibatis.annotations.Param; ard-work/src/main/java/com/ruoyi/alarm/radar/mapper/ArdAlarmRadarPumpMapper.java
@@ -2,8 +2,6 @@ import java.util.List; import com.ruoyi.alarm.radar.domain.ArdAlarmRadar; import com.ruoyi.alarm.radar.domain.ArdAlarmRadarFire; import com.ruoyi.alarm.radar.domain.ArdAlarmRadarPump; import org.apache.ibatis.annotations.Param; ard-work/src/main/java/com/ruoyi/alarm/radar/service/IArdAlarmRadarService.java
文件已删除 ard-work/src/main/java/com/ruoyi/alarm/radar/service/impl/ArdAlarmRadarServiceImpl.java
文件已删除 ard-work/src/main/java/com/ruoyi/media/service/impl/MediaServiceImpl.java
@@ -95,7 +95,7 @@ //GPU硬解码编码 -hwaccel cuvid -c:v h264_cuvid 使用cuda解码 -c:v h264_nvenc 使用cuda编码 //String cmd = rootPath + "/lib/mediamtx/" + "ffmpeg -hwaccel cuvid -c:v h264_cuvid -rtsp_transport udp -i " + rtspPath + " -c:v h264_nvenc -r 25 -threads 4 -b:v 2048k -bf 0 -f rtsp rtsp://localhost:$RTSP_PORT/$MTX_PATH"; if (isCode.equals("1")) { String cmd = "ffmpeg -rtsp_transport tcp -i " + sourceUrl + " -vcodec libx264 -preset:v ultrafast -r 25 -keyint_min 25 -g 25 -sc_threshold 0 -threads 6 -b:v 2048k -acodec pcm_alaw -strict -2 -f rtsp rtsp://localhost:$RTSP_PORT/$MTX_PATH"; String cmd = "ffmpeg -rtsp_transport tcp -i " + sourceUrl + " -vcodec libx264 -preset:v ultrafast -r 25 -keyint_min 25 -g 25 -sc_threshold 0 -threads 6 -b:v 2048k -acodec opus -strict -2 -f rtsp rtsp://localhost:$RTSP_PORT/$MTX_PATH"; if (!softwareDecoding) { cmd = "ffmpeg -hwaccel cuvid -c:v h264_cuvid -rtsp_transport tcp -i " + sourceUrl + " -c:v h264_nvenc -r 25 -g 60 -threads 6 -b:v 2048k -bf 0 -acodec opus -strict -2 -f rtsp rtsp://localhost:$RTSP_PORT/$MTX_PATH"; } @@ -296,7 +296,7 @@ String rtmpUrl = "rtmp://" + mediamtxHost + ":1935/" + name; info.setRtmpUrl(rtmpUrl); //RTSP播放地址 String rtspUrl = "rtsp://" + mediamtxHost + ":7554/" + name; String rtspUrl = "rtsp://" + mediamtxHost + ":8554/" + name; info.setRtspUrl(rtspUrl); //WEBRTC播放地址 String webrtcUrl = "http://" + mediamtxHost + ":8889/" + name; ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarFireMapper.xml
@@ -18,11 +18,11 @@ <result property="createTime" column="create_time" /> <result property="userId" column="user_id" /> <result property="deptId" column="dept_id" /> <result property="guideFlag" column="guide_flag" /> <result property="guideTime" column="guide_time" /> </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 select id, name, target_id, alarm_type, alarm_time, longitude, latitude, record_url1, view_time, create_by, create_time, user_id, dept_id, guide_time from ard_alarm_radar_fire </sql> <select id="selectArdAlarmRadarFireList" parameterType="ArdAlarmRadarFire" resultMap="ArdAlarmRadarFireResult"> @@ -38,7 +38,7 @@ <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> <if test="guideTime != null "> and guide_time = #{guideTime}</if> <if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 --> AND alarm_time >= to_timestamp(#{params.beginTime},'yyyy-MM-DD HH24:MI:ss') </if> @@ -71,7 +71,7 @@ <if test="updateTime != null">update_time,</if> <if test="userId != null">user_id,</if> <if test="deptId != null">dept_id,</if> <if test="guideFlag != null">guide_flag,</if> <if test="guideTime != null">guide_time,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="id != null">#{id},</if> @@ -88,7 +88,7 @@ <if test="updateTime != null">#{updateTime},</if> <if test="userId != null">#{userId},</if> <if test="deptId != null">#{deptId},</if> <if test="guideFlag != null">#{guideFlag},</if> <if test="guideTime != null">#{guideTime},</if> </trim> </insert> @@ -108,7 +108,7 @@ <if test="updateTime != null">update_time = #{updateTime},</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> <if test="guideTime != null">guide_time = #{guideTime},</if> </trim> where id = #{id} </update> ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarMapper.xml
文件已删除 ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarMoveMapper.xml
@@ -19,11 +19,11 @@ <result property="createTime" column="create_time" /> <result property="userId" column="user_id" /> <result property="deptId" column="dept_id" /> <result property="guideFlag" column="guide_flag" /> <result property="guideTime" column="guide_Time" /> </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 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_time from ard_alarm_radar_move </sql> <select id="selectArdAlarmRadarMoveList" parameterType="ArdAlarmRadarMove" resultMap="ArdAlarmRadarMoveResult"> @@ -39,7 +39,7 @@ <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> <if test="guideTime != null "> and guide_time = #{guideTime}</if> <if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 --> AND alarm_time >= to_timestamp(#{params.beginTime},'yyyy-MM-DD HH24:MI:ss') </if> @@ -73,7 +73,7 @@ <if test="updateTime != null">update_time,</if> <if test="userId != null">user_id,</if> <if test="deptId != null">dept_id,</if> <if test="guideFlag != null">guide_flag,</if> <if test="guideTime != null">guide_time,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="id != null">#{id},</if> @@ -91,7 +91,7 @@ <if test="updateTime != null">#{updateTime},</if> <if test="userId != null">#{userId},</if> <if test="deptId != null">#{deptId},</if> <if test="guideFlag != null">#{guideFlag},</if> <if test="guideTime != null">#{guideTime},</if> </trim> </insert> @@ -112,7 +112,7 @@ <if test="updateTime != null">update_time = #{updateTime},</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> <if test="guideTime != null">guide_time = #{guideTime},</if> </trim> where id = #{id} </update> ard-work/src/main/resources/mapper/alarm/ArdAlarmRadarPumpMapper.xml
@@ -18,11 +18,11 @@ <result property="createTime" column="create_time" /> <result property="userId" column="user_id" /> <result property="deptId" column="dept_id" /> <result property="guideFlag" column="guide_flag" /> <result property="guideTime" column="guide_time" /> </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 select id, name, target_id, alarm_type, alarm_time, longitude, latitude, record_url1, view_time, create_by, create_time, user_id, dept_id, guide_time from ard_alarm_radar_pump </sql> <select id="selectArdAlarmRadarPumpList" parameterType="ArdAlarmRadarPump" resultMap="ArdAlarmRadarPumpResult"> @@ -38,7 +38,7 @@ <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> <if test="guideTime != null "> and guide_time = #{guideTime}</if> <if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 --> AND alarm_time >= to_timestamp(#{params.beginTime},'yyyy-MM-DD HH24:MI:ss') </if> @@ -71,7 +71,7 @@ <if test="updateTime != null">update_time,</if> <if test="userId != null">user_id,</if> <if test="deptId != null">dept_id,</if> <if test="guideFlag != null">guide_flag,</if> <if test="guideTime != null">guide_time,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="id != null">#{id},</if> @@ -88,7 +88,7 @@ <if test="updateTime != null">#{updateTime},</if> <if test="userId != null">#{userId},</if> <if test="deptId != null">#{deptId},</if> <if test="guideFlag != null">#{guideFlag},</if> <if test="guideTime != null">#{guideTime},</if> </trim> </insert> @@ -108,7 +108,7 @@ <if test="updateTime != null">update_time = #{updateTime},</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> <if test="guideTime != null">guide_time = #{guideTime},</if> </trim> where id = #{id} </update> ruoyi-common/src/main/java/com/ruoyi/common/utils/DateUtils.java
@@ -1,6 +1,7 @@ package com.ruoyi.common.utils; import java.lang.management.ManagementFactory; import java.sql.Timestamp; import java.text.ParseException; import java.text.SimpleDateFormat; import java.time.LocalDate; @@ -84,6 +85,19 @@ } } public static final Date covertTime(Date date) { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Timestamp now = new Timestamp(date.getTime()); String str = df.format(now); Date newDate = null; try { newDate = df.parse(str); } catch (ParseException e) { throw new RuntimeException("转换日期去掉毫秒异常"); } return newDate; } /** * 日期路径 即年/月/日 如2018/08/08 */