Browse Source

添加网页自助服务的五个功能,分别为查询注册信息,找回登录账号,无法登录,找回密码,修改密码五个模块,在tpl/serve/self文件夹包含find_account.html等五个HTML文件,对应着相关js

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@1326 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
aof 10 years ago
parent
commit
7f66d5ceeb
23 changed files with 1077 additions and 103 deletions
  1. 70 3
      src/main/webapp/resources/css/serve.css
  2. 13 0
      src/main/webapp/resources/data/guide.json
  3. BIN
      src/main/webapp/resources/img/serve/4.1/step01.png
  4. BIN
      src/main/webapp/resources/img/serve/4.1/step02.png
  5. BIN
      src/main/webapp/resources/img/serve/4.1/step03.png
  6. BIN
      src/main/webapp/resources/img/serve/4.1/step04.png
  7. BIN
      src/main/webapp/resources/img/serve/excetion/quesion01.png
  8. BIN
      src/main/webapp/resources/img/serve/excetion/quesion02.png
  9. 26 2
      src/main/webapp/resources/js/common/services.js
  10. 0 22
      src/main/webapp/resources/js/index/services/Account.js
  11. 329 20
      src/main/webapp/resources/js/serve/app.js
  12. 64 2
      src/main/webapp/resources/js/serve/services/Serve.js
  13. 11 12
      src/main/webapp/resources/tpl/serve/home.html
  14. 4 4
      src/main/webapp/resources/tpl/serve/self.html
  15. 62 0
      src/main/webapp/resources/tpl/serve/self/account_excetion.html
  16. 17 0
      src/main/webapp/resources/tpl/serve/self/chooseEnterprises.html
  17. 18 0
      src/main/webapp/resources/tpl/serve/self/chooseForgetMethod.html
  18. 17 0
      src/main/webapp/resources/tpl/serve/self/chooseUserInfo.html
  19. 60 0
      src/main/webapp/resources/tpl/serve/self/find_account.html
  20. 114 38
      src/main/webapp/resources/tpl/serve/self/forget_pwd1.html
  21. 63 0
      src/main/webapp/resources/tpl/serve/self/forget_pwd4.html
  22. 120 0
      src/main/webapp/resources/tpl/serve/self/modify_pwd.html
  23. 89 0
      src/main/webapp/resources/tpl/serve/self/schedule_search.html

+ 70 - 3
src/main/webapp/resources/css/serve.css

@@ -536,7 +536,6 @@ a.none:hover {
 	width: 1170px;
 	margin: 0 auto;
 	padding: 15px;
-	overflow: auto;
 }
 
 .body:before,.body:after {
@@ -875,7 +874,10 @@ a.none:hover {
 	width: 930px;
 	height: 695px;
 }
-
+.modify_slide{
+	width: 930px;
+	height: 430px;
+}
 .slide .carousel-inner .item {
 	width: 930px;
 	height: 695px;
@@ -883,6 +885,7 @@ a.none:hover {
 
 .slide .carousel-inner .item img{
 	margin: 0 auto;
+	width:97%;
 }
 
 .slide .carousel-control {
@@ -929,7 +932,9 @@ a.none:hover {
 .slide .carousel-caption {
 	bottom: 30px;
 }
-
+.modify_slide .carousel-caption {
+	bottom: 1px;
+}
 /*footer*/
 #footer {
 	color: #f1f1f1;
@@ -1243,3 +1248,65 @@ a.none:hover {
   	-o-transform: rotateX(0);
   	transform: rotateX(0);
 }
+
+.modifyType-info{
+	font-size:15px;
+	padding:15px 0 15px 0px; 
+	margin-left:10px;
+}
+.notice-info {
+  position: absolute;
+  top: 40px;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  font-size:20px;
+  font-family:"Times New Roman",Georgia,Serif;
+  background: url("../img/all/info.png") no-repeat;
+  background-color: #fff;
+  padding: 160px 120px;
+}
+.type-info {
+	font-size: 14px;
+	line-height: 25px;
+	margin: 30px 15px 15px 35px;
+}
+.search-success {
+	font-size: 20px;
+	margin: 15px 0 10px 0;
+	color: rgb(124, 119, 155);
+}
+.search-info {
+	font-size: 15px;
+	color: black;
+<!-- margin: 0 0 0 20px; -->	
+}
+#log_content {
+	font-size: 15px;
+	text-align: center;
+	width: 380px;
+	height: 550px;
+	background: rgb(247, 214, 246);
+	position: absolute;
+	top: 50px;
+	right: 60px;
+}
+
+label {
+	color: green;
+	padding-left: 20px;
+	padding-right: 25px;
+}
+.account-error {
+	font-size: 15px;
+	color: black;
+	margin: 60px 0 0 60px;
+}
+
+#account_row {
+	font-size: 12px;
+	text-align: center;
+	position: relative;
+	top: 20px;
+	left: 32px;
+}

+ 13 - 0
src/main/webapp/resources/data/guide.json

@@ -179,5 +179,18 @@
 }, {
 	"image" : "static/img/guide/3.11/2.png",
 	"text" : "客户应付发票-搜索"
+} ],
+"4.1":[ {
+	"image":"static/img/serve/4.1/step01.png",
+	"text":"修改密码-第一步"
+}, {
+	"image":"static/img/serve/4.1/step02.png",
+	"text":"修改密码-第二步"
+}, {
+	"image":"static/img/serve/4.1/step03.png",
+	"text":"修改密码-第三步"
+}, {
+	"image":"static/img/serve/4.1/step04.png",
+	"text":"修改密码-第四步"
 } ]
 }

BIN
src/main/webapp/resources/img/serve/4.1/step01.png


BIN
src/main/webapp/resources/img/serve/4.1/step02.png


BIN
src/main/webapp/resources/img/serve/4.1/step03.png


BIN
src/main/webapp/resources/img/serve/4.1/step04.png


BIN
src/main/webapp/resources/img/serve/excetion/quesion01.png


BIN
src/main/webapp/resources/img/serve/excetion/quesion02.png


+ 26 - 2
src/main/webapp/resources/js/common/services.js

@@ -1,4 +1,4 @@
-define([ 'angular', 'toaster' ], function(angular) {
+define([ 'angular', 'toaster'], function(angular) {
 	'use strict';
 	angular.module('common.services', ['toaster' ]).factory('SessionService', function() {
 		return {
@@ -108,7 +108,9 @@ define([ 'angular', 'toaster' ], function(angular) {
 						'Content-Type' : 'application/x-www-form-urlencoded; charset=UTF-8'
 					}
 				};
-				var login = $http.post(rootPath + "/j_spring_security_check", payload, config);
+				console.log("payload"+payload);
+				console.log("rootPath"+rootPath)
+					var login = $http.post(rootPath + "/j_spring_security_check", payload, config);
 				login.success(cacheSession);
 				return login;
 			},
@@ -219,6 +221,28 @@ define([ 'angular', 'toaster' ], function(angular) {
 			customer: $resource('vendor/customer/:id', {}),
 			vendor: $resource('vendor/:id', {})
 		};
+	}]).factory('AccountUser', ['$resource', function($resource) {
+		return $resource('account/user/:uu', {}, {
+			update: {
+				method: 'PUT'
+			},
+			checkPassword: {
+				url: 'account/user/checkPassword',
+				method: 'GET'
+			},
+			updatePassword: {
+				url: 'account/user/updatePassword',
+				method: 'POST'
+			},
+			telEnable: {
+				url: 'account/user/telEnable',
+				method: 'GET'
+			},
+			emailEnable: {
+				url: 'account/user/emailEnable',
+				method: 'GET'
+			}
+		});
 	}]).factory('FeedBackService',['$resource', 'BaseService', function($resource, BaseService){
 		var rootPath = BaseService.getRootPath();
 		return $resource('serve/question', {}, {

+ 0 - 22
src/main/webapp/resources/js/index/services/Account.js

@@ -10,28 +10,6 @@ define([ 'ngResource' ], function() {
 				method: 'POST'
 			}
 		});
-	}]).factory('AccountUser', ['$resource', function($resource) {
-		return $resource('account/user/:uu', {}, {
-			update: {
-				method: 'PUT'
-			},
-			checkPassword: {
-				url: 'account/user/checkPassword',
-				method: 'GET'
-			},
-			updatePassword: {
-				url: 'account/user/updatePassword',
-				method: 'POST'
-			},
-			telEnable: {
-				url: 'account/user/telEnable',
-				method: 'GET'
-			},
-			emailEnable: {
-				url: 'account/user/emailEnable',
-				method: 'GET'
-			}
-		});
 	}]).factory('ErpLog', ['$resource', function($resource) {
 		return $resource('log/erp', {});
 	}]).factory('UsageLog', ['$resource', function($resource) {

+ 329 - 20
src/main/webapp/resources/js/serve/app.js

@@ -56,6 +56,12 @@ define([ 'toaster', 'ngTable', 'common/services', 'ui.router', 'ui.bootstrap', '
 			url: "/bind_business",
 			templateUrl: "static/tpl/serve/self/bind_enterprise.html",
 			controller: 'EditUserCtrl'
+		}).state('question.detail1.1', {
+			url : "/detail1.1",
+			templateUrl : "static/tpl/serve/question/1.1.html"
+		}).state('question.detail1.2', {
+			url : "/detail1.2",
+			templateUrl : "static/tpl/serve/question/1.2.html"
 		}).state('contact', {
 			url : "/contact",
 			templateUrl : "static/tpl/serve/contact.html",
@@ -85,19 +91,36 @@ define([ 'toaster', 'ngTable', 'common/services', 'ui.router', 'ui.bootstrap', '
 		}).state('self', {
 			url : "/self",
 			templateUrl : "static/tpl/serve/self.html"				
-		}).state('self.forget_pwd1', {			//  #/self/forget_pwd1
+		}).state('self.forget_pwd1', {			
 			url : "/forget_pwd1",
 			templateUrl : "static/tpl/serve/self/forget_pwd1.html",
 			controller: 'ForgetPwd1Ctrl'
+		}).state('self.forget_pwd4', {
+			url : "/forget_pwd4/:userUu/:checkCode",
+			templateUrl : "static/tpl/serve/self/forget_pwd4.html",
+			controller: 'ForgetPwd4Ctrl'
 		}).state('self.forget_pwd2', {
 			url : "/forget_pwd2/:uu/:checkcode",
 			templateUrl : "static/tpl/serve/self/forget_pwd2.html",
 			controller: 'ForgetPwd2Ctrl'
-		}).state('self.registerSearch', {
-			url : "/registerSearch",
-			templateUrl : "static/tpl/serve/self/registerSearch.html"
+		}).state('self.modify_pwd',{
+			url:"/modify_pwd/:id",
+			templateUrl:"static/tpl/serve/self/modify_pwd.html",
+			controller: 'ModifyPwdCtrl'
+		}).state('self.find_account',{
+			url:"/find_account",
+			templateUrl:"static/tpl/serve/self/find_account.html",
+			controller:"Find_AccountCtrl"
+		}).state('self.account_excetion',{
+			url:"/account_excetion",
+			templateUrl:"static/tpl/serve/self/account_excetion.html"
+		}).state('self.schedule_search',{
+			url:"/schedule_search",
+			templateUrl:"static/tpl/serve/self/schedule_search.html",
+			controller:'Schedule_SearchCtrl'
 		});
 	}]);
+	
 	app.controller('MyCtrl', ['$scope', '$rootScope', function($scope, $rootScope) {
 		$rootScope.$on('$locationChangeSuccess', function(evt, newUrl) {
 			var routeState = newUrl.substr(newUrl.indexOf('#/') + 2);
@@ -135,11 +158,68 @@ define([ 'toaster', 'ngTable', 'common/services', 'ui.router', 'ui.bootstrap', '
 			$scope.slides = data;
 		});
 	}]);
-	app.controller('ForgetPwd1Ctrl', ['$scope', 'toaster', 'Password', function($scope, toaster, Password){
+	app.controller('ModifyPwdCtrl', ['$scope', '$stateParams','Guide', function($scope, $stateParams,Guide){
+		Guide.get($stateParams.id).then(function(data){
+			$scope.slides = data;
+		});
+	}]);
+	/*
+	 * 忘记密码
+	 */
+	app.controller('ForgetPwd1Ctrl', ['$scope', '$modal','toaster', 'Password','Sendmsg', function($scope,$modal,toaster, Password,Sendmsg){
 		$scope.loading = false;
-		$scope.getUserInfo = function(){
+		$scope.btnState = false;
+		$scope.clicks = 0;
+		var storage = window.localStorage;
+		//邮箱定时器
+		var setTimeDown = function(value) { 
+			if(value > 0) {
+				$scope.mailState = true;
+				setTimeout(function() { 
+					$scope.$apply(function(){
+						storage.setItem("mailTimes",$scope.mailTimes);
+						$scope.mailTimes --;
+						value --;
+						setTimeDown (value);
+					});
+				}, 1000);
+			}else{
+				$scope.mailState = false;
+				$scope.sendSuccess = false;
+			}
+		};
+		//手机验证码定时器
+		var setBtnTimeDown = function(value) { 
+			if(value > 0) {
+				$scope.btnState = true;
+				setTimeout(function() { 
+					$scope.$apply(function(){
+						storage.setItem("btnTimes",$scope.btnTimes);
+						$scope.btnTimes --;
+						value --;
+						setBtnTimeDown (value);
+					});
+				}, 1000);
+			}else{
+				$scope.btnState = false;
+			}
+		};
+		if(storage.btnTimes > 1){
+			$scope.btnTimes = storage.btnTimes;
+			setBtnTimeDown(storage.btnTimes)
+		}else{
+			storage.removeItem("btnTimes");
+		}
+		if(storage.mailTimes > 1){
+			$scope.mailTimes = storage.mailTimes;
+			setTimeDown(storage.mailTimes)
+		}else{
+			storage.removeItem("mailTimes");
+		}
+		
+		$scope.getUserInfo = function(userName){
 			$scope.loading = true;
-			Password.getUserInfo($scope.userName).then(function(data){
+			Password.getUserInfo(userName).then(function(data){
 				$scope.userInfo = data;
 				$scope.userInfoError = false;
 				$scope.loading = false;
@@ -150,21 +230,13 @@ define([ 'toaster', 'ngTable', 'common/services', 'ui.router', 'ui.bootstrap', '
 			});
 		};
 		
-		var setTimeDown = function(value) { 
-			if(value > 0) {
-				setTimeout(function() { 
-					value --;
-					setTimeDown(value);
-				}, 1000);
-			}
-		};
-		
 		$scope.sendEmail = function(type){
 			$scope.loading = true;
 			Password.sendEmail($scope.userInfo.userUU, type).then(function(data){
+				$scope.mailTimes = 60;
 				$scope.sendSuccess = true;
-				$scope.waitingTime = 60;
-				setTimeDown($scope.waitingTime);
+				storage.setItem("sendSuccess",$scope.sendSuccess);
+				setTimeDown($scope.mailTimes);
 				$scope.loading = false;
 			}, function(data) {
 				$scope.sendFaild = true;
@@ -172,7 +244,100 @@ define([ 'toaster', 'ngTable', 'common/services', 'ui.router', 'ui.bootstrap', '
 			});
 		};
 		
+		$scope.chooseMethod = function(){
+			$modal.open({
+				templateUrl: 'static/tpl/serve/self/chooseForgetMethod.html',
+				controller: 'ChooseForgetCtrl',
+				size: 'sm',
+			}).result.then(function(chooseMethed){
+				if(chooseMethed == "chooseMail"){
+					$scope.chooseMail = chooseMethed;
+					$scope.choosePhone = false;
+				}else{
+					$scope.choosePhone = chooseMethed;
+					$scope.chooseMail = false;
+				}
+			});
+		}
+		
+		$scope.checkPhoneCode = function(phoneCode){
+			$scope.msgInfoError = false;
+			Sendmsg.checkPhoneCode(phoneCode,$scope.userUu).then(function(data){
+				$scope.result = data.result;
+				$scope.userUu = data.userUu;
+				$scope.checkCode = data.checkCode;
+				if($scope.result){
+					$scope.msgInfoError2 = false;
+				}else{
+					$scope.msgInfoError2 = data;
+				}
+			},function(data){
+				$scope.msgInfoError2 = data;
+			})
+		}
+		
+		$scope.modifyPwd = function(userUu,checkCode){
+			$scope.resetSuccess = true;
+			setTimeout(function() {//延迟3秒执行
+				window.location.href = "http://localhost:8080/platform-b2b/serve#/self/forget_pwd4/"+userUu+"/"+checkCode;
+			}, 3000);
+		}
+		
+		$scope.getPhoneCode = function(userPhone){
+			var timeInfo = 10;
+			$scope.clicks ++;
+			$scope.timeInfo = timeInfo;
+			if($scope.clicks >= 5){
+				$scope.loading = true;
+				$scope.msgInfoSuccess = false;
+				$scope.msgInfoError = false;
+				setTimeout(function() {//延迟5秒执行
+					window.location.href = "http://localhost:8080/platform-b2b/serve";
+				}, 5000);
+			}else{
+				$scope.loading = false;
+				Sendmsg.sendMsgInfos(userPhone).then(function(data){
+					$scope.msgInfoSuccess = true;
+					$scope.sendMsg = data;
+					$scope.userUu = data.userUu;
+					$scope.btnTimes = 60;
+					setBtnTimeDown($scope.btnTimes);
+					$scope.msgInfoError = false;
+				},function(data){
+					$scope.msgInfoError = data;
+					$scope.sendMsg = false;
+					$scope.msgInfoSuccess = false;
+				})
+			}
+		}
+	}]);
+	/*
+	 * 手机验证码修改密码
+	 */
+	app.controller('ForgetPwd4Ctrl',['$scope', 'toaster', '$stateParams', 'Password',function($scope, toaster, $stateParams, Password){
+		$scope.uu = $stateParams.userUu;
+		$scope.checking = true;
+		$scope.all = {};
+		$scope.checkCode = $stateParams.checkCode;
+		$scope.resetPwd = function(){
+			$scope.loading = true;
+			Password.resetPwd($scope.uu, $scope.all.password,$scope.checkCode).then(function(data){
+				$scope.loading = false;
+				$scope.resetSuccess = true;
+				$scope.resetError = false;
+				setTimeout(function() {//延迟3秒执行
+					window.location.href = "http://www.ubtob.com";
+				}, 2000);
+			}, function(data){
+				$scope.loading = false;
+				$scope.resetSuccess = false;
+				$scope.resetError = true;
+			});
+		};
 	}]);
+	/*
+	 * 邮箱修改密码
+	 */
 	app.controller('ForgetPwd2Ctrl', ['$scope', 'toaster', '$stateParams', 'Password', function($scope, toaster, $stateParams, Password){
 		$scope.uu = $stateParams.uu;
 		$scope.checkcode = $stateParams.checkcode;
@@ -193,8 +358,6 @@ define([ 'toaster', 'ngTable', 'common/services', 'ui.router', 'ui.bootstrap', '
 		
 		$scope.reset = function(){
 			$scope.loading = true;
-			console.log($scope);
-			console.log($scope.password);
 			Password.reset($scope.uu, $scope.all.password, $scope.newCheckcode).then(function(data){
 				$scope.loading = false;
 				$scope.resetSuccess = true;
@@ -451,6 +614,152 @@ define([ 'toaster', 'ngTable', 'common/services', 'ui.router', 'ui.bootstrap', '
 		}
 	}]);
 	
+	/*
+	 * 选择找回密码方式
+	 */
+	app.controller('ChooseForgetCtrl',['$scope','$modalInstance',function($scope,$modalInstance){
+		$scope.cancel = function() {
+			$modalInstance.close();
+		};
+		$scope.login = function(chooseMethod) {
+			$modalInstance.close(chooseMethod);
+		};
+	}])
+	/*
+	 * 查找企业注册进度
+	 */
+	app.controller('Schedule_SearchCtrl',['$scope','$modal','toaster','$stateParams','Password',function($scope,$modal,toaster, $stateParams, Password){
+		$scope.searchrResult = false;
+		$scope.getEnterpriseInfos = function(){
+			$scope.loading = true;
+			Password.getEnterpriseInfos($scope.userTel).then(function(data){
+				if(data!=null && data.length>1){
+					$modal.open({
+						templateUrl: 'static/tpl/serve/self/chooseEnterprises.html',
+						controller: 'ChooseEnterpriseCtrl',
+						size: 'sm',
+						resolve: {
+							enterprises: function() {
+								return data;
+							}
+						}
+					}).result.then(function(enterprise){
+						var enterpriseJson=JSON.parse(enterprise)
+						$scope.enterpriseInfos = enterpriseJson;
+						if($scope.enterpriseInfos.status == "" ||$scope.enterpriseInfos.register == ""){
+							$scope.enStatus = true;
+						}else{
+							$scope.enStatus = false;
+						}
+					});
+				}else{
+					$scope.enterpriseInfos = data[0];
+					if($scope.enterpriseInfos.status == ""){
+						$scope.enStatus = true;
+					}else{
+						$scope.enStatus = false;
+					}
+				}
+				$scope.enterpriseInfoError = false;
+				$scope.searchrResult = true;
+			}, function(data) {
+				$scope.enterpriseInfoError = data;
+				$scope.enterpriseInfo = false;
+				$scope.loading = false;
+			});
+		};
+	}]);
+	
+	/*
+	 * 选择企业
+	 */
+	app.controller('ChooseEnterpriseCtrl', ['$scope', '$modalInstance', 'enterprises', function($scope, $modalInstance, enterprises){
+		$scope.choose = enterprises[enterprises.length -1].enUu;
+		angular.forEach(enterprises, function(e){
+			if(e.isLast)
+				$scope.choose = e.uu;
+		});
+		$scope.enterprises = enterprises;
+		$scope.cancel = function() {
+			$modalInstance.close();
+		};
+		$scope.login = function(choose) {
+			$modalInstance.close(choose);
+		};
+	}]);
+	/*
+	 * 选择用户
+	 */
+	app.controller('ChooseUsersCtrl', ['$scope', '$modalInstance', 'users', function($scope, $modalInstance, users){
+		$scope.choose = users[users.length -1].userUu;
+		angular.forEach(users, function(u){
+			if(u.isLast)
+				$scope.choose = u.userUu;
+		});
+		$scope.users = users;
+		$scope.cancel = function() {
+			$modalInstance.close();
+		};
+		$scope.login = function(choose) {
+			$modalInstance.close(choose);
+		};
+	}]);
+	/*
+	 * 找回账号
+	 */
+	app.controller('Find_AccountCtrl',['$scope','$modal','toaster','$stateParams','Password',function($scope, $modal,toaster, $stateParams, Password){
+		$scope.searchrResult = false;
+		$scope.sendEmail = function(type){
+			$scope.loading = true;
+			Password.sendEmail($scope.enterpriseInfo.userUu, type).then(function(data){
+				$scope.sendSuccess = true;
+				$scope.waitingTime = 60;
+				setTimeDown($scope.waitingTime);
+				$scope.loading = false;
+			}, function(data) {
+				$scope.sendFaild = true;
+				$scope.loading = false;
+			});
+		};
+		
+		$scope.getEnterpriseInfo = function(){
+			$scope.loading = true;
+			Password.getEnterpriseInfo($scope.bussinessCode).then(function(data){
+				if(data.length>1){
+					$modal.open({
+						templateUrl: 'static/tpl/serve/self/chooseUserInfo.html',
+						controller: 'ChooseUsersCtrl',
+						size: 'sm',
+						resolve: {
+							users: function() {
+								return data;
+							}
+						}
+					}).result.then(function(enUser){
+						var enUserJson=JSON.parse(enUser)
+						$scope.enUser = enUserJson;
+					});
+				}else{
+					$scope.enUser = data[0];
+				}
+				$scope.enterpriseInfoError = false;
+				$scope.searchrResult = true;
+			}, function(data) {
+				$scope.enterpriseInfoError = data;
+				$scope.enterpriseInfo = false;
+				$scope.loading = false;
+			});
+		};
+	}])
+
+	/**
+	 * 用户存在提示显示输入框
+	 */
+	app.directive('ngDisplay',['$parse',function($parse){
+		return {
+			
+		}
+	}])
 	/**
 	 * 搜索框,回车触发
 	 */

+ 64 - 2
src/main/webapp/resources/js/serve/services/Serve.js

@@ -28,6 +28,33 @@ define([ 'angular', 'ngResource' ], function() {
 				return defer.promise;
 			}
 		};
+	}]).factory('Sendmsg',['$http','$q',function($http,$q){
+		return {
+			sendMsgInfos : function(userPhone){
+				var defer = $q.defer();
+				$http.get('serve/send/msg',{
+					params: {userPhone: userPhone},
+					cache:true
+				}).success(function(data){
+					defer.resolve(data)
+				}).error(function(data,status,headers,config){
+					defer.reject(data);
+				})
+				return defer.promise;
+			},
+			checkPhoneCode : function(phoneCode,userUu) {
+				var defer = $q.defer();
+				$http.get('serve/send/msgCheck',{
+					params: {phoneCode: phoneCode,userUu:userUu},
+					cache:true
+				}).success(function(data){
+					defer.resolve(data)
+				}).error(function(data,status,headers,config){
+					defer.reject(data);
+				})
+				return defer.promise;
+			}
+		}
 	}]).factory('Password', ['$http', '$q', function($http, $q) {
 		return {
 			getUserInfo : function(userName) {
@@ -42,6 +69,30 @@ define([ 'angular', 'ngResource' ], function() {
 				});
 				return defer.promise;
 			},
+			getEnterpriseInfo : function(bussinessCode) {
+				var defer = $q.defer();
+				$http.get('serve/search/info', {
+					params: {bussinessCode: bussinessCode},
+					cache : true
+				}).success(function(data) {
+					defer.resolve(data);
+				}).error(function(data, status, headers, config) {
+					defer.reject(data);
+				});
+				return defer.promise;
+			},
+			getEnterpriseInfos : function(userTel) {
+				var defer = $q.defer();
+				$http.get('serve/schedule/info', {
+					params: {userTel: userTel},
+					cache : true
+				}).success(function(data) {
+					defer.resolve(data);
+				}).error(function(data, status, headers, config) {
+					defer.reject(data);
+				});
+				return defer.promise;
+			},
 			sendEmail: function(userUU, type) {
 				var defer = $q.defer();
 				$http.get('signup/forget/sendEmail', {
@@ -53,10 +104,21 @@ define([ 'angular', 'ngResource' ], function() {
 				});
 				return defer.promise;
 			},
-			check: function(userUU, checkcode) {
+			check: function(phoneCode, userUu) {
 				var defer = $q.defer();
 				$http.get('signup/forget/check', {
-					params: {checkcode: checkcode, userUU: userUU}
+					params: {phoneCode: phoneCode, userUu: userUu}
+				}).success(function(data) {
+					defer.resolve(data);
+				}).error(function(data, status, headers, config) {
+					defer.reject(data);
+				});
+				return defer.promise;
+			},
+			resetPwd: function(userUU, newPwd,checkCode){
+				var defer = $q.defer();
+				$http.get('serve/forget/resetPwd', {
+					params: {userUU: userUU, newPwd: newPwd, checkCode: checkCode}
 				}).success(function(data) {
 					defer.resolve(data);
 				}).error(function(data, status, headers, config) {

+ 11 - 12
src/main/webapp/resources/tpl/serve/home.html

@@ -9,17 +9,16 @@
 			</div>
 			<div class="self-list">
 				<ul class="list-unstyled list-inline">
-					<li><a href="#/self/registerSearch"> <span class="icon-circle"> <i
+						<li><a href="#/self/schedule_search"> <span class="icon-circle"> <i
 								class="fa fa-search"></i>
 						</span> <span class="title"> 注册进度查询 </span>
 					</a></li>
-					<li><a href=""> <span class="icon-circle"> <i
+					<li><a href="#/self/find_account"> <span class="icon-circle"> <i
 								class="fa fa-user"></i>
 						</span> <span class="title"> 找回登录账号 </span></a></li>
-					<li><a href=""> <span class="icon-circle"> <i
+					<li><a href="#/self/account_excetion"> <span class="icon-circle"> <i
 								class="fa fa-warning"></i>
 						</span> <span class="title"> 账号无法登录 </span></a></li>
-
 					<li>
 						<a href="#/self/forget_pwd1"> 
 							<span class="icon-circle"> 
@@ -31,7 +30,7 @@
 						</a>
 					</li>
 					
-					<li><a href=""> <span class="icon-circle"> <i
+					<li><a href="#/self/modify_pwd/4.1"> <span class="icon-circle"> <i
 								class="fa fa-unlock-alt"></i>
 						</span> <span class="title"> 修改密码 </span></a></li>
 				</ul>
@@ -63,13 +62,13 @@
 				</div>
 			</div>
 			<ul class="list-unstyled simple-list">
-				<li><a class="text-light" href="">如何注册成为平台用户?</a></li>
-				<li><a class="text-light" href="">手机验证时提示号码已被占用,怎么办?</a></li>
-				<li><a class="text-light" href="">邮箱地址已被绑定,怎么办?</a></li>
-				<li><a class="text-light" href="">如何查询注册进度?</a></li>
-				<li><a class="text-light" href="">注册成功后,如何添加企业用户?</a></li>
-				<li><a class="text-light" href="">注册成功后,如何修改企业名称?</a></li>
-				<li><a class="text-light" href="">如何开通SAAS服务?</a></li>
+				<li><a class="text-light" href="#/new/2.1">如何注册成为平台用户?</a></li>
+				<li><a class="text-light" href="#/question/detail1.2">手机验证时提示号码已被占用,怎么办?</a></li>
+				<li><a class="text-light" href="#/question/detail1.2">邮箱地址已被绑定,怎么办?</a></li>
+				<li><a class="text-light" href="#/question/detail1.2">如何查询注册进度?</a></li>
+				<li><a class="text-light" href="#/question/detail1.2">注册成功后,如何添加企业用户?</a></li>
+				<li><a class="text-light" href="#/question/detail1.2">注册成功后,如何修改企业名称?</a></li>
+				<li><a class="text-light" href="#/question/detail1.2">如何开通SAAS服务?</a></li>
 			</ul>
 		</div>
 	</div>

+ 4 - 4
src/main/webapp/resources/tpl/serve/self.html

@@ -4,11 +4,11 @@
 			<i></i>自助服务
 		</div>
 		<ul class="list-unstyled">
-			<li ui-sref-active="active"><a ui-sref="self.registerSearch">注册进度查询</a></li>
-			<li ui-sref-active="active"><a ui-sref="sale">找回登录账号</a></li>
-			<li ui-sref-active="active"><a ui-sref="sale">账号无法登录</a></li>
+			<li ui-sref-active="active"><a ui-sref="self.schedule_search">注册进度查询</a></li>
+			<li ui-sref-active="active"><a ui-sref="self.find_account">找回登录账号</a></li>
+			<li ui-sref-active="active"><a ui-sref="self.account_excetion">账号无法登录</a></li>
 			<li ui-sref-active="active"><a ui-sref="self.forget_pwd1">忘记密码</a></li>
-			<li ui-sref-active="active"><a ui-sref="sale">修改密码</a></li>
+			<li ui-sref-active="active"><a ui-sref="self.modify_pwd({id:'4.1'})">修改密码</a></li>
 		</ul>
 	</div>
 	<div class="left-nav">

+ 62 - 0
src/main/webapp/resources/tpl/serve/self/account_excetion.html

@@ -0,0 +1,62 @@
+<style>
+.account-top {
+	font-size: 22px;
+	margin: 0 0 10px 0;
+}
+
+.account-conment {
+	margin-left: 10px;
+}
+
+li {
+	list-style-type: none;
+}
+
+.a_extetion {
+	font-size: 20px;
+	color: rgb(18, 190, 40);
+}
+
+.account-footer {
+	position: absolute;
+	bottom: 15px;
+	right: 350px;
+	font-size:14px;
+}
+span{
+  letter-spacing:1px;
+  padding: 0 0 0 10px;
+}
+.excetion_case{
+	font-size: 20px;
+}
+</style>
+<div class="row fl14">
+	<div class="col-xs-12">
+		<div class="headerline">
+			<div class="content">账号无法登录</div>
+		</div>
+		<div style="min-height: 800px;background:rgb(249, 236, 236)">
+			<ul>
+				<li>
+					<div class="account-top">账号无法登录?别担心教你两招</div>
+				</li>
+				<div class="excetion_case">
+					<i class="fa fa-hand-o-right fa-2x" style="color:green"></i><span><span style="color:green;font-weight:blod">情况一:</span>账号正确,密码错误?</span>
+				</div>
+				<div>
+					<div style="margin:5px 0 0 0"><img src="static/img/serve/excetion/quesion02.png"/></div>
+				</div>
+				<div class="excetion_case">
+				<i class="fa fa-hand-o-right fa-2x" style="color:green"></i><span><span style="color:green;font-weight:blod">情况二:</span>忘记账号,登录提示账号错误?</span>
+				</div>
+				<div style="margin:10px 0 0 5px">
+					<div style="margin:5px 0 0 0"><img src="static/img/serve/excetion/quesion01.png"/></div>
+				</div>
+			</ul>
+			<!--  <div class="account-footer">
+				优软科技,专注服务品质,自助服务,服务热线:0755-26994749 
+			</div>-->
+		</div>
+	</div>
+</div>

+ 17 - 0
src/main/webapp/resources/tpl/serve/self/chooseEnterprises.html

@@ -0,0 +1,17 @@
+<div class="modal-header">
+	<h3 class="modal-title">您的账号绑定了下列企业</h3>
+</div>
+<div class="modal-body">
+	<div class="radio" ng-repeat="enterprise in enterprises">
+		<label> <input type="radio" 
+				ng-model="$parent.choose" value="{{enterprise}}" checked>{{enterprise.enName}}
+		</label>
+	</div>
+	<p class="text-info">
+		<i class="fa fa-fw fa-warning"></i>请选择其中一个企业显示用户信息
+	</p>
+</div>
+<div class="modal-footer">
+	<button class="btn btn-primary" ng-click="login(choose)" type="button">确定</button>
+	<button class="btn btn-default" ng-click="cancel()" type="button">取消</button>
+</div>

+ 18 - 0
src/main/webapp/resources/tpl/serve/self/chooseForgetMethod.html

@@ -0,0 +1,18 @@
+<div class="modal-header">
+	<h3 class="modal-title">忘记密码,请选择找回密码方式</h3>
+</div>
+<div class="modal-body">
+	<div class="radio" > 
+		<label><input type="radio" name="choose" value="chooseMail" ng-model="chooseMethod" checked>通过输入登陆账号,发邮件找回密码( 建议您使用该方法 )</label>
+	</div>
+	<div class="radio" > 
+		<label><input type="radio" name="choose" value="choosePhone" ng-model="chooseMethod" checked>通过向您的注册手机号发送验证码,找回密码</label>
+	</div>
+	<p class="text-info">
+		<i class="fa fa-fw fa-warning"></i>请选择其中一个找回您的密码
+	</p>
+</div>
+<div class="modal-footer">
+	<button class="btn btn-primary" ng-click = "login(chooseMethod)" type="button">确定</button>
+	<button class="btn btn-default" ng-click = "cancel()" type="button">取消</button>
+</div>

+ 17 - 0
src/main/webapp/resources/tpl/serve/self/chooseUserInfo.html

@@ -0,0 +1,17 @@
+<div class="modal-header">
+	<h3 class="modal-title">您的企业账号关联了如下用户信息</h3>
+</div>
+<div class="modal-body">
+	<div class="radio" ng-repeat="user in users">
+		<label> <input type="radio" 
+				ng-model="$parent.choose" value="{{user}}" checked>姓名:&nbsp;{{user.userNames}}
+		</label>
+	</div>
+	<p class="text-info">
+		<i class="fa fa-fw fa-warning"></i>请选择其中一个用户显示信息
+	</p>
+</div>
+<div class="modal-footer">
+	<button class="btn btn-primary" ng-click="login(choose)" type="button">确定</button>
+	<button class="btn btn-default" ng-click="cancel()" type="button">取消</button>
+</div>

+ 60 - 0
src/main/webapp/resources/tpl/serve/self/find_account.html

@@ -0,0 +1,60 @@
+<div class="row fl14">
+	<div class="col-xs-12">
+		<div class="headerline">
+			<div class="content">找回登录账号</div>
+		</div>
+	</div>
+	<div style="min-height: 500px">
+		<div class="type-info">请输入您的 营业执照号(营业执照号为唯一标识)</div>
+		<div class="row form-inline">
+			<div class="form-group col-xs-12 col-xs-offset-1">
+				<input type="search" class="form-control input-sm" ng-model="bussinessCode"
+					style="width: 260px;" ng-search="getEnterpriseInfo()"
+					placeholder="请输入您的 营业执照号">
+				<button class="btn btn-info btn-sm" ng-disabled="!bussinessCode"
+					ng-click="getEnterpriseInfo()">确认</button>
+			</div>
+		</div>
+		
+		<div ng-if="enterpriseInfoError">
+			<div class="row text-inverse col-xs-10 col-xs-offset-1">
+				错误:{{::enterpriseInfoError}},请重新输入</div>
+			<hr>
+			<div class="account-error">
+				<div>系统无法找到相关信息,建议您拨打人工服务,查找详因。</div>
+				<div style="font-size: 20px; margin: 10px;">
+					<span style="color: red">电话:</span>0755-26994808
+				</div>
+			</div>
+		</div>
+		
+		<div class="row " ng-if="enUser">
+			<div class="col-xs-10 col-xs-offset-1">
+				<div class="search-success">您的企业用户如下,请确认用户信息 :</div>
+				<div class="search-info">
+					<div>
+						 <label style="color: green">注册人 :</label>{{enUser.userName}} 
+					</div>
+					<div>
+						<label style="color: green">个人UU号:</label>{{enUser.userUu}}
+					</div>
+					<div>
+						<label style="color: green">登陆邮箱:</label>{{enUser.userMail}}
+					</div>
+					<div>若信息无误,您可以直接戳这里发送邮件找回密码</div>
+					<div class="row" style="margin: 15px 0;">
+						<a ng-disabled="sendSuccess"
+							class="btn btn-success btn-xs col-xs-5 "
+							ng-click="sendEmail()">发送验证邮件<br> <span class="f12">({{enUser.userMail}})</span>
+						</a>
+						<div class="col-xs-5">
+							<label ng-if="sendSuccess" class="text-success">已发送成功,请注意查收邮件</label>
+							<label ng-if="sendFaild" class="text-danger">发送失败</label>
+						</div>
+					</div>
+				</div>
+			</div>
+		</div>
+		
+	</div>
+</div>

+ 114 - 38
src/main/webapp/resources/tpl/serve/self/forget_pwd1.html

@@ -4,8 +4,31 @@
   	line-height: 25px;
   	margin: 10px 0px;
 }
-
-</style>
+.choosePhone{
+	margin:20px;
+}
+.checkPhoneCode{
+	margin-top:12px;
+}
+.msgInfoSuccess{
+	font-size:15px;
+	margin: 5px 0 0 128px;
+	color: rgb(3, 107, 3);;
+}
+.msgInfoError{
+	font-size:15px;
+	margin: 5px 0 0 128px;
+	color:red;
+}
+.msgInfo_result{
+	margin: 30px 0 0 18px;
+	color: rgb(3, 107, 3);
+    font-size: 20px;
+}
+.resultSuccess{
+	margin: 15px 0 0 20px;
+}
+</style>
 <div class="loading" ng-class="{'in': loading}">
 	<i></i>
 </div>
@@ -13,50 +36,103 @@
 	<div class="col-xs-12">
 		<div class="headerline">
 			<div class="content">忘记密码</div>
+		</div>
+		<div class="forget_choose">
+			<label>请单击右边的选择按钮,您可选择找回密码方式</label>
+			 <button class="btn btn-info btn-lg" ng-click="chooseMethod()">找回密码</button>
 		</div>
-		<div style="min-height: 500px;">
-			<ul>
-				<li>
-					<div class="type-info">请输入您的 个人登录账号(个人UU号 或 手机号 或 邮箱地址)</div>
-					<div class="row form-inline">
-						<div class="form-group col-xs-6 col-xs-offset-1">
-							<input type="search" class="form-control input-sm" ng-model="userName" style="width: 260px;" ng-search="getUserInfo()" placeholder="个人UU号或手机号或邮箱地址">
-							<button class="btn btn-info btn-sm" ng-disabled="!userName" ng-click="getUserInfo()">确认</button>
+		<div style="min-height: 500px;">
+			<div ng-if="choosePhone" class = "choosePhone">
+				<div >
+					<div class="row form-inline">
+						<div class="form-group col-xs-8 ">
+							<label>注册手机号:</label><input type="text" class="form-control" name="phone" tyle="width: 260px;"
+								ng-model="user.userPhone" placeholder="请输入您的手机号" ng-pattern= "/^1[3|4|5|8][0-9]\d{4,8}$/" required>
+							<button class="btn btn-info btn-default" id="button1"
+								ng-disabled="!user.userPhone || btnState || loading" ng-model="user.userPhone"
+								ng-click="getPhoneCode(user.userPhone)">
+									<span ng-show="!btnTimes">获取手机验证码</span>
+									<span ng-if="btnTimes">{{btnTimes}}秒后重新获取</span></button>
+							<div  class="msgInfoError" ng-if="loading">
+								<i class="fa fa-fw fa-warning"></i><span>抱歉,您今天获取验证码次数过多,为了保证您的账号安全,5秒后将自动返回主页</span>
+							</div>
+							<div class="msgInfoSuccess" ng-if="msgInfoSuccess">
+								<i class="fa fa-fw fa-check-square"></i><span>恭喜!获取验证码成功!请查看手机信息</span>
+							</div>
+							<div class="msgInfoError" ng-if="msgInfoError">
+								<i class="fa fa-fw fa-warning"></i><span>抱歉!获取验证码失败!请检查您输入的手机号码是否有效</span>
+							</div>
+							<div class="checkPhoneCode">
+								<label>手机验证码:</label><input type="search" class="form-control" tyle="width: 260px;"
+									ng-model="user.phoneCode" placeholder="请输入您的手机号验证码"
+									ng-search="checkPhoneCode(user.phoneCode)">
+								<button class="btn btn-info btn-default"
+									ng-disabled="!user.phoneCode" ng-click="checkPhoneCode(user.phoneCode)">确定</button>
+							</div>
+							<div ng-if="msgInfoError2" class="msgInfoError">
+								<i class="fa fa-fw fa-warning"></i><span>抱歉!输入验证码错误,请重新输入!!</span>
+							</div>
+							<div ng-if="result" class="msgInfoSuccess">
+								<i class="fa fa-fw fa-check-square"></i>&nbsp;<span>恭喜!输入验证码验证成功!</span>
+							</div>
 						</div>
 					</div>
-					<div class="row text-inverse" ng-if="userInfoError">
-						<div class="col-xs-10 col-xs-offset-1">
-							错误:{{::userInfoError}},请重新输入
+						<div ng-if="result" class="resultSuccess">
+							<button class="btn btn-info btn-default" ng-model="userUu"  ng-click="modifyPwd(userUu,checkCode)">修改密码{{}}</button>
+							<span style="color: rgb(142, 120, 120); margin: 0 0 0 10px;">您已通过验证,点击按钮修改密码</span>
+							<div ng-show="resetSuccess" class="msgInfo_result">
+								<i class="fa fa-2x fa-thumbs-o-up"></i><span>恭喜您,验证密码成功,正在跳转修改密码界面,请稍后...</span>
+								<i class="fa fa-spinner fa-pulse"></i>
+							</div>
 						</div>
-					</div>
-					<div class="row" ng-if="userInfo">
-						<div class="col-xs-10 col-xs-offset-1">
-							<br>
-							<div>请确认您的用户信息:</div>
-							<div><label>企业名称:</label>{{userInfo.enName}}</div>
-							<div><label>个人姓名:</label>{{userInfo.userName}}</div>
-							<div>如确定这是您的账号,请点击发送验证邮件。</div>
-							<div class="row" style="margin: 12px 0;">
-								<a ng-disabled="sendSuccess" class="btn btn-success btn-xs col-xs-5 col-xs-offset-1" ng-click="sendEmail()">发送验证邮件<br>
-									<span class="f12">({{::userInfo.userEmail}})</span>
-								</a>
-								<div class="col-xs-5">
-									<label ng-if="sendSuccess" class="text-success">已发送成功,请注意查收邮件</label>
-			      					<label ng-if="sendFaild" class="text-danger">发送失败</label>
-								</div>
+				</div>
+			</div>
+			<div ng-if="chooseMail">
+				<ul>
+					<li>
+						<div class="type-info">请输入您的 个人登录账号(个人UU号 或 手机号 或 邮箱地址)</div>
+						
+						<div class="row form-inline">
+							<div class="form-group col-xs-6 col-xs-offset-1">
+								<input type="search" class="form-control input-sm" ng-model="user.name" style="width: 260px;" ng-search="getUserInfo(user.name)" placeholder="个人UU号或手机号或邮箱地址">
+								<button class="btn btn-info btn-sm" ng-disabled="!user.name" ng-click="getUserInfo(user.name)">确认</button>
 							</div>
-							<div class="row">
-								<div class="col-xs-10 text-muted">
-									如您自己的邮箱无法接收邮件,也可以
-									 <a ng-disabled="sendSuccess" class="btn btn-default btn-xs" ng-click="sendEmail('admin')">发送验证邮件到管理员邮箱</a> 
-									 ({{::userInfo.adminEmail}})
+						</div>
+						<div class="row text-inverse" ng-if="userInfoError">
+							<div class="col-xs-10 col-xs-offset-1">
+								错误:{{::userInfoError}},请重新输入
+							</div>
+						</div>
+						<div class="row" ng-if="userInfo">
+							<div class="col-xs-10 col-xs-offset-1">
+								<br>
+								<div>请确认您的用户信息:</div>
+								<div><label>企业名称:</label>{{userInfo.enName}}</div>
+								<div><label>个人姓名:</label>{{userInfo.userName}}</div>
+								<div>如确定这是您的账号,请点击发送验证邮件。</div>
+								<div class="row" style="margin: 12px 0;">
+									<a ng-disabled="mailState || sendSuccess" class="btn btn-success btn-xs col-xs-5 col-xs-offset-1" ng-click="sendEmail()">发送验证邮件<br>
+										<span  ng-show="!mailTimes" class="f12">({{userInfo.userEmail}})</span>
+										<span ng-if="mailTimes">({{mailTimes}}秒后重新发送邮件)</span>
+									</a>
+									<div class="col-xs-5">
+										<label ng-if="sendSuccess" class="text-success">已发送成功,请注意查收邮件</label>
+				      					<label ng-if="sendFaild" class="text-danger">发送失败</label>
+									</div>
 								</div>
+								<div class="row">
+									<div class="col-xs-10 text-muted">
+										如您自己的邮箱无法接收邮件,也可以
+										 <a ng-disabled="sendSuccess" class="btn btn-default btn-xs" ng-click="sendEmail('admin')">发送验证邮件到管理员邮箱</a> 
+										 ({{::userInfo.adminEmail}})
+									</div>
+								</div>
+								<div>我们将会发送验证链接到您的邮箱,点击邮件中的验证链接即可重设密码。</div>
 							</div>
-							<div>我们将会发送验证链接到您的邮箱,点击邮件中的验证链接即可重设密码。</div>
 						</div>
-					</div>
-				</li>
-			</ul>
+					</li>
+				</ul>
+			</div>
 		</div>
 	</div>
 </div>

+ 63 - 0
src/main/webapp/resources/tpl/serve/self/forget_pwd4.html

@@ -0,0 +1,63 @@
+<style>
+.type-info {
+	font-size: 14px;
+  	line-height: 25px;
+  	margin: 10px 0px;
+}
+
+</style>
+<div class="loading" ng-class="{'in': loading}">
+	<i></i>
+</div>
+<div class="row f14">
+	<div class="col-xs-12">
+		<div class="headerline">
+			<div class="content">重设密码</div>
+		</div>
+		<div style="min-height: 500px;">
+			<ul>
+				<li>
+					<div class="type-info">手机号验证并重设密码</div>
+					<div class="row">
+						<div class="col-xs-10 col-xs-offset-1">
+							<br>
+					  		<div>请立即设置新密码:</div>
+					  		<form name="myForm">
+						  		<div class="form-group row">
+							    	<label for="password" class="col-xs-3 control-label text-right">请输入密码:</label>
+								    <div class="col-xs-4">
+								      	<input required ng-model="all.password" type="password" class="form-control" name="password" 
+								      		placeholder="6~20位字母、数字、符号" ng-pattern="/^([\w~!@#$%^&\*\(\)-_\+=,.;\[\]{}\<\>]){6,20}$/">
+								    </div>
+								    <div class="col-xs-5">
+								    	<i ng-if="all.password" class="fa fa-check-circle-o text-success"></i>
+							    	</div>
+							    </div>
+							    <div class="form-group row">
+								    <label for="password2" class="col-xs-3 control-label text-right">请确认密码:</label>
+								    <div class="col-xs-4">
+								      	<input required ng-model="all.password2" type="password" class="form-control" name="password2" 
+								      		placeholder="重复密码">
+								    </div>
+								    <div class="col-xs-5">
+								    	<i ng-show="all.password2 && all.password2 == all.password" class="fa fa-check-circle-o text-success"></i>
+							    	</div>
+								</div>
+								<div class="form-group">
+							    	<div class="col-xs-3 col-xs-offset-3">
+							      		<button ng-disabled="!all.password || all.password2 != all.password" ng-click="resetPwd()" class="btn btn-success btn-sm btn-block">确定
+							      		</button>
+							    	</div>
+							    	<div class="col-xs-4">
+							    		<label ng-show="resetSuccess" class="text-success">设置成功,正在跳转至登陆界面...</label>
+							      		<label ng-show="resetError" class="text-danger">设置失败</label>
+							    	</div>
+						  		</div>
+						  	</form>
+					  	</div>
+					</div>
+				</li>
+			</ul>
+		</div>
+	</div>
+</div>

+ 120 - 0
src/main/webapp/resources/tpl/serve/self/modify_pwd.html

@@ -0,0 +1,120 @@
+<style>
+#modify_a {
+	font-size: 18px;
+	color: red;
+}
+
+#modify_allinfo {
+	margin: 50px;
+}
+
+#modify_allinfo .modify_maininfo>div {
+	width: 100px;
+	height: 70px;
+	border: 3px solid #3F9B30;
+	border-top-left-radius: 8px;
+	border-top-right-radius: 8px;
+	border-bottom-left-radius: 8px;
+	border-bottom-right-radius: 8px;
+	float: left;
+	font-size: 18px;
+	text-align: center;
+	color: green;
+}
+.modify_hr{
+	color:rgb(255, 155, 0);
+	border: 1px solid;
+	margin:0 0 0 20px;
+}
+.modify_introduce{
+	font-weight:bold;
+	font-size:18px;
+	margin:10px 0 0 20px;
+}
+.modify_introContent{
+	margin:5px 0 0 20px;
+}
+.modify_span {
+	margin-top: 30px;
+	border-top-left-radius: 0;
+	border-top-right-radius: 0;
+	border-bottom-left-radius: 0;
+	border-bottom-right-radius: 0;
+}
+
+.image-info img {
+	margin: 30px 0 0 30px;
+}
+.modify_maininfo a{
+	text-decoration:none;
+}
+.modify_info2{
+	font-weight:bold;
+	font-size:17px;
+	margin:5px 0 8px 10px;
+}
+.step1{
+	color:red;
+}
+a:visited {color: green}
+a:hover {color: red}
+a:active {color: blue}
+</style>
+<div class="row f14">
+	<div class="col-xs-12">
+		<div class="headerline">
+			<div class="content">修改密码</div>
+		</div>
+		<div style="min-height: 500px">
+			<div ng-if="!userInfo">
+				<div class="notice-info">
+				
+				<i class="fa fa-warning" style="margin:0 5px 0 0;color:rgb(234, 209, 37)"></i>未登录用户不能修改密码,请您先<a href="sign#" id="modify_a">登录</a>
+				</div>
+			</div>
+			<div ng-if="userInfo">
+				<div class="modify_nav" style="width: 98%; height: 95px">
+					<hr class="modify_hr" />
+					<div class="modify_introduce">修改密码步骤介绍:</div>
+					<div class="modify_introContent">
+						<ul>
+							<li>第一步:请您找到界面的导航栏,找到"商务平台",单击"商务平台",等待界面跳转;</li>
+							<li>第二步:请您找到界面的导航栏,单击"账号设置",等待界面跳转;</li>
+							<li>第三步:在账号设置界面,请您找到左边的信息栏中的"用户信息",单击"用户信息",会显示我的个人资料界面;</li>
+							<li>第四步:在个人资料修改界面,找到最右边的修改密码,根据提示去修改密码;</li>
+						</ul>
+					</div>
+				</div>
+				<div id="modify_allinfo" style="width: 100%; height: 50px">
+					<div class="modify_maininfo">
+						<div class="modify_frist"><a href="./" target="_blank">第一步:商务平台</a></div>
+						<div class="modify_span"
+							style="width: 100px; height: 2px; border: 2px solid rgb(176, 173, 173);"></div>
+						<div class="modify_top"><a href="./#/account/" target="_blank">第二步:账号设置</a></div>
+						<div class="modify_span"
+							style="width: 100px; height: 2px; border: 2px solid rgb(176, 173, 173);"></div>
+						<div class="modify_midddle"><a href="./#/account/user" target="_blank">第三步:用户信息</a></div>
+						<div class="modify_span"
+							style="width: 100px; height: 2px; border: 2px solid rgb(176, 173, 173);"></div>
+						<div class="modify_bottom"><a href="./#/account/user" target="_blank">第四步:修改密码</a></div>
+					</div>
+				</div>
+				<div class="guide-container" >
+					<div class="slide">
+						<carousel interval="10000"> <slide
+							ng-repeat="slide in slides" active="slide.active"> <img
+							ng-src="{{slide.image}}">
+						<div class="carousel-caption">
+							<div class="text-default f14" ng-bind="::slide.text"></div>
+						</div>
+						</slide>
+						</carousel>
+					</div>
+				</div>
+			</div>
+		</div>
+	</div>
+</div>
+<script type="text/javascript">
+	
+</script>

+ 89 - 0
src/main/webapp/resources/tpl/serve/self/schedule_search.html

@@ -0,0 +1,89 @@
+<div class="row fl14">
+	<div class="col-xs-12">
+		<div class="headerline">
+			<div class="content">注册进度查询</div>
+		</div>
+	</div>
+	<div style="min-height: 600px">
+		<div class="type-info">请输入您的 注册信息(管理员手机号或邮箱地址)</div>
+		<div class="row form-inline">
+			<div class="form-group col-xs-12 col-xs-offset-1">
+				<input type="search" class="form-control input-sm"
+					ng-model="userTel" style="width: 260px;"
+					ng-search="getEnterpriseInfos()" placeholder="管理员手机号或邮箱地址">
+				<button class="btn btn-info btn-sm" ng-disabled="!userTel"
+					ng-click="getEnterpriseInfos()">确认</button>
+			</div>
+		</div>
+		<div class="row text-inverse" ng-if="enterpriseInfoError">
+			<div class="col-xs-10 col-xs-offset-1">
+				错误:{{::enterpriseInfoError}},请重新输入</div>
+		</div>
+		<div ng-if="enterpriseInfos">
+			<div id="log_content">
+				<div style="font-size: 18px; margin: 10px">注册信息</div>
+				<label>注册时间</label> <label>状态</label><label>结果</label>
+				<div class="row" id="account_row">
+					<div class="col-sm-10 ">
+						<ul class="list-group ">
+						<div ng-show="enStatus" style="font-size:18px;color:rgb(124, 119, 155)">您的企业信息未能找到注册信息</div>
+							<li class="list-group-item text-center text-bold"
+								ng-repeat="registerReport in enterpriseInfos.register">
+								<div class="row">
+									<div class="col-sm-5 ">{{registerReport.date |
+										date:"yyyy-MM-dd HH:mm"}}</div>
+									<div class="col-sm-4 ">{{registerReport.remark}}</div>
+									<div class="col-sm-3 ">{{registerReport.result}}</div>
+								</div>
+							</li>
+						</ul>
+					</div>
+				</div>
+			</div>
+		</div>
+		<div ng-if="!enterpriseInfoError">
+			<div class="row " ng-if="enterpriseInfos.status == 313">
+				<div class="col-xs-10 col-xs-offset-1">
+					<div class="search-success">恭喜您,注册已完成,请确认企业信息 :</div>
+					<div class="search-info">
+						<div>
+							<label style="color: green">企业名称:</label>{{enterpriseInfos.enName}}
+						</div>
+						<div>
+							<label style="color: green">企业UU:</label>{{enterpriseInfos.enUu}}
+						</div>
+						<span style="display: block; padding-top: 5px;">若信息无误,您可以直接戳这里直接</span>
+						<div style="margin: 13px 13px;"
+							ng-if="enterpriseInfos.adminPassword.length != 0">
+							<a href="./signin"
+								target="_blank" class="btn btn-success btn-lg col-xs-4 ">登陆</a>
+						</div>
+						<div style="margin: 13px 13px;"
+							ng-if="enterpriseInfos.adminPassword.length == 0">
+							<div style="font-size:18px">您的管理员密码还未设置,请查看邮件激活密码</div>
+							<a href="./signup#/step3/:uu/:checkcode"
+							   target="_blank" class="btn btn-success btn-lg col-xs-4 ">重新激活密码</a>
+						</div>
+					</div>
+				</div>
+			</div>
+			<div class="row " ng-if="enterpriseInfos.status!=313 && enterpriseInfos">
+				<div class="col-xs-10 col-xs-offset-1">
+					<div class="search-success">您的注册未完成</div>
+					<div class="search-info">
+						<div>
+							<label style="color: green">企业名称:</label>{{enterpriseInfos.enName}}
+						</div>
+						<div>
+							<label style="color: green">个人UU号:</label>{{enterpriseInfos.enUu}}
+						</div>
+						<div>系统无法找到相关信息,建议您拨打人工服务,查找详因。</div>
+						<div style="font-size: 20px; margin: 10px;">
+							<span style="color: red">电话:</span>0755-26994808
+						</div>
+					</div>
+				</div>
+			</div>
+		</div>
+	</div>
+</div>