package com.fdkankan.openApi.controller.www; import cn.dev33.satoken.annotation.SaIgnore; import com.fdkankan.common.constant.ErrorCode; import com.fdkankan.common.exception.BusinessException; import com.fdkankan.openApi.common.PageInfo; import com.fdkankan.openApi.entity.system.UserAuthInfo; import com.fdkankan.openApi.entity.www.ScenePlus; import com.fdkankan.openApi.service.laser.SceneService; import com.fdkankan.openApi.service.system.IUserAuthService; import com.fdkankan.openApi.service.www.IScenePlusExtService; import com.fdkankan.openApi.service.www.IScenePlusService; import com.fdkankan.openApi.vo.www.SceneVO; import com.fdkankan.web.response.ResultData; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.ObjectUtils; import org.springframework.web.bind.annotation.*; /** *
* 前端控制器 *
* * @author * @since 2023-02-15 */ @RestController @RequestMapping("/scene") public class SceneController { @Autowired private IScenePlusService scenePlusService; @Autowired private IScenePlusExtService scenePlusExtService; @Autowired private SceneService sceneService; @Autowired private IUserAuthService authService; /** * 根据用户名获取场景列表 * @return */ @SaIgnore @PostMapping("/getScenesByUsername") public ResultData getScenesByUsername(@RequestBody SceneVO sceneVO,@RequestHeader("Authorization") String appKey) { UserAuthInfo authInfo = authService.findByAppKey(appKey); if (ObjectUtils.isEmpty(authInfo)) { throw new BusinessException(ErrorCode.AUTH_FAIL); } PageInfo pageInfo = scenePlusService.getScenesByUserId(authInfo.getUserId(),sceneVO); return ResultData.ok(pageInfo); } /** * 根据场景码和点位id获取场景点位信息 * @return */ @SaIgnore @PostMapping("/getScenePointInfo") public ResultData getScenePointInfo(@RequestBody SceneVO sceneVO,@RequestHeader("Authorization") String appKey) { ScenePlus scenePlus = scenePlusService.getByNum(sceneVO.getSceneCode()); if(ObjectUtils.isEmpty(scenePlus)){ throw new BusinessException(ErrorCode.FAILURE_CODE_5005); } UserAuthInfo authInfo = authService.findByAppKey(appKey); if (ObjectUtils.isEmpty(authInfo)) { throw new BusinessException(ErrorCode.AUTH_FAIL); } if (authInfo.getUserId() != scenePlus.getUserId().intValue()) { throw new BusinessException(ErrorCode.FAILURE_CODE_5015); } if (scenePlus.getSceneSource() == 4) { return ResultData.ok(sceneService.getPointInfo(sceneVO.getSceneCode())); } return ResultData.ok(scenePlusService.getPointInfo(sceneVO.getSceneCode())); } /** * 根据场景码获取obj文件 * @return */ @SaIgnore @PostMapping("/getSceneObjFiles") public ResultData getSceneObjFiles(@RequestBody SceneVO sceneVO,@RequestHeader("Authorization") String appKey) { ScenePlus scenePlus = scenePlusService.getByNum(sceneVO.getSceneCode()); if(ObjectUtils.isEmpty(scenePlus)){ throw new BusinessException(ErrorCode.FAILURE_CODE_5005); } UserAuthInfo authInfo = authService.findByAppKey(appKey); if (ObjectUtils.isEmpty(authInfo)) { throw new BusinessException(ErrorCode.AUTH_FAIL); } if (authInfo.getUserId() != scenePlus.getUserId().intValue()) { throw new BusinessException(ErrorCode.FAILURE_CODE_5015); } return ResultData.ok(scenePlusService.getSceneObjFilePaths(sceneVO.getSceneCode())); } /** * 根据场景码获取obj文件 * @return */ @SaIgnore @PostMapping("/getScenePanoramicImageFiles") public ResultData getScenePanoramicImageFiles(@RequestBody SceneVO sceneVO,@RequestHeader("Authorization") String appKey) { ScenePlus scenePlus = scenePlusService.getByNum(sceneVO.getSceneCode()); if (ObjectUtils.isEmpty(scenePlus)) { throw new BusinessException(ErrorCode.FAILURE_CODE_5005); } UserAuthInfo authInfo = authService.findByAppKey(appKey); if (ObjectUtils.isEmpty(authInfo)) { throw new BusinessException(ErrorCode.AUTH_FAIL); } if (authInfo.getUserId() != scenePlus.getUserId().intValue()) { throw new BusinessException(ErrorCode.FAILURE_CODE_5015); } return ResultData.ok(scenePlusService.getScenePanoramicImageFiles(sceneVO.getSceneCode())); } }