SceneController.java 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. package com.fdkankan.manage.controller;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.fdkankan.common.constant.ErrorCode;
  4. import com.fdkankan.common.exception.BusinessException;
  5. import com.fdkankan.common.response.ResultData;
  6. import com.fdkankan.manage.entity.ScenePlus;
  7. import com.fdkankan.manage.entity.ScenePro;
  8. import com.fdkankan.manage.httpClient.client.FdKKClient;
  9. import com.fdkankan.manage.service.IDownService;
  10. import com.fdkankan.manage.service.IScenePlusService;
  11. import com.fdkankan.manage.service.ISceneProService;
  12. import com.fdkankan.manage.vo.request.SceneParam;
  13. import org.apache.commons.lang3.StringUtils;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.web.bind.annotation.*;
  16. import javax.annotation.Resource;
  17. import java.util.HashMap;
  18. /**
  19. * 相机场景管理
  20. */
  21. @RestController
  22. @RequestMapping("/service/manage/scene")
  23. public class SceneController {
  24. @Autowired
  25. ISceneProService sceneProService;
  26. @Autowired
  27. IScenePlusService scenePlusService;
  28. @Autowired
  29. IDownService downService;
  30. @Resource
  31. FdKKClient fdKKClient;
  32. @PostMapping("/list")
  33. public ResultData list(@RequestBody SceneParam param){
  34. return ResultData.ok(sceneProService.pageList(param));
  35. }
  36. /**
  37. * 场景迁移
  38. * num 迁移场景码
  39. * snCode 迁移至相机snCode
  40. */
  41. @PostMapping("/move")
  42. public ResultData move(@RequestBody SceneParam param){
  43. if(StringUtils.isEmpty(param.getNum()) || StringUtils.isEmpty(param.getSnCode())){
  44. throw new BusinessException(ErrorCode.MISSING_REQUIRED_PARAMETERS);
  45. }
  46. sceneProService.move(param);
  47. return ResultData.ok();
  48. }
  49. /**
  50. * 场景复制
  51. * num 场景码
  52. */
  53. @PostMapping("/copy")
  54. public ResultData copy(@RequestBody SceneParam param) throws Exception {
  55. if(StringUtils.isEmpty(param.getNum())){
  56. throw new BusinessException(ErrorCode.MISSING_REQUIRED_PARAMETERS);
  57. }
  58. sceneProService.copy(param.getNum());
  59. return ResultData.ok();
  60. }
  61. /**
  62. * 场景删除
  63. * num 场景码
  64. */
  65. @PostMapping("/delete")
  66. public ResultData delete(@RequestBody SceneParam param){
  67. if(StringUtils.isEmpty(param.getNum())){
  68. throw new BusinessException(ErrorCode.MISSING_REQUIRED_PARAMETERS);
  69. }
  70. sceneProService.deleteByNum(param.getNum());
  71. return ResultData.ok();
  72. }
  73. /**
  74. * 检查下载
  75. * num 场景码
  76. */
  77. @GetMapping("/checkDownLoad")
  78. public ResultData checkDownLoad(@RequestParam(required = false) String num){
  79. return ResultData.ok(downService.checkDownLoad(num));
  80. }
  81. /**
  82. * 下载场景
  83. * num 场景码
  84. */
  85. @GetMapping("/downScene")
  86. public ResultData downScene(@RequestParam(required = false) String num){
  87. return ResultData.ok(downService.down(num));
  88. }
  89. /**
  90. * 下载场景进度条
  91. * num 场景码
  92. */
  93. @GetMapping("/downloadProcess")
  94. public ResultData downloadProcess(@RequestParam(required = false) String num){
  95. return ResultData.ok(downService.downloadProcess(num));
  96. }
  97. /**
  98. * 场景重算
  99. * num 场景码
  100. */
  101. @GetMapping("/rebuildScene")
  102. public ResultData rebuild(@RequestParam(required = false) String num){
  103. ScenePro scenePro = sceneProService.getByNum(num);
  104. if(scenePro!=null){
  105. throw new BusinessException(-1,"V3场景请先升级在重算");
  106. }
  107. ScenePlus scenePlus = scenePlusService.getByNum(num);
  108. if(scenePlus == null){
  109. throw new BusinessException(-1,"场景不存在");
  110. }
  111. HashMap<String,Object> paramMap = new HashMap<>();
  112. paramMap.put("num",num);
  113. JSONObject jsonObject = fdKKClient.rebuildScene(paramMap);
  114. Integer code = jsonObject.getInteger("code");
  115. if(code != 0){
  116. return ResultData.error(code,jsonObject.getString("msg"));
  117. }
  118. return ResultData.ok();
  119. }
  120. }