From c8ce26aac0004e249a0cef35fe15b2ddb280ad25 Mon Sep 17 00:00:00 2001
From: liuhaonan <konodioda2333@vip.qq.com>
Date: 星期三, 27 四月 2022 15:51:10 +0800
Subject: [PATCH] 大气数据推送到LED

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java |  150 ++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 126 insertions(+), 24 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 a9d6e36..ec4939c 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,17 +1,32 @@
 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.util.ResponseUtil;
 import com.sandu.ximon.admin.param.VnnoxParam;
+import com.sandu.ximon.admin.security.PermissionConfig;
 import com.sandu.ximon.admin.security.SecurityUtils;
 import com.sandu.ximon.admin.service.LedPlayerEntityService;
+import com.sandu.ximon.admin.service.PoleBindingService;
+import com.sandu.ximon.admin.service.PoleService;
 import com.sandu.ximon.admin.service.VnnoxService;
+import com.sandu.ximon.admin.utils.VnnoxAPIUtil;
 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 com.sun.javafx.collections.MappingChange;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.net.URISyntaxException;
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -24,63 +39,150 @@
 //@AllArgsConstructor
 @RequestMapping("/v1/Vnnox")
 public class VnnoxController {
-
+    @Autowired
+    private PermissionConfig permissionConfig;
     @Autowired
     private VnnoxService vnnoxService;
     @Autowired
     private LedPlayerEntityService ledPlayerEntityService;
+    @Autowired
+    private VnnoxAPIUtil vnnoxAPIUtil;
+    @Autowired
+    private PoleBindingService bindingService;
+    @Autowired
+    private PoleService poleService;
 
-    @GetMapping("/screenShot")
+    /**
+     * 鎴睆
+     *
+     * @param vnnoxWebRequest
+     * @return
+     */
+    @PostMapping("/screenShot")
     public ResponseVO<Object> screenShot(@RequestBody VnnoxParam vnnoxWebRequest) {
         Map<String, String> map = vnnoxService.getScreenShotUrl(vnnoxWebRequest.getId());
+        if (map.get("code").equals("500")) {
+            return ResponseUtil.fail(map.get("msg"));
+        }
         return ResponseUtil.success(map.get("url"));
     }
 
-    @GetMapping("/reboot")
-    public ResponseVO<Object> reboot(@RequestBody VnnoxParam vnnoxWebRequest) {
-        VnnoxResult vnnoxResult = vnnoxService.reboot(vnnoxWebRequest.getPlayerList());
+    /**
+     * 閲嶅惎
+     *
+     * @param vnnoxWebRequest
+     * @return
+     */
+    @PostMapping("/reboot")
+    public ResponseVO<Object> reboot(@RequestBody List<String> vnnoxWebRequest) {
+        VnnoxResult vnnoxResult = vnnoxService.reboot(vnnoxWebRequest);
         return ResponseUtil.success(vnnoxResult);
     }
 
-    @GetMapping("/screenStatusChange")
+    /**
+     * 鍚屾鎾斁
+     */
+    @PostMapping("/syncPlay")
+    public ResponseVO<Object> syncPlay(@RequestBody Map map) {
+        List playIdlist = (List)map.get("playIdlist");
+        Integer option = (Integer) map.get("option");
+        VnnoxResult vnnoxResult = vnnoxService.syncPlay(playIdlist,option);
+        return ResponseUtil.success(vnnoxResult);
+    }
+
+    /**
+     * ntp瀵规椂
+     */
+    @PostMapping("/ntp")
+    public ResponseVO<Object> ntp(@RequestBody Map map) {
+        boolean enable = (boolean)map.get("enable");
+        List playIdlist = (List)map.get("playIdlist");
+        VnnoxResult vnnoxResult = vnnoxService.ntpSync(playIdlist,enable);
+        return ResponseUtil.success(vnnoxResult);
+    }
+
+    /**
+     * @param vnnoxWebRequest
+     * @return 寮�鍏冲睆骞�
+     */
+    @PostMapping("/screenStatusChange")
     public ResponseVO<Object> screenStatusChange(@RequestBody VnnoxParam vnnoxWebRequest) {
-        VnnoxResult vnnoxResult = vnnoxService.screenStatusChange(vnnoxWebRequest.getPlayerList(),vnnoxWebRequest.getScreenStatus());
+        VnnoxResult vnnoxResult = vnnoxService.screenStatusChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getScreenStatus());
         return ResponseUtil.success(vnnoxResult);
     }
 
-    @GetMapping("/volChange")
+    /**
+     * 闊抽噺璋冭妭
+     *
+     * @param vnnoxWebRequest
+     * @return
+     */
+    @PostMapping("/volChange")
     public ResponseVO<Object> volChange(@RequestBody VnnoxParam vnnoxWebRequest) {
-        VnnoxResult vnnoxResult = vnnoxService.volChange(vnnoxWebRequest.getPlayerList(),vnnoxWebRequest.getVol());
+        VnnoxResult vnnoxResult = vnnoxService.volChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getVol());
         return ResponseUtil.success(vnnoxResult);
     }
 
-    @GetMapping("/brightnessChange")
+    /**
+     * 浜害璋冭妭
+     *
+     * @param vnnoxWebRequest
+     * @return
+     */
+    @PostMapping("/brightnessChange")
     public ResponseVO<Object> brightnessChange(@RequestBody VnnoxParam vnnoxWebRequest) {
-        VnnoxResult vnnoxResult = vnnoxService.brightnessChange(vnnoxWebRequest.getPlayerList(),vnnoxWebRequest.getBrightness());
+        VnnoxResult vnnoxResult = vnnoxService.brightnessChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getBrightness());
         return ResponseUtil.success(vnnoxResult);
     }
 
-  /*  @RequestMapping("/changeLedName")
-    public R changeLedName(@RequestBody VnnoxParam vnnoxWebRequest) {
-        vnnoxService.changeLedName(vnnoxWebRequest.getId(),vnnoxWebRequest.getPlayerName());
-        return ResponseUtil.success();
-    }*/
 
     @PostMapping("/validateSN")
-    public ResponseVO<Object> validateSN(@RequestBody Map map) {
-        String sn = (String)map.get("sn");
-        LedV2RegisterResultEntity ledV2RegisterResultEntity = vnnoxService.validateSN(sn);
+    public ResponseVO<Object> validateSN(@RequestBody Map map) throws URISyntaxException {
+        String sn = (String) map.get("sn");
+        String name = (String) map.get("name");
+        LedV2RegisterResultEntity ledV2RegisterResultEntity = vnnoxService.validateSN(name, sn);
         return ResponseUtil.success(ledV2RegisterResultEntity);
+    }
+
+    @PostMapping("/updateLedName/{id}")
+    public ResponseVO<Object> updateLedName(@PathVariable Long id, @RequestBody Map map) {
+        String name = (String) map.get("name");
+        boolean b = vnnoxService.updateDataName(id, name);
+        if (b) {
+            return ResponseUtil.success("鏇存敼鎴愬姛");
+        }
+        {
+            return ResponseUtil.success("鏇存敼澶辫触");
+        }
+
     }
 
 
     @GetMapping("/list")
-    public ResponseVO<Object> list() {
-        if(AdministratorEnums.CUSTOMER.getCode().equals(SecurityUtils.getAdministratorIdentity())) {
-            return ResponseUtil.success("");
-        }else {
-            return ResponseUtil.success(ledPlayerEntityService.list());
+    public ResponseVO<Object> list(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) {
+        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) {
+
+            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.getBySnAndPlayerSn(sn));
     }
 }

--
Gitblit v1.9.3