From 9f21969b69703a35bde9d659be19f3e39795010d Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期四, 12 五月 2022 11:58:01 +0800
Subject: [PATCH] fix

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java |  127 ++++++++++++++++++++++++-----------------
 1 files changed, 74 insertions(+), 53 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java
index 5dc0884..cb7b594 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java
@@ -1,13 +1,11 @@
 package com.sandu.ximon.admin.controller;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.github.pagehelper.PageHelper;
 import com.sandu.common.domain.ResponseVO;
 import com.sandu.common.object.BaseConditionVO;
+import com.sandu.common.security.annotation.AnonymousAccess;
 import com.sandu.common.util.ResponseUtil;
 import com.sandu.ximon.admin.param.VnnoxParam;
-import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.admin.security.PermissionConfig;
 import com.sandu.ximon.admin.service.LedPlayerEntityService;
 import com.sandu.ximon.admin.service.PoleBindingService;
 import com.sandu.ximon.admin.service.PoleService;
@@ -16,8 +14,7 @@
 import com.sandu.ximon.admin.utils.response.VnnoxResult;
 import com.sandu.ximon.dao.domain.LedPlayerEntity;
 import com.sandu.ximon.dao.domain.LedV2RegisterResultEntity;
-import com.sandu.ximon.dao.domain.PoleBinding;
-import com.sandu.ximon.dao.enums.AdministratorEnums;
+import com.sandu.ximon.dao.enums.MenuEnum;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -36,7 +33,8 @@
 //@AllArgsConstructor
 @RequestMapping("/v1/Vnnox")
 public class VnnoxController {
-
+    @Autowired
+    private PermissionConfig permissionConfig;
     @Autowired
     private VnnoxService vnnoxService;
     @Autowired
@@ -56,6 +54,9 @@
      */
     @PostMapping("/screenShot")
     public ResponseVO<Object> screenShot(@RequestBody VnnoxParam vnnoxWebRequest) {
+        if (!permissionConfig.check(MenuEnum.VNNOX_SCREENSHOT.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
         Map<String, String> map = vnnoxService.getScreenShotUrl(vnnoxWebRequest.getId());
         if (map.get("code").equals("500")) {
             return ResponseUtil.fail(map.get("msg"));
@@ -70,8 +71,41 @@
      * @return
      */
     @PostMapping("/reboot")
-    public ResponseVO<Object> reboot(@RequestBody VnnoxParam vnnoxWebRequest) {
-        VnnoxResult vnnoxResult = vnnoxService.reboot(vnnoxWebRequest.getPlayerList());
+    public ResponseVO<Object> reboot(@RequestBody List<String> vnnoxWebRequest) {
+        if (!permissionConfig.check(MenuEnum.VNNOX_RESTART.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        VnnoxResult vnnoxResult = vnnoxService.reboot(vnnoxWebRequest);
+        return ResponseUtil.success(vnnoxResult);
+    }
+
+    /**
+     * 鍚屾鎾斁
+     */
+    @AnonymousAccess
+    @PostMapping("/syncPlay")
+    public ResponseVO<Object> syncPlay(@RequestBody Map map) {
+        if (!permissionConfig.check(MenuEnum.VNNOX_SYNC_PLAY.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        List playIdlist = (List) map.get("playIdlist");
+        Integer option = (Integer) map.get("option");
+        VnnoxResult vnnoxResult = vnnoxService.syncPlay(playIdlist, option);
+        return ResponseUtil.success(vnnoxResult);
+    }
+
+    /**
+     * ntp瀵规椂
+     */
+    @AnonymousAccess
+    @PostMapping("/ntp")
+    public ResponseVO<Object> ntp(@RequestBody Map map) {
+        if (!permissionConfig.check(MenuEnum.VNNOX_NTP.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        boolean enable = (boolean) map.get("enable");
+        List playIdlist = (List) map.get("playIdlist");
+        VnnoxResult vnnoxResult = vnnoxService.ntpSync(playIdlist, enable);
         return ResponseUtil.success(vnnoxResult);
     }
 
@@ -81,6 +115,9 @@
      */
     @PostMapping("/screenStatusChange")
     public ResponseVO<Object> screenStatusChange(@RequestBody VnnoxParam vnnoxWebRequest) {
+        if (!permissionConfig.check(MenuEnum.VNNOX_ON_OFF.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
         VnnoxResult vnnoxResult = vnnoxService.screenStatusChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getScreenStatus());
         return ResponseUtil.success(vnnoxResult);
     }
@@ -93,6 +130,9 @@
      */
     @PostMapping("/volChange")
     public ResponseVO<Object> volChange(@RequestBody VnnoxParam vnnoxWebRequest) {
+        if (!permissionConfig.check(MenuEnum.VNNOX_VOL_CHANGE.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
         VnnoxResult vnnoxResult = vnnoxService.volChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getVol());
         return ResponseUtil.success(vnnoxResult);
     }
@@ -105,6 +145,9 @@
      */
     @PostMapping("/brightnessChange")
     public ResponseVO<Object> brightnessChange(@RequestBody VnnoxParam vnnoxWebRequest) {
+        if (!permissionConfig.check(MenuEnum.VNNOX_BRIGHTNESS_CHANGE.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
         VnnoxResult vnnoxResult = vnnoxService.brightnessChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getBrightness());
         return ResponseUtil.success(vnnoxResult);
     }
@@ -112,6 +155,9 @@
 
     @PostMapping("/validateSN")
     public ResponseVO<Object> validateSN(@RequestBody Map map) throws URISyntaxException {
+        if (!permissionConfig.check(MenuEnum.VNNOX_ADD.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
         String sn = (String) map.get("sn");
         String name = (String) map.get("name");
         LedV2RegisterResultEntity ledV2RegisterResultEntity = vnnoxService.validateSN(name, sn);
@@ -120,6 +166,9 @@
 
     @PostMapping("/updateLedName/{id}")
     public ResponseVO<Object> updateLedName(@PathVariable Long id, @RequestBody Map map) {
+        if (!permissionConfig.check(MenuEnum.VNNOX_NAME_UPDATE.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
         String name = (String) map.get("name");
         boolean b = vnnoxService.updateDataName(id, name);
         if (b) {
@@ -134,59 +183,31 @@
 
     @GetMapping("/list")
     public ResponseVO<Object> list(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) {
-        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
-        LambdaQueryWrapper<LedPlayerEntity> wrapper = Wrappers.lambdaQuery(LedPlayerEntity.class);
-        if (AdministratorEnums.CUSTOMER.getCode().equals(SecurityUtils.getAdministratorIdentity())) {
-            //wrapper.eq(LedPlayerEntity::get)
-            return ResponseUtil.success(""); //  todo
-        } else {
-            wrapper.like(LedPlayerEntity::getPlayerName, keyword)
-                    .or(
-                            querywrapper -> {
-                                querywrapper.like(LedPlayerEntity::getName, keyword);
-                            }
-                    );
-            List<LedPlayerEntity> list = ledPlayerEntityService.list(wrapper);
-            List<LedPlayerEntity> entities = vnnoxService.setCacheInfo(vnnoxAPIUtil.syncCurrentInfo(list));
-            entities.forEach(
-                    led -> {
-                        PoleBinding binding = bindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class)
-                                .eq(PoleBinding::getDeviceType, 1).eq(PoleBinding::getDeviceCode, led.getSn()));
-                        if (binding != null) {
-                            led.setPoleId(poleService.getById(binding.getPoleId()).getId());
-                            led.setPoleName(poleService.getById(binding.getPoleId()).getPoleName());
-                        }
-                    }
-            );
-            return ResponseUtil.success(entities);
+        if (!permissionConfig.check(MenuEnum.LED_LIST.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
         }
+        return ResponseUtil.successPage(ledPlayerEntityService.ledPlayerEntityList(baseConditionVO, keyword));
     }
 
     @GetMapping("/onLineList")
     public ResponseVO<Object> onLineList(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) {
-//    public ResponseVO<Object> onLineList(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) {
-        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
-        LambdaQueryWrapper<LedPlayerEntity> wrapper = Wrappers.lambdaQuery(LedPlayerEntity.class);
-
-        if (AdministratorEnums.CUSTOMER.getCode().equals(SecurityUtils.getAdministratorIdentity())) {
-            //wrapper.eq(LedPlayerEntity::get)
-            return ResponseUtil.success(""); //  todo
-        } else {
-            wrapper.like(LedPlayerEntity::getPlayerName, keyword);
-            List<LedPlayerEntity> list = ledPlayerEntityService.list(wrapper);
-            List<LedPlayerEntity> entities = vnnoxService.setCacheInfo(vnnoxAPIUtil.syncCurrentInfo(list));
-            List<LedPlayerEntity> online = new ArrayList<>();
-            for (LedPlayerEntity ledPlayer : entities) {
-                if (ledPlayer.getOnlineStatus() == 1) {
-                    online.add(ledPlayer);
-                }
-            }
-            return ResponseUtil.success(online);
+        if (!permissionConfig.check(MenuEnum.LED_LIST.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
         }
+        List<LedPlayerEntity> list = ledPlayerEntityService.ledPlayerEntityList(baseConditionVO, keyword);
+        List<LedPlayerEntity> entities = vnnoxService.setCacheInfo(vnnoxAPIUtil.syncCurrentInfo(list));
+        List<LedPlayerEntity> online = new ArrayList<>();
+        for (LedPlayerEntity ledPlayer : entities) {
+            if (ledPlayer.getOnlineStatus() == 1) {
+                online.add(ledPlayer);
+            }
+        }
+        return ResponseUtil.success(online);
+
     }
 
     @GetMapping("/getVnnoxInfo/{sn}")
     public ResponseVO<Object> getBySnAndPlayerId(@PathVariable String sn) {
-        return ResponseUtil.success(ledPlayerEntityService.getBySnAndPlayerId(sn));
+        return ResponseUtil.success(ledPlayerEntityService.getBySnAndPlayerSn(sn));
     }
 }

--
Gitblit v1.9.3