AppealController.java 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. package com.uas.sso.controller;
  2. import com.uas.sso.entity.*;
  3. import com.uas.sso.service.ChangeAdminAppealService;
  4. import com.uas.sso.service.ResetPwdAppealService;
  5. import com.uas.sso.service.UserService;
  6. import com.uas.sso.service.ValidAccountAppealService;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.ui.ModelMap;
  9. import org.springframework.web.bind.annotation.RequestMapping;
  10. import org.springframework.web.bind.annotation.RequestMethod;
  11. import org.springframework.web.bind.annotation.RequestParam;
  12. import org.springframework.web.bind.annotation.RestController;
  13. /**
  14. * @author wangmh
  15. * @create 2018-01-16 8:50
  16. * @desc 申述controller
  17. **/
  18. @RestController
  19. @RequestMapping("/appeal")
  20. public class AppealController extends BaseController {
  21. @Autowired
  22. private UserService userService;
  23. @Autowired
  24. private ResetPwdAppealService resetPwdAppealService;
  25. @Autowired
  26. private ChangeAdminAppealService changeAdminAppealService;
  27. @Autowired
  28. private ValidAccountAppealService validAccountAppealService;
  29. /**
  30. * 获取手机号验证码
  31. *
  32. * @author wangmh
  33. * @date 2018/1/16 10:37
  34. * @param mobile 手机号
  35. * @return 验证码tokenId
  36. */
  37. @RequestMapping(value = "/check/mobile", method = RequestMethod.GET)
  38. public ModelMap checkMobile(String mobile) {
  39. if (!userService.mobileHasRegistered(mobile)) {
  40. return error("用户手机号未被注册");
  41. }
  42. String token = getMobileCode(mobile);
  43. return success(new ModelMap("token", token));
  44. }
  45. /**
  46. * 校验验证码
  47. *
  48. * @author wangmh
  49. * @date 2018/1/16 10:44
  50. * @param mobile 手机号
  51. * @param token 验证码tokenId
  52. * @param code 验证码
  53. * @return
  54. */
  55. @RequestMapping(value = "/checkMobile", method = RequestMethod.POST)
  56. public ModelMap checkMobile(String mobile, @RequestParam String token, String code) {
  57. Token existToken = tokenService.findOne(token);
  58. if (existToken == null || existToken.isExpired()) {
  59. return error("验证码已过期,请重新获取");
  60. }
  61. // 校验验证码
  62. checkMobileCode(token, mobile, code);
  63. // 返回信息
  64. return success();
  65. }
  66. /**
  67. * 找回密码申述
  68. * @param resetPwdAppeal 申述信息
  69. * @param token 验证码tokenId
  70. * @param code 验证码
  71. * @return
  72. */
  73. @RequestMapping(value = "/resetPwd", method = RequestMethod.POST)
  74. public ModelMap resetPwd(ResetPwdAppeal resetPwdAppeal, String token, String code) {
  75. Token existToken = tokenService.findOne(token);
  76. if (existToken == null || existToken.isExpired()) {
  77. return error("验证码已过期,请重新获取");
  78. }
  79. // TODO 参数空检验
  80. // 校验验证码
  81. checkMobileCode(token, resetPwdAppeal.getMobile(), code);
  82. // 保存申述信息
  83. resetPwdAppealService.submit(resetPwdAppeal);
  84. return success();
  85. }
  86. @RequestMapping(value = "/changeAdmin", method = RequestMethod.POST)
  87. public ModelMap changeAdmin(ChangeAdminAppeal changeAdminAppeal, String token, String code) {
  88. Token existToken = tokenService.findOne(token);
  89. if (existToken == null || existToken.isExpired()) {
  90. return error("验证码已过期,请重新获取");
  91. }
  92. // TODO 参数空检验
  93. // 校验验证码
  94. checkMobileCode(token, changeAdminAppeal.getMobile(), code);
  95. // 保存申述信息
  96. changeAdminAppealService.submit(changeAdminAppeal);
  97. return success();
  98. }
  99. @RequestMapping(value = "/account", method = RequestMethod.POST)
  100. public ModelMap validAccount(ValidAccountAppeal validAccountAppeal, String token, String code) {
  101. Token existToken = tokenService.findOne(token);
  102. if (existToken == null || existToken.isExpired()) {
  103. return error("验证码已过期,请重新获取");
  104. }
  105. // TODO 参数空检验
  106. // 校验验证码
  107. checkMobileCode(token, validAccountAppeal.getMobile(), code);
  108. // 保存申述信息
  109. validAccountAppealService.submit(validAccountAppeal);
  110. return success();
  111. }
  112. }