package com.sandu.ximon.admin.controller; import com.sandu.common.domain.ResponseVO; import com.sandu.common.object.BaseConditionVO; import com.sandu.common.util.ResponseUtil; import com.sandu.ximon.admin.security.PermissionConfig; import com.sandu.ximon.admin.service.AirEquipmentService; import com.sandu.ximon.dao.bo.AirEquipmentBo; import com.sandu.ximon.dao.enums.MenuEnum; import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.*; import java.util.List; /** * 大气设备 */ @RestController @AllArgsConstructor @RequestMapping("/v1/admin/airequipment") public class AirEquipmentController { private final AirEquipmentService airEquipmentService; private PermissionConfig permissionConfig; /** * 查询大气设备 * * @return */ @GetMapping("/listAirEquipment") public ResponseVO listAirEquipmentByKeyword(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) { if (!permissionConfig.check(MenuEnum.AIR_EQUIPMENT_LIST.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } List list = airEquipmentService.listAirEquipmentByKeyword(baseConditionVO, keyword); return ResponseUtil.successPage(list); } @PostMapping("/delete/{id}") public ResponseVO deleteAirEquipment(@PathVariable Long id) { if (!permissionConfig.check(MenuEnum.AIR_EQUIPMENT_DELETE.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } boolean result = airEquipmentService.deleteAirEquipment(id); if (result) { return ResponseUtil.success(null); } else { return ResponseUtil.fail("操作失败"); } } /** * 查询大气设备心跳包时间 * * @return */ @GetMapping("/QueryHeartBeatTime") public ResponseVO QueryHeartBeatTime(@RequestParam(value = "mac", required = false) String mac) { return ResponseUtil.success(airEquipmentService.QueryHeartBeatTime(mac)); } /** * 设置心跳包间隔时间 * * @param mac * @param time * @return */ @GetMapping("/setHeartBeatTime") public ResponseVO setHeartBeatTime(@RequestParam(value = "mac", required = false) String mac, @RequestParam(value = "time", required = false) Integer time) { return ResponseUtil.success(airEquipmentService.setHeartBeatTime(mac, time)); } /** * 查询传感器数量/故障 * * @param mac * @return */ @GetMapping("/QuerySensorInfo") public ResponseVO QuerySensorInfo(@RequestParam(value = "mac", required = false) String mac) { return ResponseUtil.success(airEquipmentService.QuerySensorInfo(mac)); } /** * 查询软硬件版本 * * @param mac * @return */ @GetMapping("/QueryVersion") public ResponseVO QueryVersion(@RequestParam(value = "mac", required = false) String mac) { airEquipmentService.QueryVersion(mac); return ResponseUtil.success(null); } /** * 软重启 * * @param mac * @return */ @GetMapping("/Reboot") public ResponseVO Reboot(@RequestParam(value = "mac", required = false) String mac) { return ResponseUtil.success(airEquipmentService.Reboot(mac)); } /** * 设置数据修正值 * * @param mac 灯杆MAC * @param type 数据修正设备类型 * @param valueOfReal 传感器数值 * @param valueOfStandard 标准仪器数值 * @return */ public ResponseVO ModifiedData(@RequestParam(value = "mac", required = false) String mac, @RequestParam(value = "type", required = false) String type, @RequestParam(value = "valueOfReal", required = false) Double valueOfReal, @RequestParam(value = "valueOfStandard", required = false) Double valueOfStandard) { airEquipmentService.ModifiedData(mac, type, valueOfReal, valueOfStandard); return ResponseUtil.success(null); } }