PvModuleModelController.java 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. package com.jiayue.ipfcst.console.controller;
  2. import com.jiayue.ipfcst.aop.SaveValidate;
  3. import com.jiayue.ipfcst.common.core.web.vo.ResponseVO;
  4. import com.jiayue.ipfcst.common.data.constant.enums.PvRotationModeEnum;
  5. import com.jiayue.ipfcst.common.data.entity.InverterInfo;
  6. import com.jiayue.ipfcst.common.data.entity.PvModuleModel;
  7. import com.jiayue.ipfcst.console.service.PvModuleModelService;
  8. import lombok.extern.slf4j.Slf4j;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.data.domain.Page;
  11. import org.springframework.web.bind.annotation.*;
  12. import java.util.ArrayList;
  13. import java.util.HashMap;
  14. import java.util.List;
  15. import java.util.Map;
  16. /**
  17. * 光伏组件信息restful接口
  18. *
  19. * @author tl
  20. * @version 3.0
  21. * @since 2020/6/28 10:12
  22. */
  23. @RestController
  24. @Slf4j
  25. public class PvModuleModelController {
  26. private final PvModuleModelService pvModuleModelService;
  27. @Autowired public PvModuleModelController(PvModuleModelService pvModuleModelService) {
  28. this.pvModuleModelService = pvModuleModelService;
  29. }
  30. /**
  31. * 分页获取光伏组件信息
  32. * @param size 条数
  33. * @param page 页码
  34. * @return 光伏组件信息
  35. */
  36. @GetMapping(value="pvModuleModel/{page}/{size}/{stationCode}")
  37. public ResponseVO getPvModuleModel(@PathVariable("page") Integer page,
  38. @PathVariable("size") Integer size, @PathVariable("stationCode") String stationCode) {
  39. PvModuleModel pvModuleModel = new PvModuleModel();
  40. if (!"ALL".equals(stationCode)) {
  41. pvModuleModel.setStationCode(stationCode);
  42. }
  43. Page<PvModuleModel> pvModuleModelPage = this.pvModuleModelService.get(pvModuleModel, page, size);
  44. return ResponseVO.success(pvModuleModelPage);
  45. }
  46. /**
  47. * 获取光伏组件信息
  48. *
  49. * @return 光伏组件信息
  50. */
  51. @GetMapping(value="pvModuleModel/")
  52. public ResponseVO getAll() {
  53. try{
  54. List<PvModuleModel> ps = this.pvModuleModelService.getAll();
  55. return ResponseVO.success(ps);
  56. }catch (Exception e){
  57. e.printStackTrace();
  58. log.error(" 获取所有光伏组件异常");
  59. return ResponseVO.success(null);
  60. }
  61. }
  62. /**
  63. * 保存光伏组件信息
  64. *
  65. * @param pvModuleModel 参数
  66. * @return 执行结果
  67. */
  68. @SaveValidate
  69. @PostMapping(value = "pvModuleModel/")
  70. public ResponseVO savePvModuleModel(@RequestBody PvModuleModel pvModuleModel) {
  71. try {
  72. pvModuleModelService.save(pvModuleModel);
  73. return ResponseVO.success();
  74. } catch (Exception e) {
  75. e.printStackTrace();
  76. log.error(" 保存光伏组件信息异常");
  77. return ResponseVO.fail();
  78. }
  79. }
  80. /**
  81. * 更新光伏组件信息
  82. *
  83. * @param pvModuleModel 参数
  84. * @return 执行结果
  85. */
  86. @SaveValidate
  87. @PutMapping(value = "pvModuleModel/")
  88. public ResponseVO updatePvModuleModel(@RequestBody PvModuleModel pvModuleModel) {
  89. try {
  90. pvModuleModelService.save(pvModuleModel);
  91. return ResponseVO.success();
  92. } catch (Exception e) {
  93. e.printStackTrace();
  94. log.error(" 更新光伏组件信息异常");
  95. return ResponseVO.fail();
  96. }
  97. }
  98. /**
  99. * 删除光伏组件信息
  100. *
  101. * @param ids 删除id
  102. * @return 执行结果
  103. */
  104. @SaveValidate
  105. @DeleteMapping(value="pvModuleModel/{ids}")
  106. public ResponseVO deletePvModuleModel(@PathVariable("ids")String ids){
  107. try{
  108. pvModuleModelService.delete(ids);
  109. return ResponseVO.success();
  110. }catch(Exception e){
  111. e.printStackTrace();
  112. log.error(" 删除光伏组件信息异常");
  113. return ResponseVO.fail();
  114. }
  115. }
  116. /**
  117. * 获取光伏组件旋转方式枚举
  118. *
  119. * @return 执行结果
  120. */
  121. @GetMapping(value = "getPvRotationMode/")
  122. public ResponseVO getPvRotationMode() {
  123. List<Map<String, Object>> provinceType = new ArrayList<>();
  124. Map<String, Object> map;
  125. try {
  126. for (PvRotationModeEnum e : PvRotationModeEnum.values()) {
  127. map = new HashMap<>();
  128. map.put("label", e.getMessage());
  129. map.put("key", e.name());
  130. map.put("value", e.name());
  131. provinceType.add(map);
  132. }
  133. return ResponseVO.success(provinceType);
  134. } catch (Exception e) {
  135. e.printStackTrace();
  136. log.error(" 获取光伏组件旋转类型异常");
  137. return ResponseVO.fail(provinceType);
  138. }
  139. }
  140. }