From 3089fbc788d1dbd638d1cfd9c2f9b7f2011d0af0 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期五, 30 六月 2023 16:21:48 +0800
Subject: [PATCH] 优化sdk控制

---
 ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java |  121 +++++++++++++++++++++-------------------
 1 files changed, 64 insertions(+), 57 deletions(-)

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 39d07e9..b250206 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
@@ -696,66 +696,73 @@
      * @淇敼浜哄拰鍏跺畠淇℃伅 0-瑙i攣 1-閿佸畾
      */
     @Override
+    @SdkOperate
     public boolean controlLock(CameraCmd cmd) {
         String cameraId = cmd.getCameraId();//鐢宠閿佺殑鐩告満
         ArdCameras ardCameras = ardCamerasMapper.selectArdCamerasById(cameraId);
-        if (StringUtils.isNull(ardCameras)) {
-            return false;//鎵句笉鍒扮浉鏈烘嫆缁濇搷鎺�
-        }
-        Integer expired = cmd.getExpired();//鐢宠鎺у埗鏃堕暱
-        String operator = cmd.getOperator();//鐢宠鑰�
-        String currentOperator = ardCameras.getOperatorId();//鐩告満褰撳墠鎺у埗鑰�
-        Date currentExpired = ardCameras.getOperatorExpired();//鐩告満褰撳墠杩囨湡鏃堕棿
-        if (currentExpired == null) {
-            //璁剧疆褰撳墠鎿嶄綔鐢ㄦ埛ID
-            ardCameras.setOperatorId(operator);
-            //璁剧疆褰撳墠杩囨湡鏃堕棿
-            Date now = new Date();
-            now.setTime(now.getTime() + expired * 1000);
-            ardCameras.setOperatorExpired(now);
-            ardCamerasMapper.updateArdCameras(ardCameras);
-        } else {
-            //濡傛灉杩囨湡鏃堕棿鏈夊��
-            //濡傛灉鏄湰浜虹洿鎺ヤ慨鏀�
-            if (currentOperator.equals(operator)) {
-                //璁剧疆褰撳墠杩囨湡鏃堕棿
-                Date now = new Date();
-                now.setTime(now.getTime() + expired * 1000);
-                ardCameras.setOperatorExpired(now);
-                ardCamerasMapper.updateArdCameras(ardCameras);
-            } else {
-                //濡傛灉闈炴湰浜烘瘮杈冧紭鍏堢骇
-                Integer currentLevel = 0;//褰撳墠鎿嶄綔鑰呯殑浼樺厛绾�
-                if (CamPriority.priorityMap.containsKey(currentOperator)) {
-                    /*褰撳墠鎺у埗鑰呬负绯荤粺鎶ヨ鐢ㄦ埛*/
-                    currentLevel = (Integer) CamPriority.priorityMap.get(currentOperator);
-                } else {
-                    /*褰撳墠鎺у埗鑰呬负鏅�氱敤鎴�*/
-                    SysUser sysUser = sysUserMapper.selectUserById(currentOperator);
-                    currentLevel = sysUser.getCameraPriority();
-                }
-                Integer operatorLevel = 0;//鑾峰彇鐢宠鑰呯殑浼樺厛绾�
-                if (CamPriority.priorityMap.containsKey(operator)) {
-                    /*鍖呭惈璇存槑褰撳墠鐢宠鎺у埗鑰呬负绯荤粺鎶ヨ鐢ㄦ埛*/
-                    operatorLevel = (Integer) CamPriority.priorityMap.get(operator);
-                } else {
-                    /*鍚﹀垯鐢宠鎺у埗鑰呬负褰撳墠鐧诲綍鐢ㄦ埛*/
-                    LoginUser loginUser = SecurityUtils.getLoginUser();
-                    SysUser user = loginUser.getUser();//鑾峰彇鐧诲綍鐢ㄦ埛鐨勪俊鎭�
-                    operatorLevel = user.getCameraPriority();
-                }
-                //鍒ゆ柇浼樺厛绾�
-                if (operatorLevel > currentLevel) {
-                    Date now = new Date();
-                    now.setTime(now.getTime() + expired * 60);
-                    ardCameras.setOperatorExpired(now);//璁剧疆褰撳墠杩囨湡鏃堕棿
-                    ardCameras.setOperatorId(operator);//璁剧疆褰撳墠鐢ㄦ埛
-                    ardCamerasMapper.updateArdCameras(ardCameras);
-                } else {
-                    return false;//浼樺厛绾т綆鏃犳硶涓婇攣
-                }
-            }
-        }
+        Date now = new Date();
+        now.setTime(now.getTime() + cmd.getExpired() * 60);
+        ardCameras.setOperatorExpired(now);//璁剧疆褰撳墠杩囨湡鏃堕棿
+        ardCamerasMapper.updateArdCameras(ardCameras);
+//        String cameraId = cmd.getCameraId();//鐢宠閿佺殑鐩告満
+//        ArdCameras ardCameras = ardCamerasMapper.selectArdCamerasById(cameraId);
+//        if (StringUtils.isNull(ardCameras)) {
+//            return false;//鎵句笉鍒扮浉鏈烘嫆缁濇搷鎺�
+//        }
+//        Integer expired = cmd.getExpired();//鐢宠鎺у埗鏃堕暱
+//        String operator = cmd.getOperator();//鐢宠鑰�
+//        String currentOperator = ardCameras.getOperatorId();//鐩告満褰撳墠鎺у埗鑰�
+//        Date currentExpired = ardCameras.getOperatorExpired();//鐩告満褰撳墠杩囨湡鏃堕棿
+//        if (currentExpired == null) {
+//            //璁剧疆褰撳墠鎿嶄綔鐢ㄦ埛ID
+//            ardCameras.setOperatorId(operator);
+//            //璁剧疆褰撳墠杩囨湡鏃堕棿
+//            Date now = new Date();
+//            now.setTime(now.getTime() + expired * 1000);
+//            ardCameras.setOperatorExpired(now);
+//            ardCamerasMapper.updateArdCameras(ardCameras);
+//        } else {
+//            //濡傛灉杩囨湡鏃堕棿鏈夊��
+//            //濡傛灉鏄湰浜虹洿鎺ヤ慨鏀�
+//            if (currentOperator.equals(operator)) {
+//                //璁剧疆褰撳墠杩囨湡鏃堕棿
+//                Date now = new Date();
+//                now.setTime(now.getTime() + expired * 1000);
+//                ardCameras.setOperatorExpired(now);
+//                ardCamerasMapper.updateArdCameras(ardCameras);
+//            } else {
+//                //濡傛灉闈炴湰浜烘瘮杈冧紭鍏堢骇
+//                Integer currentLevel = 0;//褰撳墠鎿嶄綔鑰呯殑浼樺厛绾�
+//                if (CamPriority.priorityMap.containsKey(currentOperator)) {
+//                    /*褰撳墠鎺у埗鑰呬负绯荤粺鎶ヨ鐢ㄦ埛*/
+//                    currentLevel = (Integer) CamPriority.priorityMap.get(currentOperator);
+//                } else {
+//                    /*褰撳墠鎺у埗鑰呬负鏅�氱敤鎴�*/
+//                    SysUser sysUser = sysUserMapper.selectUserById(currentOperator);
+//                    currentLevel = sysUser.getCameraPriority();
+//                }
+//                Integer operatorLevel = 0;//鑾峰彇鐢宠鑰呯殑浼樺厛绾�
+//                if (CamPriority.priorityMap.containsKey(operator)) {
+//                    /*鍖呭惈璇存槑褰撳墠鐢宠鎺у埗鑰呬负绯荤粺鎶ヨ鐢ㄦ埛*/
+//                    operatorLevel = (Integer) CamPriority.priorityMap.get(operator);
+//                } else {
+//                    /*鍚﹀垯鐢宠鎺у埗鑰呬负褰撳墠鐧诲綍鐢ㄦ埛*/
+//                    LoginUser loginUser = SecurityUtils.getLoginUser();
+//                    SysUser user = loginUser.getUser();//鑾峰彇鐧诲綍鐢ㄦ埛鐨勪俊鎭�
+//                    operatorLevel = user.getCameraPriority();
+//                }
+//                //鍒ゆ柇浼樺厛绾�
+//                if (operatorLevel > currentLevel) {
+//                    Date now = new Date();
+//                    now.setTime(now.getTime() + expired * 60);
+//                    ardCameras.setOperatorExpired(now);//璁剧疆褰撳墠杩囨湡鏃堕棿
+//                    ardCameras.setOperatorId(operator);//璁剧疆褰撳墠鐢ㄦ埛
+//                    ardCamerasMapper.updateArdCameras(ardCameras);
+//                } else {
+//                    return false;//浼樺厛绾т綆鏃犳硶涓婇攣
+//                }
+//            }
+//        }
         return true;
     }
     /**

--
Gitblit v1.9.3