package com.casic.controller; import com.casic.dto.EventDTO; import com.casic.dto.ReturnDTO; import com.casic.service.DeviceService; import com.casic.util.ReturnUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.web.bind.annotation.*; import javax.ws.rs.QueryParam; @Slf4j @CrossOrigin @RestController @RequestMapping("/casic") public class DeviceController { private final DeviceService deviceService; public DeviceController(DeviceService deviceService) { this.deviceService = deviceService; } @RequestMapping("/getToken") public ReturnDTO<Object> getToken() { //获取token return ReturnUtil.success(deviceService.getGasToken()); } //获取三方接口数据,获取设备列表信息 @RequestMapping("/getDeviceList") public ReturnDTO<Object> getDeviceList() { //获取token String accessToken = deviceService.getGasToken(); if (StringUtils.isNotEmpty(accessToken)) { deviceService.getDeviceList(); } return ReturnUtil.success(accessToken); } //获取事件订阅消息 @PostMapping(value = "/getRqData") public ReturnDTO<Object> getRqData(@QueryParam("hxcloudmsg") String hxcloudmsg, @RequestBody(required = false) EventDTO eventDTO) { try { if (null != eventDTO) { log.info("*****************收到订阅消息:" + eventDTO.toString()); deviceService.saveAlarm(eventDTO); } } catch (Exception e) { // if (eventDTO == null){ // throw new RuntimeException("post请求体body不能为空!"); e.printStackTrace(); } return ReturnUtil.success(); } }