From ca39aeadb7b19b2e854d5e2694e52b63ef9e8afe Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: Tue, 21 Nov 2023 14:35:00 +0800
Subject: [PATCH] 菜单/字典/系统配置增加双语

---
 ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/SdkOperateAspect.java |   30 ++++++++++++++++--------------
 1 files changed, 16 insertions(+), 14 deletions(-)

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..bf0718e 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控制处理
@@ -34,7 +29,7 @@
  */
 @Aspect
 @Component
-@Slf4j(topic = "hikSdk")
+@Slf4j(topic = "sdk")
 public class SdkOperateAspect {
 
     @Resource
@@ -67,6 +62,7 @@
      * @param joinPoint 切点
      */
     public Boolean controlScopeFilter(ProceedingJoinPoint joinPoint) {
+
         //获取请求控制相机的命令信息
         CameraCmd cmd = (CameraCmd) joinPoint.getArgs()[0];
         String operator = cmd.getOperator();//申请者
@@ -97,23 +93,29 @@
                 } 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();
+                        if(StringUtils.isNull(sysUser))
+                        {
+                            return true;
+                        }
+                        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) {

--
Gitblit v1.9.3