LoginController.java 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package com.example.xiaoshiweixinback.controller;
  2. import com.example.xiaoshiweixinback.business.common.Response;
  3. import com.example.xiaoshiweixinback.business.common.base.Constants;
  4. import com.example.xiaoshiweixinback.entity.dto.person.*;
  5. import com.example.xiaoshiweixinback.entity.vo.person.LoginByWxVO;
  6. import com.example.xiaoshiweixinback.entity.vo.person.LoginVO;
  7. import com.example.xiaoshiweixinback.service.LoginService;
  8. import io.swagger.v3.oas.annotations.Operation;
  9. import jakarta.validation.Valid;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.web.bind.annotation.*;
  12. /**
  13. * 登录相关接口
  14. *
  15. * @author: 高昌奎
  16. */
  17. @RequestMapping(Constants.API_XIAO_SHI_WXBACK + "/account")
  18. @RestController
  19. public class LoginController {
  20. @Autowired
  21. private LoginService loginService;
  22. @Operation(summary = "手机号/账号登录")
  23. @PostMapping(value = "/loginByPhone")
  24. public Response loginByPhone(@Valid @RequestBody LoginDTO vo) {
  25. LoginVO loginVO = null;
  26. try {
  27. loginVO = loginService.loginByPhone(vo);
  28. } catch (Exception e) {
  29. return Response.error(e.getMessage());
  30. }
  31. return Response.success(loginVO);
  32. }
  33. @Operation(summary = "微信小程序登录")
  34. @PostMapping(value = "/loginByWeChat")
  35. public Response loginByWeChat(@Valid @RequestBody LoginByWxDTO wxDTO) throws Exception {
  36. LoginByWxVO loginByWxVO = null;
  37. try {
  38. loginByWxVO = loginService.loginByWeChat(wxDTO);
  39. } catch (Exception e) {
  40. return Response.error(e.getMessage());
  41. }
  42. return Response.success(loginByWxVO);
  43. }
  44. @Operation(summary = "发送验证码")
  45. @PostMapping("/sendCode")
  46. public Response sendCode(@RequestBody @Valid SendCodeDTO vo) {
  47. boolean b = loginService.sendCode(vo);
  48. if (!b) {
  49. return Response.error("发送验证码失败");
  50. }
  51. return Response.success("发送验证码成功");
  52. }
  53. @GetMapping("/verifyCode")
  54. @Operation(summary = "生成校验码")
  55. public Response verifyCode(@RequestBody @Valid PersonPhoneDTO vo) throws Exception {
  56. boolean b = true;
  57. try {
  58. b = loginService.verifyCode(vo);
  59. } catch (Exception e) {
  60. return Response.success(e.getMessage());
  61. }
  62. return Response.success(b);
  63. }
  64. @GetMapping("/editPerson")
  65. @Operation(summary = "修改个人信息")
  66. public Response editPerson(@RequestBody EditPersonDTO vo) throws Exception {
  67. boolean b = true;
  68. try {
  69. b = loginService.editPerson(vo);
  70. } catch (Exception e) {
  71. return Response.success(e.getMessage());
  72. }
  73. return Response.success(b);
  74. }
  75. @GetMapping("/logout")
  76. @Operation(summary = "退出登录")
  77. public Response logout(PersonIdDTO dto) {
  78. return Response.success(loginService.logout(dto));
  79. }
  80. }