Browse Source

修复修改完邮箱无法正常调整问题

wangmh 7 years ago
parent
commit
15352fad2a

+ 7 - 6
sso-server/src/main/java/com/uas/sso/controller/UpdateUserController.java

@@ -297,7 +297,7 @@ public class UpdateUserController extends BaseController {
      * @return
      */
     @RequestMapping(value = "/setEmail", method = RequestMethod.GET)
-    public ModelMap updateEmail(String email, @RequestParam String token) {
+    public ModelMap updateEmail(String email, @RequestParam String token, String url) {
         // 校验token
         Token existToken = tokenService.findOne(token);
         if (existToken == null || existToken.isExpired()) {
@@ -327,7 +327,8 @@ public class UpdateUserController extends BaseController {
         data.put("vipName", user.getVipName());
         // TODO 邮件认证地址
         data.put("type", "验证邮箱");
-        data.put("url", getFrontUrl() + "/update/user/email?token=" + returnToken.getId());
+        url = getFrontUrl() + "/update/user/email"+ url.substring(url.indexOf("?"), url.length());
+        data.put("url", url + (url.contains("?") ? "&" : "?") + "step=2&token=" + returnToken.getId());
 
         // 发送邮件
         if (!StringUtils.isEmpty(email)) {
@@ -349,18 +350,18 @@ public class UpdateUserController extends BaseController {
      * @return
      */
     @RequestMapping(value = "/email", method = RequestMethod.GET)
-    public ModelAndView updateEmail(@RequestParam String token) {
+    public ModelAndView updateEmail(@RequestParam String token, String returnURL) {
         // 校验token
         Token existToken = tokenService.findOne(token);
         if (existToken == null || existToken.isExpired()) {
             // token过期,跳转到失败页面
-            return new ModelAndView("redirect:"+ getFrontUrl() + "/validation/validFail");
+            return new ModelAndView("redirect:"+ getFrontUrl() + "/validation/validFail" + "&returnURL=" + returnURL);
         }
 
         // 拿出userUU,并删除token
         if (existToken.getBind() == null || !(existToken.getBind() instanceof Map)) {
             // token错误,跳转到失败页面
-            return new ModelAndView("redirect:"+ getFrontUrl() + "/validation/validFail?step=2&token=" + token);
+            return new ModelAndView("redirect:"+ getFrontUrl() + "/validation/validFail?step=2&token=" + token + "&returnURL=" + returnURL);
         }
         Map<String, Object> data = (Map) existToken.getBind();
         Long userUU = (Long) data.get("userUU");
@@ -370,7 +371,7 @@ public class UpdateUserController extends BaseController {
 
         // 删除token
         tokenService.delete(token);
-        return new ModelAndView("redirect:"+ getFrontUrl() + "/validation/emailValidation?step=3&token=" + token);
+        return new ModelAndView("redirect:"+ getFrontUrl() + "/validation/emailValidation?step=3&token=" + token + "&returnURL=" + returnURL);
     }
 
     @RequestMapping(value = "/setQuestion", method = RequestMethod.POST)