2021与蓝度共同重构项目,服务端
liuhaonan
2022-08-19 d44a97ad0162dd0de1619ac1b568f25b003a956e
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java
@@ -1,17 +1,16 @@
package com.sandu.ximon.admin.controller;
import cn.hutool.core.collection.CollectionUtil;
import com.sandu.common.domain.ResponseVO;
import com.sandu.common.execption.BusinessException;
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.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.admin.vo.NovaPushResultVO;
import com.sandu.ximon.admin.vo.NovaResultParam;
import com.sandu.ximon.dao.domain.LedPlayerEntity;
import com.sandu.ximon.dao.domain.LedV2RegisterResultEntity;
import com.sandu.ximon.dao.enums.MenuEnum;
@@ -30,7 +29,6 @@
 * 诺瓦LED处理
 */
@RestController
//@AllArgsConstructor
@RequestMapping("/v1/Vnnox")
public class VnnoxController {
    @Autowired
@@ -41,10 +39,6 @@
    private LedPlayerEntityService ledPlayerEntityService;
    @Autowired
    private VnnoxAPIUtil vnnoxAPIUtil;
    @Autowired
    private PoleBindingService bindingService;
    @Autowired
    private PoleService poleService;
    /**
     * 截屏
@@ -64,76 +58,53 @@
        return ResponseUtil.success(map.get("url"));
    }
    @PostMapping("/allScreenShot")
    public ResponseVO<Object> allScreenShot(@RequestBody List<NovaPushResultVO> vnnoxWebRequest) {
        return ResponseUtil.success(vnnoxService.getScreenShotUrl(vnnoxWebRequest));
    }
    /**
     * 重启
     *
     * @param vnnoxWebRequest
     * @param
     * @return
     */
    @PostMapping("/reboot")
    public ResponseVO<Object> reboot(@RequestBody List<String> vnnoxWebRequest) {
    public ResponseVO<Object> reboot(@RequestBody List<NovaPushResultVO> nova) {
        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);
        return ResponseUtil.success(vnnoxService.reboot(nova));
    }
    /**
     * 同步播放
     */
    @PostMapping("/syncPlay")
    public ResponseVO<Object> syncPlay(@RequestBody Map map) {
    public ResponseVO<Object> syncPlay(@RequestBody NovaResultParam vo) {
        if (!permissionConfig.check(MenuEnum.VNNOX_SYNC_PLAY.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        List playIdlist = (List) map.get("playIdlist");
        Integer option = (Integer) map.get("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());
            }
        List<NovaPushResultVO> playIdlist = vo.getPlayIdlist();
        Integer option = vo.getOption();
        if (option == null || vo.getOption() == null) {
            throw new BusinessException("option不能为空");
        }
        return ResponseUtil.success(vnnoxResult);
        return ResponseUtil.success(vnnoxService.syncPlay(playIdlist, option));
    }
    /**
     * ntp对时
     */
    @PostMapping("/ntp")
    public ResponseVO<Object> ntp(@RequestBody Map map) {
    public ResponseVO<Object> ntp(@RequestBody NovaResultParam vo) {
        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);
        boolean enable = vo.isEnable();
        List<NovaPushResultVO> playIdlist = vo.getPlayIdlist();
        return ResponseUtil.success(vnnoxService.ntpSync(playIdlist, enable));
    }
    /**
@@ -145,18 +116,7 @@
        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);
        return ResponseUtil.success(vnnoxService.screenStatusChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getScreenStatus()));
    }
    /**
@@ -170,18 +130,7 @@
        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);
        return ResponseUtil.success(vnnoxService.volChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getVol()));
    }
    /**
@@ -195,18 +144,7 @@
        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);
        return ResponseUtil.success(vnnoxService.brightnessChange(vnnoxWebRequest.getPlayerList(), vnnoxWebRequest.getBrightness()));
    }
@@ -239,21 +177,28 @@
    @GetMapping("/list")
    public ResponseVO<Object> list(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) {
    public ResponseVO<Object> list(BaseConditionVO baseConditionVO,
                                   @RequestParam(value = "keyword", required = false) String keyword,
                                   @RequestParam(value = "order", required = false) Integer order,
                                   @RequestParam(value = "seq", required = false) Integer seq) {
        if (!permissionConfig.check(MenuEnum.LED_LIST.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        return ResponseUtil.successPage(ledPlayerEntityService.ledPlayerEntityList(baseConditionVO, keyword));
        return ResponseUtil.successPage(ledPlayerEntityService.ledPlayerEntityList(baseConditionVO, keyword, order, seq));
    }
    @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,
                                         @RequestParam(value = "order", required = false) Integer order,
                                         @RequestParam(value = "seq", required = false) Integer seq) {
        if (!permissionConfig.check(MenuEnum.LED_LIST.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        List<LedPlayerEntity> list = ledPlayerEntityService.ledPlayerEntityList(baseConditionVO, keyword);
        List<LedPlayerEntity> list = ledPlayerEntityService.ledPlayerEntityList(baseConditionVO, keyword, order, seq);
        List<LedPlayerEntity> entities = vnnoxService.setCacheInfo(vnnoxAPIUtil.syncCurrentInfo(list));
        List<LedPlayerEntity> online = new ArrayList<>();
        for (LedPlayerEntity ledPlayer : list) {
        for (LedPlayerEntity ledPlayer : entities) {
            if (ledPlayer.getOnlineStatus() == 1) {
                online.add(ledPlayer);
            }
@@ -262,6 +207,12 @@
    }
    /**
     * 屏幕详情     //前端未发现调用
     *
     * @param sn
     * @return
     */
    @GetMapping("/getVnnoxInfo/{sn}")
    public ResponseVO<Object> getBySnAndPlayerId(@PathVariable String sn) {
        return ResponseUtil.success(ledPlayerEntityService.getBySnAndPlayerSn(sn));