2021与蓝度共同重构项目,服务端
liuhaonan
2022-09-15 60fc84976142a9019effbbb79c4d43bc4a4a3b36
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java
@@ -6,13 +6,13 @@
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.ximon.admin.dto.DeviceStatus;
import com.sandu.ximon.admin.param.PoleBindParam;
import com.sandu.ximon.admin.param.PoleBindingParam;
import com.sandu.ximon.admin.param.PoleParam;
import com.sandu.ximon.admin.param.PoleStatesParam;
import com.sandu.ximon.admin.dto.DeviceStatusDto;
import com.sandu.ximon.admin.param.*;
import com.sandu.ximon.admin.security.PermissionConfig;
import com.sandu.ximon.admin.service.AirEquipmentService;
import com.sandu.ximon.admin.service.IpVolumeService;
@@ -127,17 +127,29 @@
    /**
     * 设置三元码
     */
    @AnonymousAccess
    @PostMapping("/setMac/{baseMac}")
    public ResponseVO<Object> setMac(@PathVariable String baseMac) {
        if (!permissionConfig.check(MenuEnum.POLE_REAL_ADD.getCode())) {
        //判断是否是有设置三元码权限
        if (!permissionConfig.check(MenuEnum.BASE_DEVICE_01.getCode()) && MenuEnum.BASE_DEVICE_01.getCode().equals(baseMac)) {
            return ResponseUtil.fail("缺少对应用户权限");
        } else if (!permissionConfig.check(MenuEnum.BASE_DEVICE_02.getCode()) && MenuEnum.BASE_DEVICE_02.getCode().equals(baseMac)) {
            return ResponseUtil.fail("缺少对应用户权限");
        } else if (!permissionConfig.check(MenuEnum.BASE_DEVICE_03.getCode()) && MenuEnum.BASE_DEVICE_03.getCode().equals(baseMac)) {
            return ResponseUtil.fail("缺少对应用户权限");
        } else if (!permissionConfig.check(MenuEnum.BASE_DEVICE_04.getCode()) && MenuEnum.BASE_DEVICE_04.getCode().equals(baseMac)) {
            return ResponseUtil.fail("缺少对应用户权限");
        } else if (!permissionConfig.check(MenuEnum.BASE_DEVICE_05.getCode()) && MenuEnum.BASE_DEVICE_05.getCode().equals(baseMac)) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        return ResponseUtil.success(poleService.setMac(baseMac));
    }
    /**
     * 恢复灯杆出厂设置
     */
    @AnonymousAccess
    @PostMapping("/poleReset/{poleId}")
    public ResponseVO<Object> poleReset(@PathVariable Long poleId) {
        if (!permissionConfig.check(MenuEnum.POLE_REAL_RESET.getCode())) {
@@ -254,6 +266,7 @@
        }
    }
    @AnonymousAccess
    @PostMapping("/listStatusByDeviceCode")
    public ResponseVO<Object> getStatusById(@RequestBody String[] deviceCodeList) {
        if (!permissionConfig.check(MenuEnum.GET_STATE_BY_DEVICECODE.getCode())) {
@@ -272,6 +285,62 @@
        return ResponseUtil.success(statusList);
    }
    /**
     * 查询是否存在可注册设备
     *
     * @param
     * @return
     */
    @AnonymousAccess
    @PostMapping("/isRegisterByCode")
    public ResponseVO<Object> getStatusByCode() {
/*//        if (!permissionConfig.check(MenuEnum.GET_STATE_BY_DEVICECODE.getCode())) {
//            return ResponseUtil.fail("缺少对应用户权限");
//        }*/
        ArrayList<String> deviceCodeList = new ArrayList<>();
        deviceCodeList.add("baseDevice01");
        deviceCodeList.add("baseDevice02");
        deviceCodeList.add("baseDevice03");
        deviceCodeList.add("baseDevice04");
        deviceCodeList.add("baseDevice05");
        for (String s : deviceCodeList) {
            if (s == null) {
                return ResponseUtil.fail("参数不能为空");
            }
        }
        if (ArrayUtil.isEmpty(deviceCodeList)) {
            return ResponseUtil.fail("参数不能为空");
        }
        List<DeviceStatus> statusList = poleService.listStatusByDeviceCode(deviceCodeList);
        List<DeviceStatusDto> list = new ArrayList<>();
        String s = "baseDevice0";
        for (int i = 0; i < deviceCodeList.size(); i++) {
            DeviceStatusDto dto = new DeviceStatusDto();
            dto.setDeviceCode(s + (i + 1));
            dto.setName(s + (i + 1));
            list.add(dto);
        }
        statusList.forEach(
                status -> {
                    list.forEach(
                            dto -> {
                                if (status.getDeviceCode().equals(dto.getDeviceCode())) {
                                    //status=1时  设备可以注册
                                    if (status.getStatus() == 1) {
                                        dto.setStatus(1);
                                    }
                                }
                            }
                    );
                }
        );
        return ResponseUtil.success(list);
    }
    @PostMapping("/ClientBindingPole")
    public ResponseVO<Object> ClientBindingPole(@RequestBody PoleBindParam param) {
        if (!permissionConfig.check(MenuEnum.CLIENT_BINDING_POLE.getCode())) {
@@ -280,9 +349,17 @@
        return ResponseUtil.success(poleService.ClientBindingPole(param.getClientId(), param.getPoleIds()));
    }
    @PostMapping("/ClientUnBindingPole")
    public ResponseVO<Object> ClientUnBindingPole(@RequestBody PoleBindParam param) {
        if (!permissionConfig.check(MenuEnum.CLIENT_UNBINDING_POLE.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        return ResponseUtil.success(poleService.ClientUnBindingPole(param.getClientId(), param.getPoleIds()));
    }
    /**
     * 查找自己拥有的灯杆
     * 查找拥有的灯杆
     */
    @PostMapping("/getOwnerPole/{cilentId}")
    public ResponseVO<Object> getOwnerPole(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword
@@ -309,12 +386,15 @@
    /**
     * 推送大气设备到诺瓦
     */
    @GetMapping("/pushAidDataToNova/{poleId}")
    public ResponseVO<Object> pushAirDataToNova(@PathVariable Long poleId) {
    @GetMapping("/pushAidDataToNova")
    public ResponseVO<Object> pushAirDataToNova(@RequestBody @Validated PushAirDataToNovaParam param) {
        if (!permissionConfig.check(MenuEnum.PUSH_AIR_DATA_TO_NOVA.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        return ResponseUtil.success(poleService.pushAirDataToNova(poleId));
        if (param.getDuration() <= 0 || param.getDuration() > 86400000) {
            throw new BusinessException("播放时间需大于零且小于86400000 !");
        }
        return ResponseUtil.success(poleService.pushAirDataToNova(param));
    }
    /**