SceneController.java 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. package com.fdkankan.openApi.controller.www;
  2. import cn.dev33.satoken.annotation.SaIgnore;
  3. import com.fdkankan.common.constant.ErrorCode;
  4. import com.fdkankan.common.exception.BusinessException;
  5. import com.fdkankan.openApi.common.PageInfo;
  6. import com.fdkankan.openApi.entity.system.UserAuthInfo;
  7. import com.fdkankan.openApi.entity.www.ScenePlus;
  8. import com.fdkankan.openApi.service.laser.SceneService;
  9. import com.fdkankan.openApi.service.system.IUserAuthService;
  10. import com.fdkankan.openApi.service.www.IScenePlusExtService;
  11. import com.fdkankan.openApi.service.www.IScenePlusService;
  12. import com.fdkankan.openApi.vo.www.SceneVO;
  13. import com.fdkankan.web.response.ResultData;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.util.ObjectUtils;
  16. import org.springframework.web.bind.annotation.*;
  17. /**
  18. * <p>
  19. * 前端控制器
  20. * </p>
  21. *
  22. * @author
  23. * @since 2023-02-15
  24. */
  25. @RestController
  26. @RequestMapping("/scene")
  27. public class SceneController {
  28. @Autowired
  29. private IScenePlusService scenePlusService;
  30. @Autowired
  31. private IScenePlusExtService scenePlusExtService;
  32. @Autowired
  33. private SceneService sceneService;
  34. @Autowired
  35. private IUserAuthService authService;
  36. /**
  37. * 根据用户名获取场景列表
  38. * @return
  39. */
  40. @SaIgnore
  41. @PostMapping("/getScenesByUsername")
  42. public ResultData getScenesByUsername(@RequestBody SceneVO sceneVO,@RequestHeader("Authorization") String appKey) {
  43. UserAuthInfo authInfo = authService.findByAppKey(appKey);
  44. if (ObjectUtils.isEmpty(authInfo)) {
  45. throw new BusinessException(ErrorCode.AUTH_FAIL);
  46. }
  47. PageInfo pageInfo = scenePlusService.getScenesByUserId(authInfo.getUserId(),sceneVO);
  48. return ResultData.ok(pageInfo);
  49. }
  50. /**
  51. * 根据场景码和点位id获取场景点位信息
  52. * @return
  53. */
  54. @SaIgnore
  55. @PostMapping("/getScenePointInfo")
  56. public ResultData getScenePointInfo(@RequestBody SceneVO sceneVO,@RequestHeader("Authorization") String appKey) {
  57. ScenePlus scenePlus = scenePlusService.getByNum(sceneVO.getSceneCode());
  58. if(ObjectUtils.isEmpty(scenePlus)){
  59. throw new BusinessException(ErrorCode.FAILURE_CODE_5005);
  60. }
  61. UserAuthInfo authInfo = authService.findByAppKey(appKey);
  62. if (ObjectUtils.isEmpty(authInfo)) {
  63. throw new BusinessException(ErrorCode.AUTH_FAIL);
  64. }
  65. if (authInfo.getUserId() != scenePlus.getUserId().intValue()) {
  66. throw new BusinessException(ErrorCode.FAILURE_CODE_5015);
  67. }
  68. if (scenePlus.getSceneSource() == 4) {
  69. return ResultData.ok(sceneService.getPointInfo(sceneVO.getSceneCode()));
  70. }
  71. return ResultData.ok(scenePlusService.getPointInfo(sceneVO.getSceneCode()));
  72. }
  73. /**
  74. * 根据场景码获取obj文件
  75. * @return
  76. */
  77. @SaIgnore
  78. @PostMapping("/getSceneObjFiles")
  79. public ResultData getSceneObjFiles(@RequestBody SceneVO sceneVO,@RequestHeader("Authorization") String appKey) {
  80. ScenePlus scenePlus = scenePlusService.getByNum(sceneVO.getSceneCode());
  81. if(ObjectUtils.isEmpty(scenePlus)){
  82. throw new BusinessException(ErrorCode.FAILURE_CODE_5005);
  83. }
  84. UserAuthInfo authInfo = authService.findByAppKey(appKey);
  85. if (ObjectUtils.isEmpty(authInfo)) {
  86. throw new BusinessException(ErrorCode.AUTH_FAIL);
  87. }
  88. if (authInfo.getUserId() != scenePlus.getUserId().intValue()) {
  89. throw new BusinessException(ErrorCode.FAILURE_CODE_5015);
  90. }
  91. return ResultData.ok(scenePlusService.getSceneObjFilePaths(sceneVO.getSceneCode()));
  92. }
  93. /**
  94. * 根据场景码获取obj文件
  95. * @return
  96. */
  97. @SaIgnore
  98. @PostMapping("/getScenePanoramicImageFiles")
  99. public ResultData getScenePanoramicImageFiles(@RequestBody SceneVO sceneVO,@RequestHeader("Authorization") String appKey) {
  100. ScenePlus scenePlus = scenePlusService.getByNum(sceneVO.getSceneCode());
  101. if (ObjectUtils.isEmpty(scenePlus)) {
  102. throw new BusinessException(ErrorCode.FAILURE_CODE_5005);
  103. }
  104. UserAuthInfo authInfo = authService.findByAppKey(appKey);
  105. if (ObjectUtils.isEmpty(authInfo)) {
  106. throw new BusinessException(ErrorCode.AUTH_FAIL);
  107. }
  108. if (authInfo.getUserId() != scenePlus.getUserId().intValue()) {
  109. throw new BusinessException(ErrorCode.FAILURE_CODE_5015);
  110. }
  111. return ResultData.ok(scenePlusService.getScenePanoramicImageFiles(sceneVO.getSceneCode()));
  112. }
  113. }