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.param.C3ChargingParam; import com.sandu.ximon.admin.param.LightPoleHeelingListParam; import com.sandu.ximon.admin.param.LightPoleHeelingParam; import com.sandu.ximon.admin.service.LightPoleHeelingService; import com.sandu.ximon.dao.domain.LightPoleHeeling; import lombok.AllArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; /** * 灯杆倾斜 */ @RestController @AllArgsConstructor @RequestMapping("/v1/admin/LightPoleHeeling") public class LightPoleHeelingController { private final LightPoleHeelingService lightPoleHeelingService; @GetMapping public ResponseVO listLightPoleHeeling() { List list = lightPoleHeelingService.listLightPoleHeeling(); return ResponseUtil.successPage(list); } /** * 模糊查询 * * @return */ @PostMapping("/listLightPoleHeelingByKeyword") public ResponseVO listLightPoleHeelingByKeyword(BaseConditionVO baseConditionVO , @RequestBody(required = false) LightPoleHeelingListParam lightPoleHeelingListParam) { List list = lightPoleHeelingService.listLightPoleHeelingByKeyword(baseConditionVO, lightPoleHeelingListParam); return ResponseUtil.successPage(list); } /** * 灯杆倾斜心跳包 * * @return */ @PostMapping("/LightPoleHeelingHeartbeatPackage") public ResponseVO LightPoleHeelingHeartbeatPackage(@RequestBody @Validated LightPoleHeelingParam lightPoleHeelingParam) { return ResponseUtil.success(lightPoleHeelingService.LightPoleHeelingHeartbeatPackage(lightPoleHeelingParam.getDeviceName())); } /** * 查询心跳包间隔时间 * * @return */ @PostMapping("/QueryIntervalTime") public ResponseVO QueryIntervalTime(@RequestBody @Validated LightPoleHeelingParam lightPoleHeelingParam) { return ResponseUtil.success(lightPoleHeelingService.QueryIntervalTime(lightPoleHeelingParam.getDeviceName())); } /** * 灯杆倾斜软重启 * * @return */ @PostMapping("/RestartLightPoleHeeling") public ResponseVO RestartLightPoleHeeling(@RequestBody @Validated LightPoleHeelingParam lightPoleHeelingParam) { if ("操作成功".equals(lightPoleHeelingService.RestartLightPoleHeeling(lightPoleHeelingParam.getDeviceName()))) { return ResponseUtil.success(lightPoleHeelingService.RestartLightPoleHeeling(lightPoleHeelingParam.getDeviceName())); } else { return ResponseUtil.fail(lightPoleHeelingService.RestartLightPoleHeeling(lightPoleHeelingParam.getDeviceName())); } } /** * 设置心跳包间隔时间(秒) */ @PostMapping("/SetHeartbeatPacketTime") public ResponseVO SetHeartbeatPacketTime(@RequestBody @Validated LightPoleHeelingParam lightPoleHeelingParam) { if ("操作成功".equals(lightPoleHeelingService.RestartLightPoleHeeling(lightPoleHeelingParam.getDeviceName()))) { return ResponseUtil.success(lightPoleHeelingService.SetHeartbeatPacketTime(lightPoleHeelingParam.getDeviceName(), lightPoleHeelingParam.getTime())); } else { return ResponseUtil.fail(lightPoleHeelingService.SetHeartbeatPacketTime(lightPoleHeelingParam.getDeviceName(), lightPoleHeelingParam.getTime())); } } /** * 设置传感器为初始状态 */ @PostMapping("/SetSensorState") public ResponseVO SetSensorState(@RequestBody @Validated LightPoleHeelingParam lightPoleHeelingParam) { if ("操作成功".equals(lightPoleHeelingService.RestartLightPoleHeeling(lightPoleHeelingParam.getDeviceName()))) { return ResponseUtil.success(lightPoleHeelingService.SetSensorState(lightPoleHeelingParam.getDeviceName())); } else { return ResponseUtil.fail(lightPoleHeelingService.SetSensorState(lightPoleHeelingParam.getDeviceName())); } } }