From d6428820434c9a54eb4063b74ece253924708ede Mon Sep 17 00:00:00 2001 From: kaiyu <404897439@qq.com> Date: Sun, 26 Sep 2021 09:29:30 +0800 Subject: [PATCH] screen-api 增加查询组织下所有站点id以及name接口 --- screen-api/src/main/java/com/moral/api/controller/DeviceController.java | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 107 insertions(+), 4 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/controller/DeviceController.java b/screen-api/src/main/java/com/moral/api/controller/DeviceController.java index 8e38326..3262a32 100644 --- a/screen-api/src/main/java/com/moral/api/controller/DeviceController.java +++ b/screen-api/src/main/java/com/moral/api/controller/DeviceController.java @@ -2,18 +2,31 @@ import com.moral.api.entity.Sensor; import com.moral.api.pojo.vo.alarm.AlarmLevelVO; +import com.moral.api.service.DeviceService; +import com.moral.api.service.HistoryDailyService; +import com.moral.api.service.HistoryHourlyService; import com.moral.api.service.OrganizationUnitAlarmService; import com.moral.constant.ResponseCodeEnum; import com.moral.constant.ResultMessage; +import com.moral.util.WebUtils; + import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; /** * @ClassName AlarmController @@ -32,16 +45,106 @@ @Autowired OrganizationUnitAlarmService organizationUnitAlarmService; + @Autowired + private HistoryHourlyService historyHourlyService; + + @Autowired + private HistoryDailyService historyDailyService; + + @Autowired + private DeviceService deviceService; + + /** + * @Description: ������mac������������������ + * @Param: [mac] + * @return: com.moral.constant.ResultMessage + * @Author: ��������� + * @Date: 2021/8/23 + */ @GetMapping("queryAlarmByMac") - public ResultMessage queryAlarmByMac(String mac){ + public ResultMessage queryAlarmByMac(String mac) { + if(mac==null) + return new ResultMessage(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg(),null); List<Sensor> sensors = organizationUnitAlarmService.queryAlarmLevel(mac); AlarmLevelVO vo = AlarmLevelVO.convert(sensors); return new ResultMessage(ResponseCodeEnum.SUCCESS.getCode(), ResponseCodeEnum.SUCCESS.getMsg(), vo); } - @GetMapping("queryFiveMinuteData") - public ResultMessage queryFiveMinuteData(Integer regionCode,String sensorCode){ + /** + * @param request ������������ + * @return ������������������������������������ + */ + @GetMapping("getHourlyAqi") + @ApiOperation(value = "���������������AQI", notes = "���������������AQI") + @ApiImplicitParams(value = { + @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String"), + @ApiImplicitParam(name = "mac", value = "������mac", required = true, paramType = "query", dataType = "String") + }) + public ResultMessage getHourlyAqi(HttpServletRequest request) { + Map<String, Object> params = WebUtils.getParametersStartingWith(request, null); + if (!params.containsKey("mac")) { + return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg()); + } + Map<String, Object> response = historyHourlyService.getHourlyAqiByMac(params.get("mac").toString()); + return ResultMessage.ok(response); + } - return null; + /** + * @param request ������������ + * @return ������������������������������������ + */ + @GetMapping("getMonthAvg") + @ApiOperation(value = "������������������������������������", notes = "������������������������������������") + @ApiImplicitParams(value = { + @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String"), + @ApiImplicitParam(name = "mac", value = "������mac", required = true, paramType = "query", dataType = "String"), + @ApiImplicitParam(name = "sensorCode", value = "���������code", required = true, paramType = "query", dataType = "String") + }) + public ResultMessage getMonthAvg(HttpServletRequest request) { + Map<String, Object> params = WebUtils.getParametersStartingWith(request, null); + if (!params.containsKey("mac") || !params.containsKey("sensorCode")) { + return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg()); + } + Map<String, Object> response = historyDailyService.getMonthAvg(params); + return ResultMessage.ok(response); + } + + /** + * @param params ������������ + * @return ������������������������������������ + */ + @PostMapping("getMacSensors") + @ApiOperation(value = "������������mac���������������", notes = "������������mac���������������") + @ApiImplicitParams(value = { + @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String"), + @ApiImplicitParam(name = "macs", value = "������mac���������������������", required = true, paramType = "query", dataType = "List") + }) + public ResultMessage getMacSensors(@RequestBody Map<String, Object> params) { + if (!params.containsKey("macs")) { + return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg()); + } + Map<String, Object> response = deviceService.getSensorsByMac(params); + return ResultMessage.ok(response); + } + + /** + * @param params ������������ + * @return ������������������������������������ + */ + @PostMapping("getTrendChartData") + @ApiOperation(value = "���������������������������������", notes = "���������������������������������.") + @ApiImplicitParams(value = { + @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String"), + @ApiImplicitParam(name = "macs", value = "������mac���������������������", required = true, paramType = "body", dataType = "list"), + @ApiImplicitParam(name = "sensorCode", value = "������code", required = true, paramType = "body", dataType = "String"), + @ApiImplicitParam(name = "type", value = "���������������������day���,������month���,������year���", required = true, paramType = "body", dataType = "String"), + @ApiImplicitParam(name = "times", value = "���������������������2021-07-29������������2021-07������������2021������������������������", required = true, paramType = "body", dataType = "List") + }) + public ResultMessage getTrendChartData(@RequestBody Map<String, Object> params) { + if (!params.containsKey("macs") || !params.containsKey("sensorCode") || !params.containsKey("type") || !params.containsKey("times")) { + return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg()); + } + List<Map<String, Object>> response = deviceService.getTrendChartData(params); + return ResultMessage.ok(response); } } -- Gitblit v1.8.0