2021与蓝度共同重构项目,服务端
zhanzhiqin
2022-04-28 bfce748e37a753c729e15dd233600379f504d019
Merge remote-tracking branch 'origin/master'
已修改5个文件
62 ■■■■■ 文件已修改
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/XiXunPlayerService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/utils/VnnoxProgramAPIUtil.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java
@@ -7,6 +7,7 @@
import com.sandu.common.domain.CommonPage;
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.common.util.SpringContextHolder;
import com.sandu.ximon.admin.dto.DeviceStatus;
@@ -266,6 +267,7 @@
    /**
     * 推送大气设备到诺瓦
     */
    @AnonymousAccess
    @GetMapping("/pushAidDataToNova/{poleId}")
    public ResponseVO<Object> pushAirDataToNova(@PathVariable Long poleId) {
        return ResponseUtil.success(poleService.pushAirDataToNova(poleId));
@@ -274,6 +276,7 @@
    /**
     * 推送大气设备到熙讯
     */
    @AnonymousAccess
    @GetMapping("/pushAirDataToXiXun/{poleId}")
    public ResponseVO<Object> pushAirDataToXiXun(@PathVariable Long poleId) {
        return ResponseUtil.success(poleService.pushAirDataToXiXun(poleId));
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
@@ -8,6 +8,7 @@
import com.sandu.common.execption.BusinessException;
import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.util.ResponseUtil;
import com.sandu.common.util.SpringContextHolder;
import com.sandu.ximon.admin.entity.ProgramPro;
import com.sandu.ximon.admin.param.LEDScheduleParam_xixun;
import com.sandu.ximon.admin.param.SetBrightnessParam;
@@ -409,4 +410,32 @@
        }
        return ResponseUtil.success(list);
    }
    /**
     * 关闭天气推送
     */
    @GetMapping("/closeWeatherPush/{id}")
    public ResponseVO<Object> closeWeatherPush(@PathVariable Long id) {
        if(id==null){
            throw new BusinessException("未选择LED屏");
        }
        SpringContextHolder.getBean(PoleService.class).closeXiXunAirPush(id);
        return ResponseUtil.success("关闭成功");
    }
    /**
     * 清屏操作
     */
    @GetMapping("/clearScreen")
    public ResponseVO<Object> clearScreen(@RequestBody List<String> codes) {
        if(codes.isEmpty()){
            throw new BusinessException("未选择LED屏");
        }
        for(String playerId : codes) {
            lightemitUtils.clear(playerId);
        }
        return ResponseUtil.success("清屏成功");
    }
}
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
@@ -30,6 +30,7 @@
import com.sandu.ximon.admin.param.*;
import com.sandu.ximon.admin.redis.LightKey;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.admin.utils.LightemitUtils;
import com.sandu.ximon.admin.utils.RedisUtils;
import com.sandu.ximon.admin.utils.response.VnnoxResult;
import com.sandu.ximon.admin.vo.PoleBindVO;
@@ -873,6 +874,12 @@
     */
    public boolean pushAirDataToXiXun(Long poleId) {
        Pole pole = getById(poleId);
        //判断归属权
        if (SecurityUtils.getClientId() != null) {
            if (!pole.getClientId().equals(SecurityUtils.getUserId()) && !pole.getUserId().equals(SecurityUtils.getUserId())) {
                throw new BusinessException("无权限操作");
            }
        }
        PoleBinding air = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId).eq(PoleBinding::getDeviceType, 3));
        PoleBinding xixun = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId).eq(PoleBinding::getDeviceType, 10));
        if (pole == null) {
@@ -890,6 +897,27 @@
        return SpringContextHolder.getBean(XiXunPlayerService.class).pushWeather(xixun.getDeviceCode(), data, pole);
    }
    /**
     * 关闭熙讯大气推送
     */
    public void closeXiXunAirPush(Long poleId) {
        Pole pole = getById(poleId);
        if (SecurityUtils.getClientId() != null) {
            if (!pole.getClientId().equals(SecurityUtils.getUserId()) && !pole.getUserId().equals(SecurityUtils.getUserId())) {
                throw new BusinessException("无权限操作");
            }
        }
        PoleBinding air = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId).eq(PoleBinding::getDeviceType, 3));
        PoleBinding xixun = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId).eq(PoleBinding::getDeviceType, 10));
        if (pole == null || air == null || xixun == null) {
            throw new BusinessException("设备不存在");
        }
        //关闭推送
        SpringContextHolder.getBean(LightemitUtils.class).clear(xixun.getDeviceCode());
    }
    /**
     * 推送大气监测数据到novaLED
     */
ximon-admin/src/main/java/com/sandu/ximon/admin/service/XiXunPlayerService.java
@@ -81,7 +81,6 @@
        poleXixunPlayer.setRequestBody(json);
        poleXixunPlayer.setScreenShot(programPro.getScreenShot());
        //  poleXixunPlayer.setCreatTime(sdf.format(date));
        poleXixunPlayer.setCreateUserId(SecurityUtils.getUserId());
        if (SecurityUtils.getClientId() != null) {
            poleXixunPlayer.setCreateUserId(SecurityUtils.getUserId());
            if (clientService.findClientId()) {
ximon-admin/src/main/java/com/sandu/ximon/admin/utils/VnnoxProgramAPIUtil.java
@@ -34,6 +34,7 @@
                program.toJson(),
                new CommonHeader(CommonHeader.JSON, true)
        );
        System.out.println(program.toJson());
        LogUtils.error("节目播放response:"+result);
        return JSON.parseObject(result,VnnoxResultResponse.class);
    }