RoomController.java 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. package com.fdkankan.tk.controller;
  2. import com.fdkankan.tk.common.ResultCode;
  3. import com.fdkankan.tk.common.ResultData;
  4. import com.fdkankan.tk.entity.Room;
  5. import com.fdkankan.tk.exception.BusinessException;
  6. import com.fdkankan.tk.request.CheckRoomPasswordParam;
  7. import com.fdkankan.tk.request.RoomAddParam;
  8. import com.fdkankan.tk.request.RoomListParam;
  9. import com.fdkankan.tk.response.RoomAddUserParam;
  10. import com.fdkankan.tk.service.IRoomService;
  11. import com.fdkankan.tk.service.IRoomShareLogService;
  12. import com.fdkankan.tk.util.MD5Utils;
  13. import lombok.extern.slf4j.Slf4j;
  14. import org.apache.commons.lang3.StringUtils;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.web.bind.annotation.*;
  17. import java.io.IOException;
  18. /**
  19. *房间管理
  20. */
  21. @RestController
  22. @Slf4j
  23. public class RoomController extends BaseController{
  24. @Autowired
  25. IRoomService roomService;
  26. @Autowired
  27. IRoomShareLogService roomShareLogService;
  28. /**
  29. * 根据房间id获取详情
  30. */
  31. @GetMapping("/roomInfo")
  32. public ResultData roomInfo(@RequestParam(required = false) String roomId){
  33. return ResultData.ok(roomService.getRoomInfo(roomId,getToken(),getWxToken()));
  34. }
  35. /**
  36. * 房间访问次数 +1
  37. */
  38. @GetMapping("/roomAddView")
  39. public ResultData roomAddView(@RequestParam(required = false) String roomId){
  40. //roomService.roomAddView(roomId);
  41. return ResultData.ok();
  42. }
  43. /**
  44. * 房间列表
  45. */
  46. @PostMapping("/roomList")
  47. public ResultData pageList(@RequestBody RoomListParam param){
  48. return ResultData.ok(roomService.pageList(param,getToken(),getWxToken()));
  49. }
  50. /**
  51. * 创建房间
  52. */
  53. @PostMapping("/roomAddOrUpdate")
  54. public ResultData createRoom(@RequestBody RoomAddParam param){
  55. return ResultData.ok(roomService.addOrUpdate(param,getToken()));
  56. }
  57. /**
  58. * 删除房间
  59. */
  60. @PostMapping("/roomDelete")
  61. public ResultData roomDelete(@RequestBody RoomAddParam param) {
  62. if(param.getRoomId() == null){
  63. throw new BusinessException(ResultCode.PARAM_MISS);
  64. }
  65. roomService.deleteById(param.getRoomId());
  66. return ResultData.ok();
  67. }
  68. /**
  69. * 获取分享二维码
  70. * roomId 房间id
  71. * type follower leader
  72. */
  73. @GetMapping("/roomGetShareCode")
  74. public ResultData roomGetShareCode(@RequestParam(required = false) String roomId){
  75. if(roomId == null){
  76. throw new BusinessException(ResultCode.PARAM_MISS);
  77. }
  78. return ResultData.ok(roomService.getWxQrCode(roomId,"follower"));
  79. }
  80. /**
  81. * 获取分享二维码
  82. */
  83. @GetMapping("/roomGetHostCode")
  84. public ResultData roomGetHostCode(@RequestParam(required = false) String roomId){
  85. if(roomId == null){
  86. throw new BusinessException(ResultCode.PARAM_MISS);
  87. }
  88. return ResultData.ok(roomService.getWxQrCode(roomId,"leader"));
  89. }
  90. /**
  91. * 加入房间,开启带看,退出房间
  92. * type 0 加入房间,1退出房间
  93. * role follower leader
  94. */
  95. @GetMapping("/inOrOutRoom")
  96. public ResultData inOrOutRoom(@RequestParam(required = false) String role,
  97. @RequestParam(required = false) String roomId,
  98. @RequestParam(required = false) Integer type,
  99. @RequestParam(required = false) String userId){
  100. roomService.inOrOutRoom(roomId,role,type,userId);
  101. return ResultData.ok();
  102. }
  103. /**
  104. * 分享房间
  105. * roomId 房间ida
  106. */
  107. @GetMapping("/shareRoom")
  108. public ResultData shareRoom(@RequestParam(required = false) String roomId,
  109. @RequestParam(required = false) String userId){
  110. if(roomId == null){
  111. throw new BusinessException(ResultCode.PARAM_MISS);
  112. }
  113. roomShareLogService.saveLog(roomId,userId);
  114. return ResultData.ok();
  115. }
  116. /**
  117. * 获取房间密码
  118. */
  119. @PostMapping("/checkRoomVisitPassword")
  120. public ResultData checkRoomVisitPassword(@RequestBody CheckRoomPasswordParam param){
  121. log.info("checkRoomVisitPassword--:roomId:{},password:{}",param.getRoomId(),param.getPassword());
  122. if(StringUtils.isBlank(param.getRoomId()) || StringUtils.isBlank(param.getPassword())){
  123. throw new BusinessException(ResultCode.PARAM_MISS);
  124. }
  125. String roomId = param.getRoomId();
  126. if(param.getRoomId().contains("_")){
  127. roomId = param.getRoomId().split("_")[0];
  128. }
  129. Room room = roomService.getById(roomId);
  130. Boolean flag = MD5Utils.getPWD(room.getVisitPassword()).equals(param.getPassword());
  131. log.info("checkRoomVisitPassword--:roomId:{},password:{},flag:{}",param.getRoomId(),param.getPassword(),flag);
  132. return ResultData.ok(flag);
  133. }
  134. public static void main(String[] args) {
  135. System.out.println(MD5Utils.getPWD("1234"));
  136. }
  137. }