DataQueryController.java 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package com.usky.backend.controller;
  2. import com.usky.backend.domain.MetricItemVo;
  3. import com.usky.backend.domain.StatusVO;
  4. import com.usky.backend.domain.request.HistoryQueryVo;
  5. import com.usky.backend.domain.request.LastQueryVo;
  6. import com.usky.backend.domain.response.HistoryResultVo;
  7. import com.usky.backend.domain.response.LastResultVo;
  8. import com.usky.backend.service.DataQueryService;
  9. import com.usky.common.core.bean.ApiResult;
  10. import io.swagger.annotations.Api;
  11. import io.swagger.annotations.ApiOperation;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.web.bind.annotation.*;
  14. import java.time.LocalDateTime;
  15. import java.util.ArrayList;
  16. import java.util.List;
  17. /**
  18. * <p>
  19. * 数据统一查询 前端控制器
  20. * </p>
  21. *
  22. */
  23. @RestController
  24. @Api(tags = "数据统一查询")
  25. @RequestMapping("/dataQuery")
  26. public class DataQueryController {
  27. @Autowired
  28. private DataQueryService dataQueryService;
  29. /**
  30. * 获取单个设备单属性历史数据
  31. *
  32. * @param startTime 开始时间
  33. * @param endTime 结束时间
  34. * @param deviceId 设备Id
  35. * @param metric 属性
  36. * @param deviceType 设备类型编码(501、监控系统 502、门禁系统 503、梯控系统 504、机房系统 509、环境系统 510、照明系统)
  37. * @return
  38. */
  39. @GetMapping("/historyMetric")
  40. @ApiOperation("获取单个设备单属性历史数据")
  41. public ApiResult<HistoryResultVo> historyMetric(@RequestParam("startTime") String startTime,
  42. @RequestParam("endTime") String endTime,
  43. @RequestParam("deviceId") String deviceId,
  44. @RequestParam("metric") String metric,
  45. @RequestParam("deviceType") Integer deviceType) {
  46. return ApiResult.success(dataQueryService.historyMetric(deviceId,metric,startTime,endTime,deviceType));
  47. }
  48. @PostMapping("/historyMetrics")
  49. @ApiOperation("获取单个设备多属性历史数据")
  50. public ApiResult<List<HistoryResultVo>> historyMetrics(@RequestBody HistoryQueryVo historyQueryVo) {
  51. return ApiResult.success(dataQueryService.historyMetrics(historyQueryVo));
  52. }
  53. /**
  54. * 获取单个设备多指标实时数据
  55. * @param lastQueryVo
  56. * @return
  57. */
  58. @PostMapping("/last")
  59. @ApiOperation("获取单个设备多指标实时数据")
  60. public ApiResult<List<LastResultVo>> last(@RequestBody LastQueryVo lastQueryVo) {
  61. return ApiResult.success(dataQueryService.last(lastQueryVo));
  62. }
  63. /**
  64. * 查询设备状态
  65. * @return
  66. */
  67. @GetMapping("/status")
  68. public ApiResult<List<StatusVO>> status(){
  69. return ApiResult.success(dataQueryService.status());
  70. }
  71. }