2021与蓝度共同重构项目,服务端
liuhaonan
2022-05-31 9cb092af6af8167e7cba7e6d57596ea0af04ca09
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
@@ -1,13 +1,12 @@
package com.sandu.ximon.admin.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.sandu.common.domain.CommonPage;
import com.sandu.common.domain.ResponseVO;
import com.sandu.common.execption.BusinessException;
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.entity.ProgramPro;
@@ -19,6 +18,8 @@
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.admin.service.*;
import com.sandu.ximon.admin.utils.LightemitUtils;
import com.sandu.ximon.admin.utils.ListPagingUtils;
import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
import com.sandu.ximon.admin.vo.LedScheduleVO;
import com.sandu.ximon.dao.domain.PoleLightemitEntity;
import com.sandu.ximon.dao.domain.PoleXixunPlayerEntity;
@@ -43,8 +44,7 @@
    private final PoleLightemitService poleLightemitService;
    private final LightemitUtils lightemitUtils;
    private final LedScheduleService scheduleService;
    private final PoleBindingService bindingService;
    private final PoleService poleService;
    private PermissionConfig permissionConfig;
    // private final ListPageUtil listPageUtil;
@@ -74,14 +74,16 @@
        if (byId == null) {
            throw new BusinessException("未选择LED屏");
        }
//        QueryWrapper<PoleXixunPlayerEntity> queryWrapper = new QueryWrapper<>();
//        queryWrapper.eq("program_code", programPro.get_id());
        boolean insert = false;
        if (xiXunPlayerService.removeById(programPro.getProgramId())) {
            insert = xiXunPlayerService.insert(programPro);
        boolean update = xiXunPlayerService.update(programPro);
        if (update) {
            return ResponseUtil.success("编辑成功!");
        } else {
            return ResponseUtil.fail("编辑失败!");
        }
        ;
        return ResponseUtil.success(insert);
    }
    /**
@@ -120,14 +122,15 @@
     * @return
     */
    @GetMapping("/list")
    public ResponseVO<Object> list(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) {
    public ResponseVO<Object> list(BaseConditionVO baseConditionVO,
                                   @RequestParam(value = "order", required = false) Integer order,
                                   @RequestParam(value = "seq", required = false) Integer seq,
                                   @RequestParam(value = "keyword", required = false) String keyword) {
        if (!permissionConfig.check(MenuEnum.LED_PROGRAM_LIST.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        LambdaQueryWrapper<PoleXixunPlayerEntity> wrapper = xiXunPlayerService.XixunPlayerList(keyword);
        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
        return ResponseUtil.success(xiXunPlayerService.list(wrapper));
        List<PoleXixunPlayerEntity> list = xiXunPlayerService.listProgram(baseConditionVO, order, seq, keyword);
        return ResponseUtil.success(list);
    }
@@ -143,8 +146,8 @@
        if (!permissionConfig.check(MenuEnum.XIXUN_PROGRAM_PUSH.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        xiXunPlayerService.videoXixunPlayer(pid, lightemitIds);
        return ResponseUtil.success("推送成功");
        return ResponseUtil.success(xiXunPlayerService.videoXixunPlayer(pid, lightemitIds));
    }
    //执行中的节目
@@ -228,24 +231,19 @@
     * @return
     */
    @GetMapping("/listLed")
    public ResponseVO<Object> listLed(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword,
    public ResponseVO<Object> listLed(BaseConditionVO baseConditionVO,
                                      @RequestParam(value = "order", required = false) Integer order,
                                      @RequestParam(value = "seq", required = false) Integer seq,
                                      @RequestParam(value = "keyword", required = false) String keyword,
                                      @RequestParam(value = "isOnLine", required = false) boolean isOnLine) {
        if (!permissionConfig.check(MenuEnum.LED_LIST.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        List<PoleLightemitEntity> poleLightemitEntityList = poleLightemitService.listLed(keyword, isOnLine);
        poleLightemitEntityList.forEach(led -> {
            led.setStreetlightId(led.getPoleId());
            led.setStreetlightName(led.getPoleName());
        });
        List<PoleLightemitEntity> poleLightemitEntityList = poleLightemitService.listLed(keyword, order, seq, isOnLine);
        CommonPage commonPage = CommonPage.restPage(poleLightemitEntityList);
        int size = poleLightemitEntityList.size();
        commonPage.setTotal((long) size);
        commonPage.setTotalPage(size / baseConditionVO.getPageSize() + 1);
        if (size % baseConditionVO.getPageSize() == 0) {
            commonPage.setTotalPage(size / baseConditionVO.getPageSize());
        }
        CommonPage commonPage = ListPagingUtils.pages(poleLightemitEntityList, baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
        return ResponseUtil.success(commonPage);
    }
@@ -258,11 +256,9 @@
        return ResponseUtil.success(poleLightemitService.getLedByLightControlCode(lightemitControlCode));
    }
    /*
    设置屏幕开关
    /**
     * 设置屏幕开关
     */
    @AnonymousAccess
    @PostMapping("/setScreenOpen")
    public ResponseVO<Object> setScreenOpen(@RequestBody SetScreenOpenParam setScreenOpenEntity) {
        if (!permissionConfig.check(MenuEnum.XIXUN_ON_OFF.getCode())) {
@@ -337,19 +333,6 @@
    }
    /**
     * 测试
     *
     * @param
     * @return
     */
    @AnonymousAccess
    @PostMapping("/test/{str}")
    public ResponseVO<Object> setBrightness(@PathVariable String str) {
        return ResponseUtil.success(lightemitUtils.getIsScreenOpen(str));
    }
    /*
    设置亮度
   */
@@ -421,6 +404,15 @@
        if (!permissionConfig.check(MenuEnum.XIXUN_PLAN_DELETE.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        /**
         * 熙汛定时删除 日志记录开始
         */
        String content = "{删除的熙汛定时id:" + ids + " }";
        StoreOperationRecordsUtils.storeOperationData(null, null, "熙汛定时任务删除", content);
        /**
         * 熙汛定时删除 日志记录结束
         */
        return ResponseUtil.success(scheduleService.removeByIds(ids));
    }
@@ -434,12 +426,15 @@
    @GetMapping("/listSchedule")
    public ResponseVO<Object> listSchedule(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) {
    public ResponseVO<Object> listSchedule(BaseConditionVO baseConditionVO,
                                           @RequestParam(value = "order", required = false) Integer order,
                                           @RequestParam(value = "seq", required = false) Integer seq,
                                           @RequestParam(value = "keyword", required = false) String keyword) {
        if (!permissionConfig.check(MenuEnum.PLAYPLAN_LIST.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
        return ResponseUtil.success(scheduleService.listSchedule(baseConditionVO, keyword));
        return ResponseUtil.success(scheduleService.listSchedule(baseConditionVO, order, seq, keyword));
    }
@@ -511,8 +506,29 @@
            throw new BusinessException("未选择LED屏");
        }
        for (PoleLightemitEntity playerId : list) {
            lightemitUtils.clear(playerId.getLightemitControlCode());
            //清屏
            String clear = lightemitUtils.clear(playerId.getLightemitControlCode());
            //清除播放列表
            lightemitUtils.clearVideoPlay(playerId.getLightemitControlCode());
            //清除节目列表
            lightemitUtils.clearPlayerTask(playerId.getLightemitControlCode());
        }
        /**
         * 熙汛清屏 日志记录开始
         */
        //获取listCode
        List<String> listCode = new ArrayList<>();
        List<String> msg = new ArrayList<>();
        for (PoleLightemitEntity poleLightemitEntity : list) {
            listCode.add(poleLightemitEntity.getLightemitControlCode());
            msg.add("[屏幕名称" + poleLightemitEntity.getLightemitName() + "设备编码" + poleLightemitEntity.getLightemitControlCode() + "],");
        }
        String content = JSON.toJSONString(msg);
        StoreOperationRecordsUtils.storeOperationData(listCode, null, "熙汛清屏", content);
        /**
         * 熙汛清屏 日志记录结束
         */
        return ResponseUtil.success("清屏成功");
    }
}