package com.bizmatics.controller.web; import com.bizmatics.common.core.bean.ApiResult; import com.bizmatics.common.core.bean.CommonPage; import com.bizmatics.model.Device; import com.bizmatics.model.DeviceList; import com.bizmatics.model.vo.CorrespondDeviceListVO; import com.bizmatics.model.vo.CorrespondDeviceVO; import com.bizmatics.model.vo.DeviceOneVo; import com.bizmatics.service.DeviceService; import com.bizmatics.service.vo.DeviceCountVO; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.util.Date; import java.util.List; /** * 设备管理-通信设备 * * @author ya * @since 2021-07-07 */ @Slf4j @RestController @RequestMapping("/device") public class DeviceController { @Autowired private DeviceService deviceService; /** * 查询设备总数 * * @param startTime * @param endTime * @return */ @GetMapping("/count") public ApiResult count(@RequestParam Date startTime, @RequestParam Date endTime) { return ApiResult.success(deviceService.selectDeviceCount(startTime, endTime)); } /** * 查询不同类型的设备数量 * * @param site 站点id * @return */ @GetMapping("/deviceTypeCount") public ApiResult selectDeviceCountByType(@RequestParam Integer site) { return ApiResult.success(deviceService.selectDeviceCountByType(site)); } /** * 通信设备-设备下拉框查询 * * @param siteId 站点ID * @return */ @GetMapping("deviceList") public ApiResult> deviceList(@RequestParam(value = "siteId", required = false, defaultValue = "0") String siteId) { return ApiResult.success(deviceService.deviceList(siteId)); } /** * 数据管理-同比分析报表-右侧设备查询 * * @param siteId 站点ID * @param deviceType 设备类型 默认1、用电设备 * @return */ @GetMapping("dataManagementDeviceList") public ApiResult> dataManagementDeviceList(@RequestParam int siteId, @RequestParam(value = "deviceType", required = false, defaultValue = "1") int deviceType) { return ApiResult.success(deviceService.dataManagementDeviceList(siteId, deviceType)); } /** * 设备管理-通信设备-新增 * * @param device * @return */ @PostMapping("correspondDeviceAdd") public ApiResult correspondDeviceAdd(@RequestBody Device device) { deviceService.correspondDeviceAdd(device); return ApiResult.success(); } /** * 设备管理-通信设备-修改 * * @param device * @return */ @PostMapping("correspondDeviceUpdate") public ApiResult correspondDeviceUpdate(@RequestBody Device device) { deviceService.correspondDeviceUpdate(device); return ApiResult.success(); } /** * 设备管理-通信设备-注销 * * @param id * @return */ @GetMapping("correspondDeviceDel") public ApiResult correspondDeviceDel(@RequestParam int id) { deviceService.correspondDeviceDel(id); return ApiResult.success(); } /** * 设备管理-通信设备-查询 * * @param deviceName 设备名称 * @param size 条数 * @param current 页数 * @return */ @GetMapping("correspondDeviceList") public ApiResult> correspondDeviceList(@RequestParam(required = false) String deviceName, @RequestParam(value = "size", required = false, defaultValue = "15") int size, @RequestParam(value = "current", required = false, defaultValue = "1") int current) { return ApiResult.success(deviceService.correspondDeviceList(deviceName, size, current)); } /** * 设备管理-通信设备-修改回显 * * @param id 通信设备表主键ID * @return */ @GetMapping("correspondDeviceListEcho") public ApiResult> correspondDeviceListEcho(@RequestParam int id) { return ApiResult.success(deviceService.correspondDeviceListEcho(id)); } /** * 设备管理-视频监测-列表查询 * * @param siteId 站点ID * @param deviceName 设备名称 * @param size 页数 * @param current 条数 * @param deviceType 1:183用电设备,2:视频监控设备,3:171用电设备,4:173用电设备,5:158智能网关,6:其他 0:所有 * @return */ @GetMapping("videoMonitoringDeviceList") public ApiResult> videoMonitoringDeviceList(@RequestParam Integer siteId, @RequestParam(required = false) String deviceName, @RequestParam(value = "size", required = false, defaultValue = "1") Integer size, @RequestParam(value = "current", required = false, defaultValue = "10") Integer current, @RequestParam(value = "deviceType", required = false, defaultValue = "2") Integer deviceType ) { return ApiResult.success(deviceService.videoMonitoringDeviceList(deviceName, deviceType, siteId, size, current)); } /** * 设备管理-通信设备-克隆 * * @param type 1 新设备 2 已有设备 * @param newDeviceCode 克隆设备对象 * @param oldDeviceCode 设备编号 * @param deviceName 设备名称 * @return */ @GetMapping("variableCloning") public ApiResult variableCloning(@RequestParam Integer type, @RequestParam String newDeviceCode, @RequestParam String oldDeviceCode, @RequestParam(required = false) String deviceName ) { Integer pd = deviceService.variableCloning(type, newDeviceCode, oldDeviceCode, deviceName); if (pd==1){ return ApiResult.error("BIZ-0003","设备编号重复"); }else { return ApiResult.success(); } } /** * 通信设备列表查询-无分页 * * @param siteId 站点ID * @param deviceType 1电力 2视频 * @return */ @GetMapping("deviceListOne") public ApiResult> deviceListOne(@RequestParam Integer siteId, @RequestParam(value = "deviceType", required = false, defaultValue = "1") Integer deviceType) { return ApiResult.success(deviceService.deviceListOne(siteId, deviceType)); } /** * 站点管理-摄像头-导出 * * @param siteId 站点Id * @param deviceName 设备名称 * @param deviceType 1:183用电设备,2:视频监控设备,3:171用电设备,4:173用电设备,5:158智能网关,6:其他 * @return */ @GetMapping("deviceExport") public ApiResult deviceExport(@RequestParam(value = "siteId", required = false, defaultValue = "0") Integer siteId, @RequestParam(required = false) String deviceName, @RequestParam(value = "deviceType", required = false, defaultValue = "2") Integer deviceType) { return ApiResult.success(deviceService.deviceExport(deviceName, deviceType, siteId)); } /** * 设备管理-通信设备-导出 * @param deviceName 设备名称 * @return */ @GetMapping("correspondDeviceExport") public ApiResult correspondDeviceExport(@RequestParam(required = false) String deviceName) { return ApiResult.success(deviceService.correspondDeviceExport(deviceName)); } /** * 通信设备-导入 * * @param multipartFile 导入文件 * @return * @throws Exception */ @PostMapping("/deviceImport") public ApiResult deviceImport(@RequestParam("file") MultipartFile multipartFile) throws Exception { deviceService.deviceImport(multipartFile); return ApiResult.success(); } }