package com.uas.sso.controller; import com.uas.sso.entity.*; import com.uas.sso.service.ChangeAdminAppealService; import com.uas.sso.service.ResetPwdAppealService; import com.uas.sso.service.UserService; import com.uas.sso.service.ValidAccountAppealService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; /** * @author wangmh * @create 2018-01-16 8:50 * @desc 申述controller **/ @RestController @RequestMapping("/appeal") public class AppealController extends BaseController { @Autowired private UserService userService; @Autowired private ResetPwdAppealService resetPwdAppealService; @Autowired private ChangeAdminAppealService changeAdminAppealService; @Autowired private ValidAccountAppealService validAccountAppealService; /** * 获取手机号验证码 * * @author wangmh * @date 2018/1/16 10:37 * @param mobile 手机号 * @return 验证码tokenId */ @RequestMapping(value = "/check/mobile", method = RequestMethod.GET) public ModelMap checkMobile(String mobile) { if (!userService.mobileHasRegistered(mobile)) { return error("用户手机号未被注册"); } String token = getMobileCode(mobile); return success(new ModelMap("token", token)); } /** * 校验验证码 * * @author wangmh * @date 2018/1/16 10:44 * @param mobile 手机号 * @param token 验证码tokenId * @param code 验证码 * @return */ @RequestMapping(value = "/checkMobile", method = RequestMethod.POST) public ModelMap checkMobile(String mobile, @RequestParam String token, String code) { Token existToken = tokenService.findOne(token); if (existToken == null || existToken.isExpired()) { return error("验证码已过期,请重新获取"); } // 校验验证码 checkMobileCode(token, mobile, code); // 返回信息 return success(); } /** * 找回密码申述 * @param resetPwdAppeal 申述信息 * @param token 验证码tokenId * @param code 验证码 * @return */ @RequestMapping(value = "/resetPwd", method = RequestMethod.POST) public ModelMap resetPwd(ResetPwdAppeal resetPwdAppeal, String token, String code) { Token existToken = tokenService.findOne(token); if (existToken == null || existToken.isExpired()) { return error("验证码已过期,请重新获取"); } // TODO 参数空检验 // 校验验证码 checkMobileCode(token, resetPwdAppeal.getMobile(), code); // 保存申述信息 resetPwdAppealService.submit(resetPwdAppeal); return success(); } @RequestMapping(value = "/changeAdmin", method = RequestMethod.POST) public ModelMap changeAdmin(ChangeAdminAppeal changeAdminAppeal, String token, String code) { Token existToken = tokenService.findOne(token); if (existToken == null || existToken.isExpired()) { return error("验证码已过期,请重新获取"); } // TODO 参数空检验 // 校验验证码 checkMobileCode(token, changeAdminAppeal.getMobile(), code); // 保存申述信息 changeAdminAppealService.submit(changeAdminAppeal); return success(); } @RequestMapping(value = "/account", method = RequestMethod.POST) public ModelMap validAccount(ValidAccountAppeal validAccountAppeal, String token, String code) { Token existToken = tokenService.findOne(token); if (existToken == null || existToken.isExpired()) { return error("验证码已过期,请重新获取"); } // TODO 参数空检验 // 校验验证码 checkMobileCode(token, validAccountAppeal.getMobile(), code); // 保存申述信息 validAccountAppealService.submit(validAccountAppeal); return success(); } }