HtAnalogDataController.java 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. package com.bizmatics.controller.web;
  2. import com.bizmatics.common.core.bean.ApiResult;
  3. import com.bizmatics.model.vo.DataManagementOneVO;
  4. import com.bizmatics.model.vo.SingleLoopReportOneVo;
  5. import com.bizmatics.service.HtAnalogDataService;
  6. import com.bizmatics.service.vo.CommonIcoVO;
  7. import com.bizmatics.service.vo.HadCountVO;
  8. import com.bizmatics.service.vo.RealScoreVO;
  9. import com.bizmatics.service.vo.TimeShareVO;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.web.bind.annotation.*;
  12. import java.util.Date;
  13. import java.util.List;
  14. /**
  15. * 历史消费组模拟量
  16. *
  17. * @author ya
  18. * @since 2021-07-07
  19. */
  20. @RestController
  21. @RequestMapping("/htAnalogData")
  22. public class HtAnalogDataController {
  23. @Autowired
  24. private HtAnalogDataService htAnalogDataService;
  25. /**
  26. * 首页日/月/年用电量
  27. *
  28. * @return
  29. */
  30. @GetMapping("count")
  31. public ApiResult<HadCountVO> count() {
  32. return ApiResult.success(htAnalogDataService.selectCount());
  33. }
  34. /**
  35. * 今日/昨日用电趋势
  36. *
  37. * @param siteId 站点id
  38. * @return
  39. */
  40. @GetMapping("eptrendIco")
  41. public ApiResult<List<CommonIcoVO>> getTrendByDate(@RequestParam(required = false) Integer siteId) {
  42. return ApiResult.success(htAnalogDataService.selectTrendByDate(siteId));
  43. }
  44. /**
  45. * 当月用电趋势图
  46. *
  47. * @return
  48. */
  49. @GetMapping("eptrendIcoMonth")
  50. public ApiResult<List<CommonIcoVO>> getTrendByMonth() {
  51. return ApiResult.success(htAnalogDataService.selectTrendByMonth());
  52. }
  53. /**
  54. * 站点日/月/年用电量
  55. *
  56. * @param siteId 站点id
  57. * @return
  58. */
  59. @GetMapping("dayMonthYearEp")
  60. public ApiResult<HadCountVO> getCountBySite(@RequestParam Integer siteId) {
  61. return ApiResult.success(htAnalogDataService.getCountBySite(siteId));
  62. }
  63. /**
  64. * 分时电量
  65. *
  66. * @param siteId 站点id
  67. * @param type 时间
  68. * @return
  69. */
  70. @GetMapping("timeShare")
  71. public ApiResult<TimeShareVO> getTimeShare(@RequestParam Integer siteId, @RequestParam Integer type) {
  72. return ApiResult.success(htAnalogDataService.getTimeShare(siteId, type));
  73. }
  74. /**
  75. * 需量趋势图
  76. *
  77. * @param siteId 站点id
  78. * @return
  79. */
  80. @GetMapping("demandIco")
  81. public ApiResult<List<CommonIcoVO>> getDemandIco(@RequestParam Integer siteId) {
  82. return ApiResult.success(htAnalogDataService.getDemandIco(siteId));
  83. }
  84. /**
  85. * 历史记录电流电压
  86. *
  87. * @param siteId 站点id
  88. * @param date 时间
  89. * @return
  90. */
  91. @GetMapping("electricIco")
  92. public ApiResult<List<CommonIcoVO>> getElectricIco(@RequestParam Integer siteId, @RequestParam Date date) {
  93. return ApiResult.success(htAnalogDataService.getElectricIco(siteId, date));
  94. }
  95. /**
  96. * 历史电流电压评分
  97. *
  98. * @param deviceCode
  99. * @param startTime
  100. * @param endTime
  101. * @return
  102. */
  103. @GetMapping("rtRealScore")
  104. public ApiResult<List<RealScoreVO>> rtRealScore(@RequestParam String deviceCode,
  105. @RequestParam Date startTime,
  106. @RequestParam Date endTime) {
  107. return ApiResult.success(htAnalogDataService.rtRealScore(deviceCode, startTime, endTime));
  108. }
  109. /**
  110. * 数据管理-同比分析报表-统计图数据查询
  111. *
  112. * @param dataManagementOneVO
  113. * @return
  114. */
  115. @PostMapping("yearOnYearList")
  116. public ApiResult<List<CommonIcoVO>> yearOnYearList(@RequestBody DataManagementOneVO dataManagementOneVO) {
  117. return ApiResult.success(htAnalogDataService.yearOnYearList(dataManagementOneVO));
  118. }
  119. /**
  120. * 数据管理-环比分析报表-统计图数据查询
  121. *
  122. * @param dataManagementOneVO
  123. * @return
  124. */
  125. @PostMapping("ringRatioList")
  126. public ApiResult<List<CommonIcoVO>> ringRatioList(@RequestBody DataManagementOneVO dataManagementOneVO) {
  127. return ApiResult.success(htAnalogDataService.ringRatioList(dataManagementOneVO));
  128. }
  129. /**
  130. * 数据管理-用能月报-统计图数据查询
  131. *
  132. * @param deviceCode 设备编号
  133. * @param cycle 1.日报表 2.月报表 3.年报表
  134. * @param startTime 开始时间
  135. * @param endTime 结束时间
  136. * @return
  137. */
  138. @GetMapping("monthlyReport")
  139. public ApiResult<List<CommonIcoVO>> monthlyReport(@RequestParam String deviceCode,
  140. @RequestParam int cycle,
  141. @RequestParam String startTime,
  142. @RequestParam String endTime) {
  143. return ApiResult.success(htAnalogDataService.monthlyReport(deviceCode, cycle, startTime, endTime));
  144. }
  145. /**
  146. * 数据管理-需量分析-统计图数据查询
  147. *
  148. * @param deviceCode 设备编号
  149. * @param cycle 1.电费结算周期 2.自然月
  150. * @param monthDate 时间 xxxx-xx
  151. * @return
  152. */
  153. @GetMapping("demandAnalysis")
  154. public ApiResult<List<CommonIcoVO>> demandAnalysis(@RequestParam String deviceCode,
  155. @RequestParam int cycle,
  156. @RequestParam String monthDate) {
  157. return ApiResult.success(htAnalogDataService.demandAnalysis(deviceCode, monthDate, cycle));
  158. }
  159. /**
  160. * 数据管理-用能月报-导出
  161. *
  162. * @param deviceCode 设备编号
  163. * @param cycle 1.日报表 2.月报表 3.年报表
  164. * @param startTime 开始时间
  165. * @param endTime 结束时间
  166. * @return
  167. */
  168. @GetMapping("monthlyReportExport")
  169. public ApiResult<String> monthlyReportExport(@RequestParam String deviceCode,
  170. @RequestParam int cycle,
  171. @RequestParam String startTime,
  172. @RequestParam String endTime) {
  173. return ApiResult.success(htAnalogDataService.monthlyReportExport(deviceCode, startTime, endTime, cycle));
  174. }
  175. /**
  176. * 电能质量(单回路报告)
  177. *
  178. * @param deviceCode 设备编号
  179. * @param time 时间 type为1时时间格式 yyyy-MM-dd type为2时时间格式 yyyy-MM
  180. * @param type 类型 1:日 2:月
  181. * @return
  182. */
  183. @GetMapping("SingleLoopReportData")
  184. public ApiResult<SingleLoopReportOneVo> SingleLoopReportData(@RequestParam String deviceCode,
  185. @RequestParam Date time,
  186. @RequestParam int type) {
  187. return ApiResult.success(htAnalogDataService.SingleLoopReportData(deviceCode, time, type));
  188. }
  189. }