LaserController.java 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. package com.fdkankan.ucenter.controller.api;
  2. import com.fdkankan.common.constant.ErrorCode;
  3. import com.fdkankan.common.exception.BusinessException;
  4. import com.fdkankan.common.util.JwtUtil;
  5. import com.fdkankan.ucenter.annotation.VerifySign;
  6. import com.fdkankan.ucenter.common.BaseController;
  7. import com.fdkankan.ucenter.common.Result;
  8. import com.fdkankan.ucenter.common.ResultData;
  9. import com.fdkankan.ucenter.entity.ScenePlus;
  10. import com.fdkankan.ucenter.entity.ScenePlusExt;
  11. import com.fdkankan.ucenter.entity.ScenePro;
  12. import com.fdkankan.ucenter.entity.User;
  13. import com.fdkankan.ucenter.service.*;
  14. import com.fdkankan.ucenter.vo.LaserSceneVo;
  15. import com.fdkankan.ucenter.vo.response.CameraAppVo;
  16. import org.apache.commons.lang3.StringUtils;
  17. import org.springframework.beans.BeanUtils;
  18. import org.springframework.beans.factory.annotation.Autowired;
  19. import org.springframework.beans.factory.annotation.Value;
  20. import org.springframework.web.bind.annotation.*;
  21. import java.util.*;
  22. import java.util.stream.Collectors;
  23. /**
  24. * 激光使用接口
  25. */
  26. @RestController
  27. @RequestMapping("/ucenter/laser")
  28. public class LaserController extends BaseController {
  29. @Autowired
  30. ISceneProService sceneProService;
  31. @Autowired
  32. IScenePlusService scenePlusService;
  33. @Autowired
  34. IScenePlusExtService scenePlusExtService;
  35. @Autowired
  36. ICameraService cameraService;
  37. @Autowired
  38. IUserService userService;
  39. @Autowired
  40. ICameraDetailService cameraDetailService;
  41. /**
  42. * 根据手机号码获取 相机 sncode
  43. */
  44. @RequestMapping(value = "/getSnCodeByPhone",method = RequestMethod.GET)
  45. @VerifySign
  46. public Result getSnCodeByUserName(@RequestParam(required = false)String phone,
  47. @RequestParam(required = false,defaultValue = "4")String sceneSource) throws Exception {
  48. if(StringUtils.isBlank(phone)){
  49. String token = getToken();
  50. phone = JwtUtil.getUsername(token);
  51. }
  52. if(StringUtils.isBlank(phone)){
  53. throw new BusinessException(ErrorCode.MISSING_REQUIRED_PARAMETERS);
  54. }
  55. List<Long> userIds = userService.getLikeUserName(phone);
  56. HashMap<String,Object> map = new HashMap<>();
  57. Set<String> snCodeSet = new HashSet<>();
  58. map.put("phone",phone);
  59. map.put("snCodes",snCodeSet);
  60. if(userIds.size() <=0){
  61. return Result.success(map);
  62. }
  63. List<CameraAppVo> camera = new ArrayList<>();
  64. if(sceneSource.contains(",")){
  65. String[] split = sceneSource.split(",");
  66. for (String resource : split) {
  67. if("3".equals(resource)){ //看见
  68. camera.addAll(cameraDetailService.getListByUserIdsAndType(userIds, 9));
  69. }
  70. if("4".equals(resource)){ //深时
  71. camera.addAll( cameraDetailService.getListByUserIdsAndType(userIds, 10));
  72. }
  73. if("5".equals(resource)){ //深光
  74. camera.addAll(cameraDetailService.getListByUserIdsAndType(userIds, 11));
  75. }
  76. }
  77. }
  78. if("3".equals(sceneSource)){
  79. camera = cameraDetailService.getListByUserIdsAndType(userIds, 9);
  80. }
  81. if("4".equals(sceneSource)){
  82. camera = cameraDetailService.getListByUserIdsAndType(userIds, 10);
  83. }
  84. if("5".equals(sceneSource)){
  85. camera = cameraDetailService.getListByUserIdsAndType(userIds, 11);
  86. }
  87. if(camera.size() >0){
  88. snCodeSet = camera.stream().map(CameraAppVo::getSnCode).collect(Collectors.toSet());
  89. map.put("snCodes",snCodeSet);
  90. }
  91. return Result.success(map);
  92. }
  93. /**
  94. * 获取场景数据
  95. */
  96. @RequestMapping(value = "/getSceneByNum",method = RequestMethod.GET)
  97. @VerifySign
  98. public Result getSceneByNum(@RequestParam(required = false)String num) throws Exception {
  99. ScenePro sceneProEntity = sceneProService.getByNum(num);
  100. LaserSceneVo vo = new LaserSceneVo();
  101. Long userId = null;
  102. if(sceneProEntity!= null){
  103. vo.setNum(sceneProEntity.getNum());
  104. userId = sceneProEntity.getUserId();
  105. vo.setShootCount(sceneProEntity.getShootCount());
  106. }
  107. ScenePlus scenePlus = scenePlusService.getByNum(num);
  108. if(scenePlus != null){
  109. vo.setNum(scenePlus.getNum());
  110. vo.setTitle(scenePlus.getTitle());
  111. vo.setCreateTime(scenePlus.getCreateTime());
  112. userId = scenePlus.getUserId();
  113. ScenePlusExt byPlusId = scenePlusExtService.getByPlusId(scenePlus.getId());
  114. if(byPlusId !=null){
  115. vo.setShootCount(byPlusId.getShootCount());
  116. vo.setAlgorithmTime(byPlusId.getAlgorithmTime());
  117. }
  118. }
  119. if(userId != null){
  120. User user = userService.getById(userId);
  121. if(user!=null){
  122. vo.setUserPhone(user.getUserName());
  123. vo.setUserId(user.getId());
  124. }
  125. }
  126. return Result.success(vo);
  127. }
  128. @Value("${4dkk.laserService.basePath}")
  129. private String basePath;
  130. @RequestMapping(value = "/getSsDomain",method = RequestMethod.GET)
  131. public ResultData getSsDomain(){
  132. return ResultData.ok(basePath);
  133. }
  134. }