LaserController.java 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  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.common.BaseController;
  6. import com.fdkankan.ucenter.common.Result;
  7. import com.fdkankan.ucenter.entity.ScenePlus;
  8. import com.fdkankan.ucenter.entity.ScenePro;
  9. import com.fdkankan.ucenter.entity.User;
  10. import com.fdkankan.ucenter.service.*;
  11. import com.fdkankan.ucenter.vo.LaserSceneVo;
  12. import com.fdkankan.ucenter.vo.response.CameraAppVo;
  13. import org.apache.commons.lang3.StringUtils;
  14. import org.springframework.beans.BeanUtils;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.web.bind.annotation.RequestMapping;
  17. import org.springframework.web.bind.annotation.RequestMethod;
  18. import org.springframework.web.bind.annotation.RequestParam;
  19. import org.springframework.web.bind.annotation.RestController;
  20. import java.io.UnsupportedEncodingException;
  21. import java.net.URLEncoder;
  22. import java.util.*;
  23. import java.util.stream.Collectors;
  24. /**
  25. * 激光使用接口
  26. */
  27. @RestController
  28. @RequestMapping("/ucenter/laser")
  29. public class LaserController extends BaseController {
  30. @Autowired
  31. ISceneProService sceneProService;
  32. @Autowired
  33. IScenePlusService scenePlusService;
  34. @Autowired
  35. ICameraService cameraService;
  36. @Autowired
  37. IUserService userService;
  38. @Autowired
  39. ICameraDetailService cameraDetailService;
  40. /**
  41. * 根据手机号码获取 相机 sncode
  42. */
  43. @RequestMapping(value = "/getSnCodeByPhone",method = RequestMethod.GET)
  44. public Result getSnCodeByUserName(@RequestParam(required = false)String phone,
  45. @RequestParam(required = false,defaultValue = "4")String sceneSource) throws Exception {
  46. if(StringUtils.isBlank(phone)){
  47. String token = getToken();
  48. phone = JwtUtil.getUsername(token);
  49. }
  50. if(StringUtils.isBlank(phone)){
  51. throw new BusinessException(ErrorCode.MISSING_REQUIRED_PARAMETERS);
  52. }
  53. List<Long> userIds = userService.getLikeUserName(phone);
  54. HashMap<String,Object> map = new HashMap<>();
  55. Set<String> snCodeSet = new HashSet<>();
  56. map.put("phone",phone);
  57. map.put("snCodes",snCodeSet);
  58. if(userIds.size() <=0){
  59. return Result.success(map);
  60. }
  61. List<CameraAppVo> camera = new ArrayList<>();
  62. for (Long userId : userIds) {
  63. }
  64. if(sceneSource.contains(",")){
  65. String[] split = sceneSource.split(",");
  66. for (String resource : split) {
  67. if("4".equals(resource)){
  68. camera.addAll( cameraDetailService.getListByUserAndType(userIds, 10));
  69. }
  70. if("5".equals(resource)){
  71. camera.addAll(cameraDetailService.getListByUserIdsAndType(userIds, 11));
  72. }
  73. }
  74. }
  75. if("4".equals(sceneSource)){
  76. camera = cameraDetailService.getListByUserIdsAndType(userIds, 10);
  77. }
  78. if("5".equals(sceneSource)){
  79. camera = cameraDetailService.getListByUserIdsAndType(userIds, 11);
  80. }
  81. if(camera.size() >0){
  82. snCodeSet = camera.stream().map(CameraAppVo::getSnCode).collect(Collectors.toSet());
  83. map.put("snCodes",snCodeSet);
  84. }
  85. return Result.success(map);
  86. }
  87. /**
  88. * 获取场景数据
  89. */
  90. @RequestMapping(value = "/getSceneByNum",method = RequestMethod.GET)
  91. public Result getSceneByNum(@RequestParam(required = false)String num) throws Exception {
  92. ScenePro sceneProEntity = sceneProService.getByNum(num);
  93. LaserSceneVo vo = new LaserSceneVo();
  94. Long userId = null;
  95. if(sceneProEntity!= null){
  96. vo.setNum(sceneProEntity.getNum());
  97. userId = sceneProEntity.getUserId();
  98. }
  99. ScenePlus scenePlus = scenePlusService.getByNum(num);
  100. if(scenePlus != null){
  101. vo.setNum(scenePlus.getNum());
  102. userId = scenePlus.getUserId();
  103. }
  104. if(userId != null){
  105. User user = userService.getById(userId);
  106. if(user!=null){
  107. vo.setUserPhone(user.getUserName());
  108. vo.setUserId(user.getId());
  109. }
  110. }
  111. return Result.success(vo);
  112. }
  113. }