package com.casic.controller; import com.casic.entity.NbDevice; import com.casic.model.DataGasConfigParam; import com.casic.model.ResponseData; import com.casic.service.GasDeviceService; import com.casic.util.ExportExcelUtil; 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.*; import java.io.IOException; import java.util.List; @AllArgsConstructor @RestController @RequestMapping("/casic") @Slf4j @Api(tags = "设备管理") public class DeviceStatusController extends ExportExcelUtil { private final GasDeviceService gasDeviceService; @RequestMapping("/status/config") @ApiOperation("状态下发查询") public ResponseData gasStatusConfig(@RequestBody List<DataGasConfigParam> dataGasConfigList) { return gasDeviceService.devcieStatusConfig(dataGasConfigList); } @ApiImplicitParams({ @ApiImplicitParam(name = "keywords", value = "设备编号", required = false), @ApiImplicitParam(name = "beginTime", value = "开始时间", required = false), @ApiImplicitParam(name = "endTime", value = "结束时间", required = false) }) @ApiOperation("设备列表导出") @RequestMapping(value = "/device/export") public void deviceDataExport(String keywords, String beginTime, String endTime) throws IOException { List<NbDevice> deviceDataExcelDtos = gasDeviceService.getDevicieList(beginTime, endTime, keywords); super.exportExcel(NbDevice.class, deviceDataExcelDtos, "设备列表.xlsx"); } @ApiImplicitParams({ @ApiImplicitParam(name = "devcode", value = "设备编号", required = false), @ApiImplicitParam(name = "beginTime", value = "开始时间", required = false), @ApiImplicitParam(name = "endTime", value = "结束时间", required = false), @ApiImplicitParam(name = "emptyStatus", value = "空状态(查true,不查false)", required = true), @ApiImplicitParam(name = "sortDevcode", value = "按设备编号排序", required = true), @ApiImplicitParam(name = "currentIndex", value = "当前页", required = true), @ApiImplicitParam(name = "pageSize", value = "页大小", required = true) }) @ApiOperation("设备分页列表") @RequestMapping(value = "/device/list") public ResponseData<List<NbDevice>> deviceListPage(@RequestParam(value = "devcode", required = false) String devcode, @RequestParam(value = "emptyStatus", required = true) Boolean emptyStatus, @RequestParam(value = "beginTime", required = false) String beginTime, @RequestParam(value = "endTime", required = false) String endTime, @RequestParam(value = "sortDevcode", required = true) Boolean sortDevcode, @RequestParam(value = "currentIndex", required = true) Integer currentIndex, @RequestParam(value = "pageSize", required = true) Integer pageSize) { return gasDeviceService.getDevicieListPage(devcode, beginTime, endTime, currentIndex, pageSize,emptyStatus,sortDevcode); } @RequestMapping("/device/dict") @ApiOperation("设备字典列表") public ResponseData<List<NbDevice>> deviceDict() { return gasDeviceService.deviceDict(); } }