瀏覽代碼

账户中心v2升级3

zhaohongpeng 7 年之前
父節點
當前提交
3089a46b02

+ 4 - 4
src/main/java/com/uas/platform/b2c/common/account/controller/EnterpriseController.java

@@ -167,17 +167,17 @@ public class EnterpriseController {
 	 * @param enName
 	 */
 	@RequestMapping(value = "/findByName/{enName}", method = RequestMethod.GET)
-	public UserSpaceDetail findByName(@PathVariable("enName") String enName) {
-		UserSpaceDetail userSpaceDetail = null;
+	public UserSpaceView findByName(@PathVariable("enName") String enName) {
+		UserSpaceView userSpaceView =null;
 		if (StringUtils.isEmpty(enName)) {
 			throw new IllegalArgumentException("信息未填写完整!");
 		}
 		try {
-			userSpaceDetail = AccountUtils.findByName(enName);
+			userSpaceView = AccountUtils.findBySpaceName(enName);
 		} catch (Exception e) {
 			throw new IllegalArgumentException("账户中心异常!");
 		}
-		return userSpaceDetail;
+		return userSpaceView;
 	}
 
 	/**

+ 83 - 0
src/main/java/com/uas/platform/b2c/common/account/controller/SecurityController.java

@@ -69,6 +69,8 @@ public class SecurityController {
 	@Autowired
 	private UserDao userDao;
 
+
+
 	private final DeviceResolver deviceResolver = new LiteDeviceResolver();
 
 	/**
@@ -153,6 +155,87 @@ public class SecurityController {
 		return new ModelMap("content", redirectUrl);
 	}
 
+
+	/**
+	 *
+	 * @Description: 在登陆状态下修改密码;
+	 * @author pengzh
+	 * @date 2018/3/12 16:43
+	 * @param request, response, returnUrl
+	 * @return org.springframework.ui.ModelMap
+	 * @throws
+	 */
+	@RequestMapping(value = "/mPassWord/page")
+	@ResponseBody
+	public ModelMap updatePassWord(HttpServletRequest request, HttpServletResponse response, String returnUrl) throws IOException {
+		request.getSession().setAttribute(SSOConfig.SSOReferer, returnUrl );
+		//SSOHelper.clearLogin(request, response);
+		String updatePasswordUrl = SSOHelper.getUpdatePasswordUrl(request, returnUrl);
+		ModelMap map = new ModelMap("content", updatePasswordUrl);
+		return map;
+	}
+
+
+
+
+
+	/**
+	 *
+	 * @Description: 修改邮箱;
+	 * @author pengzh
+	 * @date 2018/3/12 16:43
+	 * @param request, response, returnUrl
+	 * @return org.springframework.ui.ModelMap
+	 * @throws
+	 */
+	@RequestMapping(value = "/mEmail/page")
+	@ResponseBody
+	public ModelMap updateEmail(HttpServletRequest request, HttpServletResponse response, String returnUrl) throws IOException {
+		request.getSession().setAttribute(SSOConfig.SSOReferer, returnUrl );
+		//SSOHelper.clearLogin(request, response);
+		String updateEmailUrl = SSOHelper.getUpdateEmailUrl(request, returnUrl);
+		ModelMap map = new ModelMap("content", updateEmailUrl);
+		return map;
+	}
+
+	/**
+	 *
+	 * @Description: 修改电话;
+	 * @author pengzh
+	 * @date 2018/3/12 16:43
+	 * @param request, response, returnUrl
+	 * @return org.springframework.ui.ModelMap
+	 * @throws
+	 */
+	@RequestMapping(value = "/mPhone/page")
+	@ResponseBody
+	public ModelMap updateMobilePhone(HttpServletRequest request, HttpServletResponse response, String returnUrl) throws IOException {
+		request.getSession().setAttribute(SSOConfig.SSOReferer, returnUrl );
+		SSOHelper.clearLogin(request, response);
+		String updateMobileUrl = SSOHelper.getUpdateMobileUrl(request, returnUrl);
+		return new ModelMap("content", updateMobileUrl);
+	}
+
+
+	/**
+	 *
+	 * @Description: 修改密保问题;
+	 * @author pengzh
+	 * @date 2018/3/12 16:43
+	 * @param request, response, returnUrl
+	 * @return org.springframework.ui.ModelMap
+	 * @throws
+	 */
+	@RequestMapping(value = "/mQuestion/page")
+	@ResponseBody
+	public ModelMap updateSecurityQuestion(HttpServletRequest request, HttpServletResponse response, String returnUrl) throws IOException {
+		request.getSession().setAttribute(SSOConfig.SSOReferer, returnUrl );
+		//SSOHelper.clearLogin(request, response);
+		String updateQuestionUrl = SSOHelper.getUpdateQuestionUrl(request, returnUrl);
+		return new ModelMap("content", updateQuestionUrl);
+	}
+
+
 	/**
 	 * 获取跨域登录的参数
 	 * 

+ 40 - 25
src/main/java/com/uas/platform/b2c/common/account/service/impl/EnterpriseServiceImpl.java

@@ -11,18 +11,25 @@ import com.uas.platform.b2c.common.account.service.EnterpriseService;
 import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.platform.b2c.logistics.dao.ReceiptDao;
 import com.uas.platform.b2c.logistics.model.Receipt;
+import com.uas.platform.b2c.trade.aftersale.model.ReturnFB2c;
 import com.uas.platform.b2c.trade.support.CodeType;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.exception.SystemException;
 import com.uas.platform.core.model.Status;
+import com.uas.sso.entity.UserSpaceDetail;
+import com.uas.sso.entity.UserSpaceView;
+import com.uas.sso.entity.UserView;
 import com.uas.sso.util.AccountUtils;
 import org.apache.commons.collections.CollectionUtils;
+import org.hibernate.loader.custom.Return;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.core.userdetails.UserDetails;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
 import java.lang.reflect.Array;
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 @Service
@@ -141,46 +148,54 @@ public class EnterpriseServiceImpl implements EnterpriseService{
 	}
 
 	@Override
-	public ResultMap registerEnterprise(FormEnterprise enterprise, String filePath,  User user) {
-		/*UserSpaceDetail detail = new UserSpaceDetail();
-		detail.setName(enterprise.getName());
-		detail.setShortName(null);
+	public ResultMap registerEnterprise(FormEnterprise enterprise, String filePath, User user) {
+		//封装注册时的个人账户信息;
+		if (user == null) {
+			throw new RuntimeException("登录异常:用户不存在!");
+		}
+		UserSpaceView detail = new UserSpaceView();
+		UserView userView = new UserView();
+		userView.setUserUU(user.getUserUU());
+		userView.setName(user.getUserName());
+		userView.setSex(user.getUserSex());
+		userView.setPassword(user.getUserPwd());
+		userView.setMobile(user.getUserTel());
+		userView.setEmail(user.getUserEmail());
+		userView.setIdCard(user.getUserIdcode());
+		userView.setImId(user.getUserIMId().toString());
+		//封装注册企业信息;
+		detail.setSpaceName(enterprise.getName());
+		detail.setCorporation(enterprise.getLawPerson());
+		detail.setAdmin(userView);
+		detail.setAdminUU(userView.getUserUU());
 		detail.setBusinessCode(enterprise.getLicenceId());
 		detail.setBusinessCodeImage(enterprise.getUrl());
-		if (null == detail.getName()|| null==detail.getBusinessCode() || null==detail.getBusinessCodeImage()){
+		detail.setRegAddress(enterprise.getAddress());
+		detail.setLogoImage(enterprise.getLogoUrl());
+		detail.setTelephone(enterprise.getPhone());
+		detail.setProfession(enterprise.getProfession());
+		if (null == detail.getSpaceName() || null == detail.getBusinessCode() || null == detail.getBusinessCodeImage()) {
 			return new ResultMap(CodeType.SYSTEM_NOT_EXIST, "参数不能为空");
 		}
-		detail.setArea("中国大陆");
-		detail.setCorporation(enterprise.getLawPerson());
-		detail.setAddress(enterprise.getAddress());
-		detail.setUrl(enterprise.getWebsite());
-		detail.setContactMan(enterprise.getLinkman());
-		detail.setContactTel(enterprise.getPhone());
-		detail.setContactEmail(enterprise.getEmail());
-		detail.setFax(enterprise.getFax());
-        detail.setLogoImage(enterprise.getLogoUrl());
-		detail.setProfession(enterprise.getProfession());
-		if (null != enterprise.getTagsData() || enterprise.getTagsData().length>0){
+		if (null != enterprise.getTagsData() || enterprise.getTagsData().length > 0) {
 			String str = Arrays.toString(enterprise.getTagsData());
-			str = str.substring(1, str.length()-1);
+			str = str.substring(1, str.length() - 1);
 			detail.setTags(str);
 		} else {
 			detail.setTags(null);
 		}
-		detail.setAdminName(user.getUserName());
-		detail.setAdminEmail(user.getUserEmail());
-		detail.setAdminTel(user.getUserTel());
+
 		String result = null;
 		try {
-			result = AccountUtils.applyAppForMall(detail);
-		}catch (Exception e){
+			AccountUtils.register(detail);
+		} catch (Exception e) {
 			return new ResultMap(CodeType.SYSTEM_ERROR, "账户中心异常,注册失败");
 		}
-		if (result.contains("errMsg") || !result.contains("enuu")){
+		if (result.contains("errMsg") || !result.contains("enuu")) {
 			return new ResultMap(CodeType.SYSTEM_ERROR, "注册失败");
-		}*/
+		}
 
-		return null; //ResultMap.success(JSONObject.parseObject(result));
+		return ResultMap.success(JSONObject.parseObject(result));
 	}
 
 	@Override

+ 1 - 1
src/main/java/com/uas/platform/b2c/common/account/service/impl/UserServiceImpl.java

@@ -351,7 +351,7 @@ public class UserServiceImpl implements UserService {
 	public void postToAccountCenter(User user) throws Exception {
 		//判断是否个人用户
 		if(SystemSession.getUser().getEnterprise()==null){
-			AccountUtils.addUser(user.getUserUU(),null);
+			throw new RuntimeException("个人账户不能新增企业用户");
 		}else{
 			AccountUtils.addUser(user.getUserUU(),SystemSession.getUser().getEnterprise().getUu());
 		}

+ 5 - 1
src/main/java/com/uas/platform/b2c/common/account/v2/controller/UserController.java

@@ -1,11 +1,14 @@
 package com.uas.platform.b2c.common.account.v2.controller;
+import com.uas.platform.b2c.common.account.model.User;
 import com.uas.platform.b2c.common.account.v2.service.UserService;
+import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.sso.entity.UserView;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.SessionAttributes;
 
 @Controller("v2.UserController")
 @RequestMapping(value = "api/public/user")
@@ -23,7 +26,8 @@ public class UserController {
 	@ResponseBody
 	public void save(UserView user) {
 		if (user != null) {
-			 userService.save(user);
+			User newUser = userService.save(user);
+			SystemSession.setUser(newUser);
 		}
 	}
 

+ 2 - 1
src/main/java/com/uas/platform/b2c/common/account/v2/service/UserService.java

@@ -1,5 +1,6 @@
 package com.uas.platform.b2c.common.account.v2.service;
 
+import com.uas.platform.b2c.common.account.model.User;
 import com.uas.sso.entity.UserView;
 
 
@@ -10,7 +11,7 @@ public interface UserService {
      *
      * @param user
      */
-	void save(UserView user);
+	User save(UserView user);
 
     /**
      * 删除用户

+ 5 - 3
src/main/java/com/uas/platform/b2c/common/account/v2/service/impl/UserServiceImpl.java

@@ -34,12 +34,12 @@ public class UserServiceImpl implements UserService {
     private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
 
     @Override
-    public void save(UserView user) {
+    public User save(UserView user) {
         User oldUser = userDao.findOne(user.getUserUU());
         if (null == oldUser) {
             oldUser = new User();
         }
-        oneSave(user,oldUser);
+        User newUser = oneSave(user, oldUser);
        /* com.uas.platform.b2c.common.account.model.User u = null;
         if (!StringUtils.isEmpty(user.getDialectUID())) {
             u = userDao.findOne(Long.parseLong(user.getDialectUID()));
@@ -58,8 +58,9 @@ public class UserServiceImpl implements UserService {
             u = new com.uas.platform.b2c.common.account.model.User();
         }
         oneSave(user,u);*/
+       return newUser;
     }
-    private void oneSave(UserView user , com.uas.platform.b2c.common.account.model.User u) {
+    private User oneSave(UserView user , com.uas.platform.b2c.common.account.model.User u) {
         /*if (user.getPassword() != null) {
             u.setUserPwd(user.getPassword());
         }*/
@@ -125,6 +126,7 @@ public class UserServiceImpl implements UserService {
         } else {
             logger.log("新增用户信息", user.getMobile() );
         }
+        return u;
     }
 
 

+ 0 - 1
src/main/java/com/uas/platform/b2c/external/erp/prod/service/impl/ProdServiceImpl.java

@@ -160,7 +160,6 @@ public class ProdServiceImpl implements ProdService {
         return url;
     }
 
-    @Override
     public String setB2cEnable(String pr_code, Integer isEnable) {
         List<Product> productList = productDao.getProductByEnUUAndProdNum(SystemSession.getUser().getEnterprise().getUu(),pr_code);
         if (!CollectionUtils.isEmpty(productList)) {

+ 12 - 9
src/main/resources/dev/account.properties

@@ -1,20 +1,23 @@
 ### account center config, 
-account.us.save.url=http://192.168.253.149:3001/api/userspace
-account.user.save.url=http://192.168.253.149:3001/api/user
-account.user.getPartners.url=http://192.168.253.149:3001/api/partners
+account.us.save.url=http://192.168.253.66:8081/api/userspace
+account.user.save.url=http://192.168.253.66:8081/api/user
+account.user.getPartners.url=http://192.168.253.66:8081/api/partners
 ### sso config
 sso.app=mall
 # token secretkey
 sso.secretkey=0taQcW073Z7G628g5H
 sso.cookie.secure=false
 sso.cookie.browser=false
-sso.login.url=http://192.168.253.149:3001
-sso.logout.url=http://192.168.253.149:3001/logquit
-sso.register.url=http://192.168.253.149:3001/register/personalRegistration?appId=mall
-
+sso.login.url=http://192.168.253.118:3001
+sso.logout.url=http://192.168.253.118:3001/logquit
+sso.register.url=http://192.168.253.118:3001/register/personalRegistration?appId=mall
+sso.updatePassword.url=http://192.168.253.118:3001/reset/changePasswordChooseStyle
+sso.updateMobile.url=http://192.168.253.118:3001/validation/phoneValidation
+sso.updateEmail.url=http://192.168.253.118:3001/validation/emailValidation
+sso.updateQuestion.url=http://192.168.253.118:3001/encrypted-setting/EncryptedSetting
 #cross domain
-sso.ask.url=http://192.168.253.149:3001/sso/login/ask
-sso.askout.url=http://192.168.253.149:3001/sso/logout/ask
+sso.ask.url=http://192.168.253.66:8081/sso/login/ask
+sso.askout.url=http://192.168.253.66:8081/sso/logout/ask
 
 sso.authcookie.secretkey=Z318866alN6gA0piuO
 sso.client.private_key=MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAIquTH9rOygR1iyMzU1CSQDXG+lJpMQgWkRWMwO3lzS+UJ3GRq1yxxD8mPFZCuItMRxP4Mvu3nvxDvsJx8lfRXk4MGswROIBPcdBAnasphN7wS5mDvDe/VBIKv+fg4j4VEnak9VUAQhS1gDtp+ZmQpCc9/gz8vueF1ueIXspAoUhAgMBAAECgYBfMP8PY1KK0Zt6nvd5NauYqQ7elg9EFJUBXU3NGmLu8Eez1NrEygk8braoy57921lffrDmKsOKvc+zn2YEoqGzbHCOuYsTDBXFCGLkj8oPeHyrs02+XuJe9j2ejhq2N04oP/TMxerFeyWnHdRCNXECrthqhwTRmGitnj2/+FLVAQJBAM93HY/5HoFlfRv9zjFy72ft/ZC60jHERXwyumbFs8z/x8sHCY1GWfgGhm1ShE1bDWAPY3W9WCFsx6nOETsHajECQQCrH8Dl7IIIHJ5D0TDisFkePnYELxpmOGlPwPOQ7hyLAdW4aB1fVIpjsWmgGOyPvmhK+b99XeLUbwpxVU7AAB3xAkAJNxJCFd+sAbUH7EMfYSqPJDwSFKpHeZ9Yf+xVqkxtO6NFOl/LPae7Y5bO/k5QHU4/yQ8y6KEkgu9vdG7Bf3fRAkEAiDlX6vDytphpmN0PyHXQC9Z3Rm9k2ZjwpM+aVXZn/HSyeQFQ2JHJNQGHby5IK0nNZloYiSlTJ/9ZVc0uSoQNUQJBAJFix2tD7b0Zq82xpeGt81rhXsofuerq1x9WM5UyYILCKJMHZw5lt58snINVzA7JxV+l60dbIgJjmRYm0yxQIAY=

+ 4 - 4
src/main/webapp/resources/js/common/controllers/commonCtrls.js

@@ -211,10 +211,10 @@ define([ 'app/app' ], function(app) {
                 AuthenticationService.redirectRegister();
             };
 
-			// 跳转
-			$scope.gotoUrl = function(url) {
-				location.href = url;
-			};
+            //安全中心:
+
+
+
 		}]);
 
 	// 登录模态框

+ 70 - 0
src/main/webapp/resources/js/common/services.js

@@ -241,6 +241,76 @@ define([ 'angular', 'common/utils', 'big'], function(angular, utils, Big) {
                     alert('系统错误');
                 });
             },
+            redirectPassword: function() {
+                // 获取密码修改Url;
+                $http.get(rootPath + '/mPassWord/page', {
+                    params: {
+                        returnUrl: window.location.href
+                    }
+                }).success(function(data) {
+                    if (data.content) {
+                        var newTab=window.open('about:blank');
+                        newTab.location.href=data.content;
+                    } else {
+                        alert('系统错误');
+                    }
+                }).error(function() {
+                    alert('系统错误');
+                });
+            },
+            redirectPhone: function() {
+                // 获取电话修改Url
+                $http.get(rootPath + '/mPhone/page', {
+                    params: {
+                        returnUrl: window.location.href
+                    }
+                }).success(function(data) {
+                    if (data.content) {
+                        var newTab=window.open('about:blank');
+                        newTab.location.href=data.content;
+                    } else {
+                        alert('系统错误');
+                    }
+                }).error(function() {
+                    alert('系统错误');
+                });
+            },
+            redirectEmail: function() {
+                // 获取邮箱修改url
+                $http.get(rootPath + '/mEmail/page', {
+                    params: {
+                        returnUrl: window.location.href
+                    }
+                }).success(function(data) {
+                    if (data.content) {
+                        var newTab=window.open('about:blank');
+                        newTab.location.href=data.content;
+
+                    } else {
+                        alert('系统错误');
+                    }
+                }).error(function() {
+                    alert('系统错误');
+                });
+            },
+            redirectSecQuestion: function() {
+                // 获取密保问题修改的url
+                $http.get(rootPath + '/mQuestion/page', {
+                    params: {
+                        returnUrl: window.location.href
+                    }
+                }).success(function(data) {
+                    if (data.content) {
+                        var newTab=window.open('about:blank');
+                        newTab.location.href=data.content;
+                    } else {
+                        alert('系统错误');
+                    }
+                }).error(function() {
+                    alert('系统错误');
+                });
+            },
+
 			isAuthed : function() {
 				return SessionService.get('authenticated');
 			},

+ 20 - 74
src/main/webapp/resources/js/usercenter/controllers/forstore/account_manager_ctrl.js

@@ -6,10 +6,10 @@ define(['app/app'], function (app) {
   app.register.controller('accountManagerCtrl',
       ['$scope', '$rootScope', 'ngTableParams', 'BaseService',
         'ShippingAddress', '$modal', 'Enterprise', 'User', 'toaster', '$http',
-        '$stateParams',
+        '$stateParams', 'AuthenticationService',
         function ($scope, $rootScope, ngTableParams, BaseService,
             ShippingAddress, $modal, Enterprise, User, toaster, $http,
-            $stateParams) {
+            $stateParams, AuthenticationService) {
           document.title = '账户管理-优软商城';
           $rootScope.active = 'account_manager';
           $scope.tab = 'base';
@@ -428,60 +428,24 @@ define(['app/app'], function (app) {
 				$modalInstance.dismiss();
 			};
 		}]);
-
-
-		$scope.updatePassword = function(){
-			var modalInstance = $modal.open({
-				animation: true,
-				templateUrl: $rootScope.rootPath + '/static/view/vendor/modal/updatePassword.html',
-				controller: 'PasswordCtrl',
-				resolve: {
-					user: function(){return angular.copy($rootScope.userInfo);}
-				}
-			});
-
-			modalInstance.result.then(function () {
-				window.location.href = "user#/accountManager/sec";
-			}, function () {
-			});
-		};
-
-          $scope.updateUserEmail = function () {
-            var modalInstance = $modal.open({
-              animation: true,
-              templateUrl: $rootScope.rootPath
-              + '/static/view/vendor/modal/updateUserEmail.html',
-              controller: 'UserEmailCtrl',
-              resolve: {
-                user: function () {
-                  return angular.copy($rootScope.userInfo);
-                }
-              }
-            });
-
-            modalInstance.result.then(function () {
-              window.location.href = "user#/accountManager/sec";
-            }, function () {
-            });
-          };
-
-          $scope.updateUserTel = function () {
-            var modalInstance = $modal.open({
-              animation: true,
-              templateUrl: $rootScope.rootPath
-              + '/static/view/vendor/modal/updateUserTel.html',
-              controller: 'UserTelCtrl',
-              resolve: {
-                user: function () {
-                  return angular.copy($rootScope.userInfo);
-                }
-              }
-            });
-
-            modalInstance.result.then(function () {
-            }, function () {
-            });
-          };
+			//修改密码:
+			$scope.updatePassword = function(){
+				AuthenticationService.redirectPassword()
+			};
+				//修改邮箱或设置邮箱;
+			  $scope.updateUserEmail = function () {
+				AuthenticationService.redirectEmail()
+			  };
+				//修改电话号码;
+			  $scope.updateUserTel = function () {
+				  AuthenticationService.redirectPhone()
+			  };
+
+
+			//修改密保问题;
+			$scope.updateUserQuestion = function () {
+				AuthenticationService.redirectSecQuestion()
+			};
 
           $scope.updateUserPay = function () {
             var modalInstance = $modal.open({
@@ -501,24 +465,6 @@ define(['app/app'], function (app) {
             });
           };
 
-          $scope.updateUserQuestion = function () {
-            var modalInstance = $modal.open({
-              animation: true,
-              templateUrl: $rootScope.rootPath
-              + '/static/view/vendor/modal/updateUserQuestion.html',
-              controller: 'UserQuestionCtrl',
-              resolve: {
-                user: function () {
-                  return angular.copy($rootScope.userInfo);
-                }
-              }
-            });
-
-            modalInstance.result.then(function () {
-              window.location.href = "user#/accountManager/sec";
-            }, function () {
-            });
-          };
 
           $scope.updateRealAuth = function () {
             var modalInstance = $modal.open({

+ 4 - 53
src/main/webapp/resources/js/vendor/controllers/forstore/vendor_account_management_ctrl.js

@@ -298,52 +298,15 @@ define(['app/app'], function(app) {
           };
 
           $scope.updatePassword = function () {
-            var modalInstance = $modal.open({
-              animation: true,
-              templateUrl: $rootScope.rootPath
-              + '/static/view/vendor/modal/updatePassword.html',
-              controller: 'PasswordCtrl',
-              resolve: {
-                user: function () {
-                  return angular.copy($rootScope.userInfo);
-                }
-              }
-            });
-            modalInstance.result.then(function () {
-              window.location.href = "vendor#/account/management/sec";
-            }, function () {
-            });
+              AuthenticationService.redirectPassword();
           };
 
           $scope.updateUserEmail = function(){
-            var modalInstance = $modal.open({
-              animation: true,
-              templateUrl: $rootScope.rootPath + '/static/view/vendor/modal/updateUserEmail.html',
-              controller: 'UserEmailCtrl',
-              resolve: {
-                user: function(){return angular.copy($rootScope.userInfo);}
-              }
-            });
-
-            modalInstance.result.then(function(){
-              window.location.href = "vendor#/account/management/sec";
-            }, function(){
-            });
+              AuthenticationService.redirectEmail();
           };
 
           $scope.updateUserTel = function(){
-            var modalInstance = $modal.open({
-              animation: true,
-              templateUrl: $rootScope.rootPath + '/static/view/vendor/modal/updateUserTel.html',
-              controller: 'UserTelCtrl',
-              resolve: {
-                user: function(){return angular.copy($rootScope.userInfo);}
-              }
-            });
-
-            modalInstance.result.then(function(){
-            }, function(){
-            });
+              AuthenticationService.redirectPhone();
           };
 
           $scope.updateUserPay = function(){
@@ -362,19 +325,7 @@ define(['app/app'], function(app) {
           };
 
           $scope.updateUserQuestion = function(){
-            var modalInstance = $modal.open({
-              animation: true,
-              templateUrl: $rootScope.rootPath + '/static/view/vendor/modal/updateUserQuestion.html',
-              controller: 'UserQuestionCtrl',
-              resolve: {
-                user: function(){return angular.copy($rootScope.userInfo);}
-              }
-            });
-
-            modalInstance.result.then(function(){
-              window.location.href = "vendor#/account/management/sec";
-            }, function(){
-            });
+              AuthenticationService.redirectSecQuestion();
           };
 
           $scope.updateRealAuth = function(){