2021与蓝度共同重构项目,服务端
liuhaonan
2022-05-17 fb842a99734726e628bd0981ccdf80a253534eaa
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java
@@ -1,8 +1,8 @@
package com.sandu.ximon.admin.controller;
import cn.hutool.core.collection.CollectionUtil;
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.PermissionConfig;
@@ -54,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"));
@@ -69,31 +72,67 @@
     */
    @PostMapping("/reboot")
    public ResponseVO<Object> reboot(@RequestBody List<String> vnnoxWebRequest) {
        VnnoxResult vnnoxResult = vnnoxService.reboot(vnnoxWebRequest);
        if (!permissionConfig.check(MenuEnum.VNNOX_RESTART.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        List<List<String>> split = CollectionUtil.split(vnnoxWebRequest, 100);
        VnnoxResult vnnoxResult=null;
        for (List<String> splist : split) {
            VnnoxResult  vnnox = vnnoxService.reboot(splist);
            if(vnnoxResult!=null){
                vnnoxResult.getSuccess().addAll(vnnox.getSuccess());
                vnnoxResult.getFail().addAll(vnnox.getFail());
            }
        }
        return ResponseUtil.success(vnnoxResult);
    }
    /**
     * 同步播放
     */
    @AnonymousAccess
    @PostMapping("/syncPlay")
    public ResponseVO<Object> syncPlay(@RequestBody Map map) {
        List playIdlist = (List)map.get("playIdlist");
        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);
        List<List<String>> split = CollectionUtil.split(playIdlist, 100);
        VnnoxResult vnnoxResult=null;
        for (List<String> splist : split) {
            VnnoxResult  vnnox = vnnoxService.syncPlay(splist, option);
            if(vnnoxResult!=null){
                vnnoxResult.getSuccess().addAll(vnnox.getSuccess());
                vnnoxResult.getFail().addAll(vnnox.getFail());
            }
        }
        return ResponseUtil.success(vnnoxResult);
    }
    /**
     * ntp对时
     */
    @AnonymousAccess
    @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);
        if (!permissionConfig.check(MenuEnum.VNNOX_NTP.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        boolean enable = (boolean) map.get("enable");
        List playIdlist = (List) map.get("playIdlist");
        List<List<String>> split = CollectionUtil.split(playIdlist, 100);
        VnnoxResult vnnoxResult=null;
        for (List<String> splist : split) {
            VnnoxResult  vnnox = vnnoxService.ntpSync(splist, enable);
            if(vnnoxResult!=null){
                vnnoxResult.getSuccess().addAll(vnnox.getSuccess());
                vnnoxResult.getFail().addAll(vnnox.getFail());
            }
        }
        return ResponseUtil.success(vnnoxResult);
    }
@@ -103,7 +142,20 @@
     */
    @PostMapping("/screenStatusChange")
    public ResponseVO<Object> screenStatusChange(@RequestBody VnnoxParam vnnoxWebRequest) {
        VnnoxResult vnnoxResult = vnnoxService.screenStatusChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getScreenStatus());
        if (!permissionConfig.check(MenuEnum.VNNOX_ON_OFF.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        List<List<LedPlayerEntity>> split = CollectionUtil.split(vnnoxWebRequest.getPlayerList(), 100);
        VnnoxResult vnnoxResult=null;
        for (List<LedPlayerEntity> splist : split) {
            VnnoxResult  vnnox = vnnoxService.screenStatusChange(splist, vnnoxWebRequest.getScreenStatus());
            if(vnnoxResult!=null){
                vnnoxResult.getSuccess().addAll(vnnox.getSuccess());
                vnnoxResult.getFail().addAll(vnnox.getFail());
            }
        }
        return ResponseUtil.success(vnnoxResult);
    }
@@ -115,7 +167,20 @@
     */
    @PostMapping("/volChange")
    public ResponseVO<Object> volChange(@RequestBody VnnoxParam vnnoxWebRequest) {
        VnnoxResult vnnoxResult = vnnoxService.volChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getVol());
        if (!permissionConfig.check(MenuEnum.VNNOX_VOL_CHANGE.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        List<List<LedPlayerEntity>> split = CollectionUtil.split(vnnoxWebRequest.getPlayerList(), 100);
        VnnoxResult vnnoxResult=null;
        for (List<LedPlayerEntity> splist : split) {
            VnnoxResult  vnnox = vnnoxService.volChange(splist, vnnoxWebRequest.getVol());
            if(vnnoxResult!=null){
                vnnoxResult.getSuccess().addAll(vnnox.getSuccess());
                vnnoxResult.getFail().addAll(vnnox.getFail());
            }
        }
        return ResponseUtil.success(vnnoxResult);
    }
@@ -127,13 +192,29 @@
     */
    @PostMapping("/brightnessChange")
    public ResponseVO<Object> brightnessChange(@RequestBody VnnoxParam vnnoxWebRequest) {
        VnnoxResult vnnoxResult = vnnoxService.brightnessChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getBrightness());
        if (!permissionConfig.check(MenuEnum.VNNOX_BRIGHTNESS_CHANGE.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        List<List<LedPlayerEntity>> split = CollectionUtil.split(vnnoxWebRequest.getPlayerList(), 100);
        VnnoxResult vnnoxResult=null;
        for (List<LedPlayerEntity> splist : split) {
            VnnoxResult  vnnox = vnnoxService.brightnessChange(splist, vnnoxWebRequest.getBrightness());
            if(vnnoxResult!=null){
                vnnoxResult.getSuccess().addAll(vnnox.getSuccess());
                vnnoxResult.getFail().addAll(vnnox.getFail());
            }
        }
        return ResponseUtil.success(vnnoxResult);
    }
    @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);
@@ -142,6 +223,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) {
@@ -164,16 +248,17 @@
    @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);
                }
        if (!permissionConfig.check(MenuEnum.LED_LIST.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        List<LedPlayerEntity> list = ledPlayerEntityService.ledPlayerEntityList(baseConditionVO, keyword);
        List<LedPlayerEntity> online = new ArrayList<>();
        for (LedPlayerEntity ledPlayer : list) {
            if (ledPlayer.getOnlineStatus() == 1) {
                online.add(ledPlayer);
            }
            return ResponseUtil.success(online);
        }
        return ResponseUtil.success(online);
    }