Newer
Older
pichan-haerbin / src / main / java / com / casic / controller / AlarmConfigController.java
chaizhuang on 29 Nov 2022 3 KB 哈尔滨燃气新增
package com.casic.controller;

import com.casic.entity.NbAlarmConfig;
import com.casic.entity.NbDevice;
import com.casic.model.AlarmConfigParam;
import com.casic.model.BusConfigParam;
import com.casic.model.ResponseData;
import com.casic.service.AlarmConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@AllArgsConstructor
@RequestMapping("/alarm")
@Slf4j
@Api(tags = "报警配置")
public class AlarmConfigController {

    private final AlarmConfigService alarmConfigService;

    @RequestMapping("/batch/config")
    @ApiOperation("报警下发批量配置")
    public ResponseData gasBatchConfig(@RequestBody List<AlarmConfigParam> alarmConfigParamList) {
        return alarmConfigService.gasBatchConfig(alarmConfigParamList);
    }

    @ApiImplicitParams({
            @ApiImplicitParam(name = "devcode", value = "设备编号", required = false),
            @ApiImplicitParam(name = "beginTime", value = "开始时间", required = false),
            @ApiImplicitParam(name = "endTime", value = "结束时间", required = false),
            @ApiImplicitParam(name = "status", value = "设备状态", required = false),
            @ApiImplicitParam(name = "sortDevcode", value = "按设备编号排序", required = true),
            @ApiImplicitParam(name = "currentIndex", value = "当前页", required = true),
            @ApiImplicitParam(name = "pageSize", value = "页大小", required = true)
    })
    @ApiOperation("报警配置列表")
    @RequestMapping(value = "/config/list")
    public ResponseData<List<NbAlarmConfig>> deviceListPage(@RequestParam(value = "devcode", required = false) String devcode,
                                                            @RequestParam(value = "beginTime", required = false) String beginTime,
                                                            @RequestParam(value = "endTime", required = false) String endTime,
                                                            @RequestParam(value = "status", required = false) String status,
                                                            @RequestParam(value = "sortDevcode",  required = true)  Boolean sortDevcode,
                                                            @RequestParam(value = "currentIndex", required = true) Integer currentIndex,
                                                            @RequestParam(value = "pageSize", required = true) Integer pageSize) {
        return alarmConfigService.configList(devcode, beginTime, endTime,currentIndex,pageSize,status,sortDevcode);
    }
}