SceneController.java 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. package com.fdkankan.ucenter.controller;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.dtflys.forest.annotation.Get;
  4. import com.fdkankan.common.exception.BusinessException;
  5. import com.fdkankan.common.util.JwtUtil;
  6. import com.fdkankan.ucenter.common.BaseController;
  7. import com.fdkankan.ucenter.common.DownloadStatusEnum;
  8. import com.fdkankan.ucenter.common.Result;
  9. import com.fdkankan.ucenter.constant.LoginConstant;
  10. import com.fdkankan.ucenter.entity.User;
  11. import com.fdkankan.ucenter.service.*;
  12. import com.fdkankan.ucenter.vo.request.RequestScene;
  13. import com.fdkankan.ucenter.vo.request.SceneParam;
  14. import com.fdkankan.ucenter.vo.response.DownloadProcessVo;
  15. import org.apache.commons.lang3.StringUtils;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.web.bind.annotation.GetMapping;
  18. import org.springframework.web.bind.annotation.PostMapping;
  19. import org.springframework.web.bind.annotation.RequestBody;
  20. import org.springframework.web.bind.annotation.RequestHeader;
  21. import org.springframework.web.bind.annotation.RequestMapping;
  22. import org.springframework.web.bind.annotation.RequestMethod;
  23. import org.springframework.web.bind.annotation.RestController;
  24. import java.util.List;
  25. /**
  26. * <p>
  27. * 场景表 前端控制器
  28. * </p>
  29. *
  30. * @author
  31. * @since 2022-07-04
  32. */
  33. @RestController
  34. @RequestMapping("/ucenter/user/scene")
  35. public class SceneController extends BaseController {
  36. @Autowired
  37. ISceneProService sceneProService;
  38. @Autowired
  39. IUserService userService;
  40. @Autowired
  41. IDownService downService;
  42. @Autowired
  43. ISceneUpgradeToV4Service sceneUpgradeToV4Service;
  44. @Autowired
  45. ISceneCooperationService sceneCooperationService;
  46. @Autowired
  47. ISceneService sceneService;
  48. @PostMapping("/findSceneNumber")
  49. public Result findSceneNumber(@RequestHeader String token){
  50. return Result.success(sceneProService.findSceneNumber(token));
  51. }
  52. @PostMapping("/getOldSceneList")
  53. public Result getOldSceneList(@RequestBody SceneParam param,@RequestHeader String token){
  54. User user = userService.getByToken(token);
  55. param.setUserId(user.getId());
  56. return Result.success(sceneService.pageList(param));
  57. }
  58. @PostMapping(value = "/list")
  59. public Result getScenes(@RequestBody RequestScene param, @RequestHeader String token) throws Exception {
  60. String username = JwtUtil.getUsername(token);
  61. return Result.success(sceneProService.getScenes(username, param));
  62. }
  63. @PostMapping("/newList")
  64. public Result newList(@RequestBody SceneParam param,@RequestHeader String token){
  65. String username = JwtUtil.getUsername(token);
  66. return Result.success(sceneProService.newList(param,username));
  67. }
  68. @PostMapping("/getOnlySceneList")
  69. public Result getOnlySceneList(@RequestBody SceneParam param,@RequestHeader String token){
  70. String username = JwtUtil.getUsername(token);
  71. param.setHasFolder(0);
  72. JSONObject jsonObject = sceneProService.newList(param, username);
  73. return Result.success(jsonObject.getJSONObject("pageInfo"));
  74. }
  75. /**
  76. * 获取场景详情
  77. */
  78. @RequestMapping(value = "/detail", method = RequestMethod.POST)
  79. public Result getSceneDetail(@RequestBody SceneParam param) throws Exception {
  80. return Result.success(sceneProService.getSceneDetail(param.getSceneNum()));
  81. }
  82. @PostMapping("/copyScene")
  83. public Result copyScene(@RequestBody SceneParam param,@RequestHeader String token) throws Exception {
  84. String username = JwtUtil.getUsername(token);
  85. sceneProService.copyScene(param.getSceneNum(),username);
  86. return Result.success();
  87. }
  88. @PostMapping("/delete")
  89. public Result delete(@RequestBody SceneParam param) throws Exception {
  90. sceneProService.delete(param.getSceneNum());
  91. return Result.success();
  92. }
  93. /**
  94. * 校验该场景有无下载资格
  95. */
  96. @PostMapping("/checkDownload")
  97. public Result checkDownload(@RequestBody SceneParam param) throws Exception {
  98. return Result.success( downService.checkDownLoad(param.getSceneNum()) );
  99. }
  100. /**
  101. * 校验该场景有无下载资格
  102. * @param param
  103. * @return
  104. */
  105. @PostMapping("/downloadScene")
  106. public Result downloadScene(@RequestBody SceneParam param,@RequestHeader String token) throws Exception{
  107. String username = JwtUtil.getUsername(token);
  108. return Result.success(downService.down(param.getSceneNum(),username));
  109. }
  110. /**
  111. * 获取下载进度
  112. * @param param
  113. * @return
  114. */
  115. @PostMapping("/downloadProcess")
  116. public Result downloadProcess(@RequestBody SceneParam param) throws Exception{
  117. User user = userService.getByUserName(JwtUtil.getUsername(this.getToken()));
  118. DownloadProcessVo downloadProcessVo = downService.downloadProcess(user.getId(), param.getSceneNum());
  119. if(downloadProcessVo.getStatus() == DownloadStatusEnum.DOWNLOAD_FAILED_CODE){
  120. return Result.failure("下载失败!");
  121. }
  122. return Result.success(downloadProcessVo);
  123. }
  124. /**
  125. *
  126. * 场景升级V4接口
  127. */
  128. @GetMapping("/upgradeToV4")
  129. public Result upgradeToV4(String num) throws Exception{
  130. return sceneUpgradeToV4Service.upgrade(num);
  131. }
  132. /**
  133. *
  134. * 场景升级进度查询接口
  135. */
  136. @GetMapping("/getUpgradeToV4Progress")
  137. public Result getUpgradeToV4Progress(String num) throws Exception{
  138. return sceneUpgradeToV4Service.getUpgradeToV4Progress(num);
  139. }
  140. }