From 67d965cb476bde49109a3773532c33dd9de60518 Mon Sep 17 00:00:00 2001
From: Administrator <1144154118@qq.com>
Date: Wed, 09 Aug 2023 13:30:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RongCloudTask.java | 35 +++---
ard-work/src/main/java/com/ruoyi/test/ReadAccessDatabase.java | 11 +
ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm | 4
ard-work/pom.xml | 5
ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java | 5
/dev/null | 29 -----
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/MinioTask.java | 12 +-
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java | 25 +---
ruoyi-common/src/main/java/com/ruoyi/common/enums/BusinessType.java | 3
ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java | 15 +-
ard-work/src/main/java/com/ruoyi/alarmpoints/well/domain/ArdAlarmpointsWell.java | 2
ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java | 78 +++++++-------
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java | 6
ard-work/src/main/java/com/ruoyi/alarmpoints/well/service/impl/ArdAlarmpointsWellServiceImpl.java | 2
ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java | 18 ++-
ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/SdkOperateAspect.java | 24 ++--
ard-work/src/main/java/com/ruoyi/device/uav/service/UavService.java | 5
17 files changed, 130 insertions(+), 149 deletions(-)
diff --git a/ard-work/pom.xml b/ard-work/pom.xml
index 0eeefb3..bfe265f 100644
--- a/ard-work/pom.xml
+++ b/ard-work/pom.xml
@@ -31,10 +31,6 @@
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-common</artifactId>
</dependency>
- <!-- <dependency>-->
- <!-- <groupId>org.projectlombok</groupId>-->
- <!-- <artifactId>lombok</artifactId>-->
- <!-- </dependency>-->
<!--海康录像机二次开发依赖jar包-->
<dependency>
@@ -173,6 +169,7 @@
<version>3.0.3</version>
<scope>compile</scope>
</dependency>
+
</dependencies>
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java
index 94c327e..a5935ee 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java
@@ -30,8 +30,8 @@
import com.ruoyi.common.constant.CacheConstants;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.DictUtils;
import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.constant.CamPriority;
import com.ruoyi.device.external.domain.ArdEquipExternal;
import com.ruoyi.device.external.mapper.ArdEquipExternalMapper;
import com.ruoyi.utils.tools.ArdTool;
@@ -42,16 +42,12 @@
import com.ruoyi.system.service.ISysConfigService;
import com.ruoyi.utils.tube.GeoPoint;
import com.ruoyi.utils.tube.TubeTools;
-import lombok.AllArgsConstructor;
-import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
-
import javax.annotation.Resource;
import java.text.SimpleDateFormat;
import java.util.*;
-import java.util.concurrent.PriorityBlockingQueue;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@@ -694,8 +690,13 @@
//接收时间
guideTask.setReceiveTime(fmt.format(receiveTime));
//报警优先级(通过优先级字典)
- Integer priority = CamPriority.priorityMap.get(alarmType);
- guideTask.setPriority(priority);
+ String priority = DictUtils.getDictValue("cameras_priority", alarmType);
+ if(StringUtils.isEmpty(priority))
+ {
+ log.debug("未匹配到优先级,请检查优先级字典配置");
+ return;
+ }
+ guideTask.setPriority(Integer.valueOf(priority));
//报警次数
guideTask.setNum(num);
//录像存储位置
diff --git a/ard-work/src/main/java/com/ruoyi/alarmpoints/well/domain/ArdAlarmpointsWell.java b/ard-work/src/main/java/com/ruoyi/alarmpoints/well/domain/ArdAlarmpointsWell.java
index 5d8528c..b9be340 100644
--- a/ard-work/src/main/java/com/ruoyi/alarmpoints/well/domain/ArdAlarmpointsWell.java
+++ b/ard-work/src/main/java/com/ruoyi/alarmpoints/well/domain/ArdAlarmpointsWell.java
@@ -2,7 +2,9 @@
import java.util.Date;
+import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
diff --git a/ard-work/src/main/java/com/ruoyi/alarmpoints/well/service/impl/ArdAlarmpointsWellServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarmpoints/well/service/impl/ArdAlarmpointsWellServiceImpl.java
index 5837b00..e89ccca 100644
--- a/ard-work/src/main/java/com/ruoyi/alarmpoints/well/service/impl/ArdAlarmpointsWellServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/alarmpoints/well/service/impl/ArdAlarmpointsWellServiceImpl.java
@@ -14,6 +14,7 @@
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.bean.BeanValidators;
import com.ruoyi.common.utils.spring.SpringUtils;
+import com.ruoyi.common.utils.uuid.IdUtils;
import lombok.ToString;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -95,6 +96,7 @@
{
throw new RuntimeException("井号已存在");
}
+ ardAlarmpointsWell.setId(IdUtils.simpleUUID());
ardAlarmpointsWell.setUserId(SecurityUtils.getUserId());
ardAlarmpointsWell.setCreateBy(SecurityUtils.getUsername());
ardAlarmpointsWell.setCreateTime(DateUtils.getNowDate());
diff --git a/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java b/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java
index 0832eee..d6ab9f7 100644
--- a/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java
@@ -55,7 +55,10 @@
@Override
public ArdAppTask selectArdAppTaskById(String id) {
ArdAppTask ardAppTask = ardAppTaskMapper.selectArdAppTaskById(id);
-
+ if(StringUtils.isNull(ardAppTask))
+ {
+ return null;
+ }
List<ArdAppTaskDetail> ardAppTaskDetailList = ardAppTask.getArdAppTaskDetailList();
if(ardAppTaskDetailList.size()>0)
{
diff --git a/ard-work/src/main/java/com/ruoyi/constant/CamPriority.java b/ard-work/src/main/java/com/ruoyi/constant/CamPriority.java
deleted file mode 100644
index 3b651b6..0000000
--- a/ard-work/src/main/java/com/ruoyi/constant/CamPriority.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.ruoyi.constant;
-
-import lombok.extern.slf4j.Slf4j;
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * @Description: 相机控制优先级
- * @ClassName: sdkPriority
- * @Author: 刘苏义
- * @Date: 2023年05月23日11:25
- * @Version: 1.0
- **/
-@Slf4j
-public class CamPriority {
-
- public static Map<String, Integer> priorityMap = new HashMap<>();
-
- static {
- priorityMap.put("sys_radar_fire", 999);//雷达防火报警
- priorityMap.put("sys_radar_move", 900);//雷达移动报警
- priorityMap.put("sys_tube_leak", 800);//管线泄露报警
- priorityMap.put("sys_radar_pumpshutdown", 800);//雷达抽油机停机
- priorityMap.put("sys_external", 700);//外联报警
- priorityMap.put("sys_access_control", 600);//门禁报警
- priorityMap.put("sys_app_onekey", 500);//app一键报警
- priorityMap.put("sys_patrol_inspect", 1);//巡检
- }
-}
diff --git a/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java b/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java
index cfc76bf..60c0b26 100644
--- a/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java
@@ -179,7 +179,7 @@
int i = hCNetSDK.NET_DVR_Login_V40(m_strLoginInfo, m_strDeviceInfo);
if (i < 0) {
int errorCode = hCNetSDK.NET_DVR_GetLastError();
- log.info("登录异常:" + errorCode);
+ log.error("登录异常:" + errorCode);
}
}
@@ -328,7 +328,7 @@
boolean bool = hCNetSDK.NET_DVR_PTZControlWithSpeed_Other(userId, channelNum, dwPTZCommand, dwStop, speed);
if (!bool) {
int errorCode = hCNetSDK.NET_DVR_GetLastError();
- log.info("控制失败,请稍后重试" + errorCode);
+ log.error("控制失败,请稍后重试" + errorCode);
}
return bool;
}
@@ -356,7 +356,7 @@
boolean bool = hCNetSDK.NET_DVR_GetDVRConfig(userId, NET_DVR_GET_FOCUSMODECFG, channelNum, point, focusmodeCfg.size(), ibrBytesReturned);
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("设置聚焦值失败,请稍后重试" + code);
+ log.error("设置聚焦值失败,请稍后重试" + code);
}
return bool;
}
@@ -389,7 +389,7 @@
return map;
} else {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("获取聚焦值失败,请稍后重试" + code);
+ log.debug("获取聚焦值失败,请稍后重试" + code);
return new HashMap<>();
}
}
@@ -412,7 +412,7 @@
boolean bool = hCNetSDK.NET_DVR_PTZPreset_Other(userId, channelNum, SET_PRESET, PresetIndex);
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("预置点设置失败,请稍后重试" + code);
+ log.error("预置点设置失败,请稍后重试" + code);
}
return bool;
}
@@ -435,7 +435,7 @@
boolean bool = hCNetSDK.NET_DVR_PTZPreset_Other(userId, channelNum, GOTO_PRESET, PresetIndex);
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("预置点设置失败,请稍后重试" + code);
+ log.error("预置点设置失败,请稍后重试" + code);
}
return bool;
}
@@ -537,7 +537,7 @@
}
} else {
int code = hCNetSDK.NET_DVR_GetLastError();
- System.out.println("控制失败,请稍后重试" + code);
+ log.error("控制失败,请稍后重试" + code);
}
} catch (Exception ex) {
log.error(ex.getMessage());
@@ -589,7 +589,7 @@
return ptzMap;
} else {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("控制失败,请稍后重试" + code);
+ log.error("控制失败,请稍后重试" + code);
return new HashMap<>();
}
@@ -627,7 +627,7 @@
boolean bool = hCNetSDK.NET_DVR_SetDVRConfig(userId, NET_DVR_SET_PTZPOS, channelNum, point, m_ptzPosCurrent.size());
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("设置ptz失败,请稍后重试" + code);
+ log.error("设置ptz失败,请稍后重试" + code);
}
return bool;
} catch (Exception ex) {
@@ -663,7 +663,7 @@
boolean bool = hCNetSDK.NET_DVR_SetDVRConfig(userId, NET_DVR_SET_PTZPOS, channelNum, point, m_ptzPosCurrent.size());
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("设置ptz失败,请稍后重试" + code);
+ log.error("设置ptz失败,请稍后重试" + code);
}
return bool;
} catch (Exception ex) {
@@ -739,7 +739,7 @@
boolean bool = hCNetSDK.NET_DVR_GetDVRConfig(userId, NET_DVR_GET_PTZLOCKCFG, channelNum, point, netDvrPtzLockcfg.size(), ibrBytesReturned);
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("获取ptz锁定信息失败,请稍后重试" + code);
+ log.error("获取ptz锁定信息失败,请稍后重试" + code);
return -1;
} else {
netDvrPtzLockcfg.read();
@@ -803,7 +803,7 @@
boolean bool = hCNetSDK.NET_DVR_GetDVRConfig(userId, NET_DVR_GET_PTZSCOPE, channelNum, point, m_ptzPosCurrent.size(), ibrBytesReturned);
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("设置ptz失败,请稍后重试" + code);
+ log.error("设置ptz失败,请稍后重试" + code);
return new HashMap<>();
} else {
m_ptzPosCurrent.read();
@@ -853,7 +853,7 @@
log.error("获取前端参数失败,错误码:" + hCNetSDK.NET_DVR_GetLastError());
}
struCameraParam.read();
- log.info("是否开启透雾:" + struCameraParam.struDefogCfg.byMode);
+ log.debug("是否开启透雾:" + struCameraParam.struDefogCfg.byMode);
NET_DVR_DEFOGCFG defogcfg = new NET_DVR_DEFOGCFG();
if (enable) {
@@ -867,9 +867,9 @@
boolean bool = hCNetSDK.NET_DVR_SetDVRConfig(userId, NET_DVR_SET_CCDPARAMCFG_EX, channelNum, point, struCameraParam.size());
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("设置透雾失败,请稍后重试" + code);
+ log.error("设置透雾失败,请稍后重试" + code);
}
- log.info("设置透雾成功");
+ log.debug("设置透雾成功");
return bool;
}
@@ -899,7 +899,7 @@
log.error("获取前端参数失败,错误码:" + hCNetSDK.NET_DVR_GetLastError());
}
struDayNigh.read();
- log.info("是否开启夜视:" + struDayNigh.struDayNight.byDayNightFilterType);
+ log.debug("是否开启夜视:" + struDayNigh.struDayNight.byDayNightFilterType);
NET_DVR_DAYNIGHT daynight = new NET_DVR_DAYNIGHT();
if (enable) {
@@ -915,9 +915,9 @@
boolean bool = hCNetSDK.NET_DVR_SetDVRConfig(userId, NET_DVR_SET_CCDPARAMCFG_EX, channelNum, point, struDayNigh.size());
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("设置夜视失败,请稍后重试" + code);
+ log.error("设置夜视失败,请稍后重试" + code);
}
- log.info("设置夜视成功");
+ log.debug("设置夜视成功");
return bool;
}
@@ -944,10 +944,10 @@
IntByReference ibrBytesReturned = new IntByReference(0);
boolean b_GetCameraParam = hCNetSDK.NET_DVR_GetDVRConfig(userId, NET_DVR_GET_FOCUSMODECFG, channelNum, point, struFocusMode.size(), ibrBytesReturned);
if (!b_GetCameraParam) {
- System.out.println("获取前端参数失败,错误码:" + hCNetSDK.NET_DVR_GetLastError());
+ log.error("获取前端参数失败,错误码:" + hCNetSDK.NET_DVR_GetLastError());
}
struFocusMode.read();
- log.info("当前聚焦模式:" + struFocusMode.byFocusMode);
+ log.debug("当前聚焦模式:" + struFocusMode.byFocusMode);
if (enable) {
struFocusMode.byFocusMode = 1;//手动聚焦
@@ -961,9 +961,9 @@
boolean bool = hCNetSDK.NET_DVR_SetDVRConfig(userId, NET_DVR_SET_FOCUSMODECFG, channelNum, point, struFocusMode.size());
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("设置聚焦模式失败,请稍后重试" + code);
+ log.error("设置聚焦模式失败,请稍后重试" + code);
}
- log.info("设置聚焦模式成功");
+ log.debug("设置聚焦模式成功");
return bool;
}
@@ -979,10 +979,10 @@
IntByReference ibrBytesReturned = new IntByReference(0);
boolean b_GetCameraParam = hCNetSDK.NET_DVR_GetDVRConfig(userId, NET_DVR_GET_FOCUSMODECFG, channelNum, point, struFocusMode.size(), ibrBytesReturned);
if (!b_GetCameraParam) {
- System.out.println("获取前端参数失败,错误码:" + hCNetSDK.NET_DVR_GetLastError());
+ log.error("获取前端参数失败,错误码:" + hCNetSDK.NET_DVR_GetLastError());
}
struFocusMode.read();
- log.info("当前聚焦模式:" + struFocusMode.byFocusMode);
+ log.debug("当前聚焦模式:" + struFocusMode.byFocusMode);
return String.valueOf(struFocusMode.byFocusMode);
}
@@ -1013,9 +1013,9 @@
boolean bool = hCNetSDK.NET_DVR_PTZControl_Other(userId, channelNum, HEATER_PWRON, dwStop);
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("设置云台加热失败,请稍后重试" + code);
+ log.error("设置云台加热失败,请稍后重试" + code);
}
- log.info("设置云台加热成功");
+ log.debug("设置云台加热成功");
return bool;
}
@@ -1045,7 +1045,7 @@
log.error("获取前端参数失败,错误码:" + hCNetSDK.NET_DVR_GetLastError());
}
struDeicing.read();
- log.info("是否开启除冰:" + struDeicing.byEnableDeicing);
+ log.debug("是否开启除冰:" + struDeicing.byEnableDeicing);
if (enable) {
struDeicing.byEnableDeicing = 1;//开启
@@ -1056,9 +1056,9 @@
boolean bool = hCNetSDK.NET_DVR_SetDVRConfig(userId, NET_DVR_SET_DEVSERVER_CFG, channelNum, point, struDeicing.size());
if (!bool) {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("设置镜头除冰失败,请稍后重试" + code);
+ log.error("设置镜头除冰失败,请稍后重试" + code);
}
- log.info("设置镜头除冰成功");
+ log.debug("设置镜头除冰成功");
return bool;
}
@@ -1090,13 +1090,13 @@
ByteBuffer jpegBuffer = ByteBuffer.allocate(1024 * 1024);
// 抓图到内存,单帧数据捕获并保存成JPEG存放在指定的内存空间中
boolean is = hCNetSDK.NET_DVR_CaptureJPEGPicture_NEW(userId, channelNum, jpeg, jpegBuffer, 1024 * 1024, a);
- log.info("-----------这里开始图片存入内存----------" + is);
+ log.debug("-----------这里开始图片存入内存----------" + is);
Base64.Encoder decoder = Base64.getEncoder();
// BASE64Encoder encoder = new BASE64Encoder();
String png_base64 = decoder.encodeToString(jpegBuffer.array());//转换成base64串
png_base64 = png_base64.replaceAll("\n", "").replaceAll("\r", "");//删除 \r\n
- log.info("-----------处理完成截图数据----------");
+ log.debug("-----------处理完成截图数据----------");
return png_base64;
}
@@ -1134,11 +1134,11 @@
//设置图片大小
ByteBuffer jpegBuffer = ByteBuffer.allocate(1024 * 1024);
// 抓图到内存,单帧数据捕获并保存成JPEG存放在指定的内存空间中
- log.info("-----------这里开始封装 NET_DVR_CaptureJPEGPicture_NEW---------");
+ log.debug("-----------这里开始封装 NET_DVR_CaptureJPEGPicture_NEW---------");
boolean is = hCNetSDK.NET_DVR_CaptureJPEGPicture_NEW(userId, channelNum, jpeg, jpegBuffer, 1024 * 1024, a);
- log.info("-----------这里开始图片存入内存----------" + is);
+ log.debug("-----------这里开始图片存入内存----------" + is);
if (is) {
- log.info("hksdk(抓图)-结果状态值(0表示成功):" + hCNetSDK.NET_DVR_GetLastError());
+ log.debug("hksdk(抓图)-结果状态值(0表示成功):" + hCNetSDK.NET_DVR_GetLastError());
byte[] array = jpegBuffer.array();
//存储到minio
String BucketName = "pic";
@@ -1152,7 +1152,7 @@
boolean b = MinioUtils.uploadObject(BucketName, ObjectName, input, input.available(), ContentType);
if (b) {
url = MinioUtils.getBucketObjectUrl(BucketName, ObjectName);
- log.info("上传文件成功!" + url);
+ log.debug("上传文件成功!" + url);
}
} catch (IOException ex) {
log.error("上传文件异常:" + ex.getMessage());
@@ -1160,7 +1160,7 @@
return url;
} else {
int code = hCNetSDK.NET_DVR_GetLastError();
- log.info("抓图失败,请稍后重试" + code);
+ log.error("抓图失败,请稍后重试" + code);
return "";
}
}
@@ -1212,21 +1212,21 @@
log.error("取流失败" + hCNetSDK.NET_DVR_GetLastError());
return "";
}
- log.info("取流成功");
+ log.debug("取流成功");
GlobalVariable.previewMap.put(cameraId, lRealHandle);
}
if (!hCNetSDK.NET_DVR_SaveRealData_V30(GlobalVariable.previewMap.get(cameraId), 2, path)) {
log.error("保存视频文件到临时文件夹失败 错误码为: " + hCNetSDK.NET_DVR_GetLastError());
return "";
}
- log.info("录像开始");
+ log.debug("录像开始");
} else {
if (GlobalVariable.previewMap.containsKey(cameraId)) {
Integer lRealHandle = GlobalVariable.previewMap.get(cameraId);
hCNetSDK.NET_DVR_StopRealPlay(lRealHandle);
GlobalVariable.previewMap.remove(cameraId);
}
- log.info("录像停止");
+ log.debug("录像停止");
}
return url;
} catch (Exception ex) {
diff --git a/ard-work/src/main/java/com/ruoyi/device/uav/service/UavService.java b/ard-work/src/main/java/com/ruoyi/device/uav/service/UavService.java
index 783e0c0..14acb4d 100644
--- a/ard-work/src/main/java/com/ruoyi/device/uav/service/UavService.java
+++ b/ard-work/src/main/java/com/ruoyi/device/uav/service/UavService.java
@@ -1,6 +1,7 @@
package com.ruoyi.device.uav.service;
import com.dtflys.forest.exceptions.ForestNetworkException;
+import com.dtflys.forest.exceptions.ForestRuntimeException;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -89,8 +90,8 @@
if (this.uavUser != null) {
this.token = (String) this.uavUser.get("access_token");
}
- } catch (ForestNetworkException e) {
- e.printStackTrace();
+ } catch (ForestRuntimeException e) {
+ log.error("无人机连接超时" + e.getMessage());
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (JsonProcessingException e) {
diff --git a/ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java b/ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java
index a13a827..66f6a26 100644
--- a/ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java
@@ -1,8 +1,6 @@
package com.ruoyi.inspect.service.impl;
-import java.text.SimpleDateFormat;
import java.util.*;
-
import com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWell;
import com.ruoyi.alarmpoints.well.mapper.ArdAlarmpointsWellMapper;
import com.ruoyi.common.utils.DateUtils;
@@ -10,7 +8,6 @@
import com.ruoyi.device.camera.domain.ArdCameras;
import com.ruoyi.device.camera.domain.CameraCmd;
import com.ruoyi.device.camera.mapper.ArdCamerasMapper;
-import com.ruoyi.device.hiksdk.config.MinioClientSingleton;
import com.ruoyi.device.hiksdk.service.IHikClientService;
import com.ruoyi.inspect.domain.ArdVideoInspectRecord;
import com.ruoyi.inspect.mapper.ArdVideoInspectRecordMapper;
@@ -24,7 +21,6 @@
import com.ruoyi.inspect.mapper.ArdVideoInspectTaskMapper;
import com.ruoyi.inspect.domain.ArdVideoInspectTask;
import com.ruoyi.inspect.service.IArdVideoInspectTaskService;
-
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
@@ -417,7 +413,7 @@
try {
String currentStepId = ardVideoInspectTask.getCurrentStepId();
if (StringUtils.isNull(currentStepId)) {
- log.info("当前开始巡检步骤id为空");
+ log.debug("当前开始巡检步骤id为空");
return;
}
log.debug("巡检步骤:" + currentStepId + "尝试开始");
@@ -442,6 +438,11 @@
targetPositon[2] = ardAlarmpointsWell.getAltitude();
/*获取相机坐标*/
ArdCameras cameras = ardCamerasMapper.selectArdCamerasById(cameraId);
+ if(StringUtils.isNull(cameras))
+ {
+ log.debug("找不到相机:"+cameraId);
+ return;
+ }
double[] cameraPositon = new double[3];
cameraPositon[0] = cameras.getLongitude();
cameraPositon[1] = cameras.getLatitude();
@@ -474,7 +475,7 @@
try {
String currentStepId = ardVideoInspectTask.getCurrentStepId();
if (StringUtils.isNull(currentStepId)) {
- log.info("当前开始巡检步骤id为空");
+ log.debug("当前开始巡检步骤id为空");
return;
}
log.debug("巡检正常,尝试引导:" + currentStepId);
@@ -495,6 +496,11 @@
targetPositon[2] = ardAlarmpointsWell.getAltitude();
/*获取相机坐标*/
ArdCameras cameras = ardCamerasMapper.selectArdCamerasById(cameraId);
+ if(StringUtils.isNull(cameras))
+ {
+ log.debug("找不到相机:"+cameraId);
+ return;
+ }
double[] cameraPositon = new double[3];
cameraPositon[0] = cameras.getLongitude();
cameraPositon[1] = cameras.getLatitude();
diff --git a/ard-work/src/main/java/com/ruoyi/test/ReadAccessDatabase.java b/ard-work/src/main/java/com/ruoyi/test/ReadAccessDatabase.java
index 4f6fa2e..7a69f81 100644
--- a/ard-work/src/main/java/com/ruoyi/test/ReadAccessDatabase.java
+++ b/ard-work/src/main/java/com/ruoyi/test/ReadAccessDatabase.java
@@ -8,14 +8,21 @@
* @Version: 1.0
**/
+import com.ruoyi.app.position.domain.ArdAppPosition;
+import com.ruoyi.utils.websocket.util.WebSocketUtils;
+import lombok.extern.slf4j.Slf4j;
+
import java.io.UnsupportedEncodingException;
import java.nio.charset.StandardCharsets;
import java.sql.*;
-
+import java.util.*;
+import java.util.concurrent.Executors;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.TimeUnit;
+@Slf4j
public class ReadAccessDatabase {
public static void main(String[] args) {
-
// // 多个数据库文件路径
// String[] dbPaths = {
// "D:\\mdb\\道路中心线.mdb",
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
index e12ef24..e455dca 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
@@ -141,7 +141,7 @@
/**
* 相机操控优先级
*/
- private Integer cameraPriority;
+ private String cameraPriority;
/**
* 用户融云token
@@ -199,11 +199,11 @@
this.rongCloudToken = rongCloudToken;
}
- public Integer getCameraPriority() {
+ public String getCameraPriority() {
return cameraPriority;
}
- public void setCameraPriority(Integer cameraPriority) {
+ public void setCameraPriority(String cameraPriority) {
this.cameraPriority = cameraPriority;
}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/BusinessType.java b/ruoyi-common/src/main/java/com/ruoyi/common/enums/BusinessType.java
index 8b572b6..812dcc1 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/enums/BusinessType.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/enums/BusinessType.java
@@ -61,8 +61,9 @@
* 测试
*/
TEST,
+
/**
* 控制
*/
- CONTROL,
+ CONTROL
}
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/SdkOperateAspect.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/SdkOperateAspect.java
index 25cb772..156446a 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/SdkOperateAspect.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/SdkOperateAspect.java
@@ -1,31 +1,26 @@
package com.ruoyi.framework.aspectj;
-import com.ruoyi.common.annotation.SdkOperate;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
+import com.ruoyi.common.core.redis.RedisCache;
+import com.ruoyi.common.utils.DictUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.constant.CamPriority;
import com.ruoyi.device.camera.domain.ArdCameras;
import com.ruoyi.device.camera.domain.CameraCmd;
import com.ruoyi.device.camera.service.IArdCamerasService;
import com.ruoyi.system.service.ISysUserService;
import lombok.extern.slf4j.Slf4j;
-import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
-import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.stereotype.Component;
-
-import javax.annotation.Nullable;
import javax.annotation.Resource;
import java.lang.reflect.Method;
import java.util.Date;
-import static jdk.nashorn.internal.runtime.regexp.joni.Config.log;
/**
* SDK控制处理
@@ -67,6 +62,7 @@
* @param joinPoint 切点
*/
public Boolean controlScopeFilter(ProceedingJoinPoint joinPoint) {
+
//获取请求控制相机的命令信息
CameraCmd cmd = (CameraCmd) joinPoint.getArgs()[0];
String operator = cmd.getOperator();//申请者
@@ -97,23 +93,25 @@
} else {
/*当前相机有人控制并且配置了过期时间,先判断优先级,优先级高允许控制*/
Integer currentLevel = 0;//当前相机的操作者的优先级
- if (CamPriority.priorityMap.containsKey(currentOperator)) {
+ String camerasPriority = DictUtils.getDictValue("cameras_priority", currentOperator);
+ if(StringUtils.isNotEmpty(camerasPriority)) {
/*当前控制者为系统报警用户*/
- currentLevel = (Integer) CamPriority.priorityMap.get(currentOperator);
+ currentLevel = Integer.valueOf(camerasPriority);
} else {
/*当前控制者为普通用户*/
SysUser sysUser = sysUserService.selectUserById(currentOperator);
- currentLevel = sysUser.getCameraPriority();
+ currentLevel = Integer.valueOf(sysUser.getCameraPriority());
}
Integer operatorLevel = 0;//获取申请者的优先级
- if (CamPriority.priorityMap.containsKey(operator)) {
+ String operatorPriority = DictUtils.getDictValue("cameras_priority", operator);
+ if (StringUtils.isNotEmpty(operatorPriority)) {
/*包含说明当前申请控制者为系统报警用户*/
- operatorLevel = (Integer) CamPriority.priorityMap.get(operator);
+ operatorLevel = Integer.valueOf(operatorPriority);
} else {
/*否则申请控制者为当前登录用户*/
LoginUser loginUser = SecurityUtils.getLoginUser();
SysUser user = loginUser.getUser();//获取登录用户的信息
- operatorLevel = user.getCameraPriority();
+ operatorLevel = Integer.valueOf(user.getCameraPriority());
}
/*申请者未控则判断优先级*/
if (operatorLevel > currentLevel) {
diff --git a/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm b/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm
index 894a508..9e7b90a 100644
--- a/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm
+++ b/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm
@@ -8,6 +8,7 @@
#end
#end
+import com.ruoyi.common.utils.uuid.IdUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
#if($table.sub)
@@ -67,6 +68,9 @@
@Override
public int insert${ClassName}(${ClassName} ${className}) {
#foreach ($column in $columns)
+ #if($column.javaField == 'id')
+ ${className}.setId(IdUtils.simpleUUID());
+ #end
#if($column.javaField == 'createTime')
${className}.setCreateTime(DateUtils.getNowDate());
#end
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/MinioTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/MinioTask.java
index e2cb0f7..3ca0f65 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/MinioTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/MinioTask.java
@@ -26,17 +26,17 @@
log.debug("执行历史数据删除");
//遍历存储
try {
- List<String> buckets=new ArrayList<>();
+ List<String> buckets = new ArrayList<>();
buckets.add("pic");
buckets.add("record");
- for (String name:buckets) {
+ for (String name : buckets) {
Iterable<Result<Item>> listObjectsPic = MinioUtils.getObjectsByBucket(name);
for (Result<Item> result : listObjectsPic) {
Item item = result.get();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").withZone(ZoneId.of("Asia/Shanghai"));
String objectTime = item.lastModified().format(formatter);
- Date now= new Date();
+ Date now = new Date();
// 把日期往前增加一天,整数往后推,负数往前移动
Calendar calendar = new GregorianCalendar();
calendar.setTime(now);
@@ -49,9 +49,8 @@
log.debug("expireTime : " + expireTime);
log.debug("objectTime 时间在 expireTime 之前,执行删除");
boolean b = MinioUtils.removeObject(name, item.objectName());
- if(b)
- {
- log.debug("成功删除过期数据:"+ item.objectName()+"---"+item.lastModified());
+ if (b) {
+ log.debug("成功删除过期数据:" + item.objectName() + "---" + item.lastModified());
}
}
}
@@ -60,5 +59,4 @@
log.error("minio历史数据删除异常:" + ex.getMessage());
}
}
-
}
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java
index 542133a..675ff00 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java
@@ -1,26 +1,10 @@
package com.ruoyi.quartz.task;
-import com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWell;
-import com.ruoyi.alarmpoints.well.service.IArdAlarmpointsWellService;
-import com.ruoyi.common.utils.DateUtils;
-import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.device.camera.domain.ArdCameras;
-import com.ruoyi.device.camera.domain.CameraCmd;
-import com.ruoyi.device.camera.service.IArdCamerasService;
-import com.ruoyi.device.hiksdk.config.MinioClientSingleton;
-import com.ruoyi.device.hiksdk.service.IHikClientService;
-import com.ruoyi.inspect.domain.ArdVideoInspectRecord;
-import com.ruoyi.inspect.domain.ArdVideoInspectTask;
-import com.ruoyi.inspect.domain.ArdVideoInspectTaskStep;
-import com.ruoyi.inspect.service.IArdVideoInspectRecordService;
import com.ruoyi.inspect.service.IArdVideoInspectTaskService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
-
import javax.annotation.Resource;
-import java.io.IOException;
-import java.text.SimpleDateFormat;
-import java.util.*;
+
/**
* @Description: 巡检任务
@@ -30,13 +14,16 @@
* @Version: 1.0
**/
@Component("PatrolInspectionTask")
-@Slf4j(topic = "PatrolInspectionTask")
public class PatrolInspectionTask {
@Resource
IArdVideoInspectTaskService ardVideoInspectTaskService;
- //巡检任务
+ /**
+ * 定时巡检任务
+ * 刘苏义
+ * 2023/8/9 9:18:42
+ */
public void scanRun() {
ardVideoInspectTaskService.autoTaskRun();
}
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RongCloudTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RongCloudTask.java
index aa5a322..ded475e 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RongCloudTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RongCloudTask.java
@@ -28,25 +28,28 @@
ISysUserService sysUserService;
@Resource
RongCloudService rongCloudService;
+ /**
+ * 定时获取app用户在线状态
+ * 刘苏义
+ * 2023/8/9 9:17:48
+ */
+ public void getAppUserOnlineStateTask() {
- public void getAppUserOnlineStateTask()
- {
- try{
- List<SysUser> SysUserList = sysUserService.selectAllAppUserList(new SysUser());
- if(SysUserList.size()>0) {
- for (SysUser sysUser : SysUserList) {
- Boolean online = rongCloudService.checkOnline(sysUser.getUserId());
- if (online) {
- sysUser.setAppOnlineState("1");
- } else {
- sysUser.setAppOnlineState("0");
+ try {
+ List<SysUser> SysUserList = sysUserService.selectAllAppUserList(new SysUser());
+ if (SysUserList.size() > 0) {
+ for (SysUser sysUser : SysUserList) {
+ Boolean online = rongCloudService.checkOnline(sysUser.getUserId());
+ if (online) {
+ sysUser.setAppOnlineState("1");
+ } else {
+ sysUser.setAppOnlineState("0");
+ }
+ sysUserService.updateUserProfile(sysUser);
}
- sysUserService.updateUserProfile(sysUser);
}
- }}
- catch (Exception ex)
- {
- log.error("融云在线接口异常:"+ex.getMessage());
+ } catch (Exception ex) {
+ log.error("融云在线接口异常:" + ex.getMessage());
}
}
}
--
Gitblit v1.9.3