LoginController.java 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. package com.zanxiang.sdk.controller;
  2. import com.zanxiang.common.domain.ResultVO;
  3. import com.zanxiang.sdk.domain.params.LoginMobileParam;
  4. import com.zanxiang.sdk.domain.params.LoginPasswordParam;
  5. import com.zanxiang.sdk.domain.params.UserData;
  6. import com.zanxiang.sdk.domain.vo.UserLoginVO;
  7. import com.zanxiang.sdk.service.RegisterLoginService;
  8. import com.zanxiang.sdk.service.UserTokenService;
  9. import io.swagger.annotations.Api;
  10. import io.swagger.annotations.ApiOperation;
  11. import io.swagger.annotations.ApiResponse;
  12. import io.swagger.annotations.ApiResponses;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.validation.annotation.Validated;
  15. import org.springframework.web.bind.annotation.*;
  16. import javax.servlet.http.HttpServletRequest;
  17. /**
  18. * @author : lingfeng
  19. * @time : 2022-06-21
  20. * @description : 用户注册登录
  21. */
  22. @Api(tags = "注册登录接口")
  23. @RestController
  24. @RequestMapping(value = "/api/login")
  25. public class LoginController {
  26. @Autowired
  27. private RegisterLoginService registerPassword;
  28. @Autowired
  29. private UserTokenService userTokenService;
  30. @ApiOperation(value = "登录凭证验证")
  31. @GetMapping("/token/check")
  32. @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Long.class)})
  33. public ResultVO userTokenCheck(@RequestParam Long gameId, @RequestParam Long userId,
  34. @RequestParam String token, @RequestParam String sign) {
  35. return userTokenService.userTokenCheck(gameId, userId, token, sign);
  36. }
  37. @ApiOperation(value = "用户账号注册注册/登录")
  38. @PostMapping("/password")
  39. @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserLoginVO.class)})
  40. public ResultVO<UserLoginVO> loginPassword(@Validated @RequestBody LoginPasswordParam param, UserData userData, HttpServletRequest request) {
  41. return registerPassword.loginPassword(param, userData, request);
  42. }
  43. @ApiOperation(value = "用户手机号注册/登录")
  44. @PostMapping("/mobile")
  45. @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserLoginVO.class)})
  46. public ResultVO<UserLoginVO> loginMobile(@Validated @RequestBody LoginMobileParam param, UserData userData, HttpServletRequest request) {
  47. return registerPassword.loginMobile(param, userData, request);
  48. }
  49. @ApiOperation(value = "用户退出")
  50. @PostMapping("/sign/out")
  51. @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserLoginVO.class)})
  52. public ResultVO<Boolean> loginOut() {
  53. return ResultVO.ok();
  54. }
  55. @ApiOperation(value = "用户账号注销")
  56. @PostMapping("/write/off")
  57. @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserLoginVO.class)})
  58. public ResultVO<Boolean> writeOff() {
  59. return ResultVO.ok();
  60. }
  61. // @ApiOperation(value = "用户QQ授权登录")
  62. // @GetMapping("/register/login/qq")
  63. // @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserLoginVO.class)})
  64. // public ResultVO qqLoginAuth(HttpServletResponse response) {
  65. // registerPassword.qqLoginAuth(response);
  66. // return ResultVO.ok();
  67. // }
  68. //
  69. // @ApiOperation(value = "用户QQ授权登录回调接口")
  70. // @PostMapping("/register/login/qq/call/back")
  71. // @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserLoginVO.class)})
  72. // public ResultVO<UserLoginVO> qqLoginCallback(@Validated @RequestBody QqLoginCallbackParam qqLoginCallbackParam,
  73. // HttpServletRequest request, UserData userData) {
  74. // return registerPassword.qqLoginCallback(qqLoginCallbackParam, request, userData);
  75. // }
  76. //
  77. // @ApiOperation(value = "用户微信授权登录")
  78. // @GetMapping("/register/login/vx")
  79. // @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserLoginVO.class)})
  80. // public ResultVO getUserDetail(HttpServletResponse response) {
  81. // registerPassword.vxLoginAuth(response);
  82. // return ResultVO.ok();
  83. // }
  84. //
  85. // @ApiOperation(value = "用户微信授权登录回调接口")
  86. // @PostMapping("/register/login/vx/call/back")
  87. // @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserLoginVO.class)})
  88. // public ResultVO<UserLoginVO> vxLoginCallback(@Validated @RequestBody QqLoginCallbackParam qqLoginCallbackParam,
  89. // HttpServletRequest request, UserData userData) {
  90. // return registerPassword.vxLoginCallback(qqLoginCallbackParam, request, userData);
  91. // }
  92. }