| ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| ard-work/src/main/java/com/ruoyi/constant/CamPriority.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| ard-work/src/main/java/com/ruoyi/test/ReadAccessDatabase.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/SdkOperateAspect.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/MinioTask.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PatrolInspectionTask.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RongCloudTask.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
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); //录像存储位置 ard-work/src/main/java/com/ruoyi/constant/CamPriority.java
文件已删除 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", 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,18 +93,20 @@ } 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(); } 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(); 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()); } } } 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(); } 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()); } } }