2021与蓝度共同重构项目,服务端
zhanzhiqin
2022-03-01 da6ea6d775461e6d56eb50cbdd79e6ba3b8f41e4
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java
@@ -13,12 +13,15 @@
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.service.AirEquipmentService;
import com.sandu.ximon.admin.service.MonitorService;
import com.sandu.ximon.admin.service.PoleService;
import com.sandu.ximon.dao.domain.Pole;
import lombok.AllArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotEmpty;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
@@ -34,6 +37,8 @@
public class PoleController {
    private final PoleService poleService;
    private MonitorService monitorService;
    private AirEquipmentService airEquipmentService;
    @PostMapping("/add")
    public ResponseVO<Object> addPole(@RequestBody @Validated PoleParam param) {
@@ -78,9 +83,9 @@
     */
    @PostMapping("/setMac/{baseMac}")
    public ResponseVO<Object> setMac(@PathVariable String baseMac) {
    //public ResponseVO<Object> setMac() {
        //public ResponseVO<Object> setMac() {
        return ResponseUtil.success(poleService.setMac(baseMac));
       // return ResponseUtil.success(poleService.setMac());
        // return ResponseUtil.success(poleService.setMac());
    }
    /**
@@ -91,7 +96,7 @@
        return ResponseUtil.success(poleService.poleReset(poleId));
    }
//TODO  设备的绑定解绑都要单独重新处理
    /**
     * 灯杆绑定设备
     */
@@ -99,12 +104,79 @@
    public ResponseVO<Object> bindPole(@PathVariable Long poleId, @RequestBody @Validated PoleBindingParam param) {
        boolean result = poleService.bindPole(poleId, param);
        if (result) {
            //设备类型,0路灯,1led屏幕,2充电桩,3大气监测,4水质监测,5ip音柱,6lcd广告机,7摄像头,8杆体倾测,9一键救助
            switch (param.getDeviceType()) {
                case 0:
                    break;
                case 1:
                    break;
                case 2:
                    break;
                case 3:
                    break;
                case 4:
                    break;
                case 5:
                    break;
                case 6:
                    break;
                case 7:
                    monitorService.updateBingdingState(true, param.getDeviceCode());
                    break;
                case 8:
                    break;
                case 9:
                    break;
                default:
                    break;
            }
            return ResponseUtil.success("绑定成功");
        } else {
            return ResponseUtil.fail("绑定失败");
        }
    }
    /**
     * 灯杆绑定设备
     */
    @PostMapping("/unBind/{poleId}")
    public ResponseVO<Object> unBindPole(@PathVariable Long poleId, @RequestBody  @Validated PoleBindingParam param) {
        boolean result = poleService.unBindPole(param.getDeviceCode());
        if (result) {
            //设备类型,0路灯,1led屏幕,2充电桩,3大气监测,4水质监测,5ip音柱,6lcd广告机,7摄像头,8杆体倾测,9一键救助
            switch (param.getDeviceType()) {
                case 0:
                    break;
                case 1:
                    break;
                case 2:
                    break;
                case 3:
                    break;
                case 4:
                    break;
                case 5:
                    break;
                case 6:
                    break;
                case 7:
                    monitorService.updateBingdingState(false, param.getDeviceCode());
                    break;
                case 8:
                    break;
                case 9:
                    break;
                default:
                    break;
            }
            return ResponseUtil.success("解绑成功");
        } else {
            return ResponseUtil.fail("解绑失败");
        }
    }
    @PostMapping("/listStatusByDeviceCode")
    public ResponseVO<Object> getStatusById(@RequestBody String[] deviceCodeList) {
        for (String s : deviceCodeList) {