Pārlūkot izejas kodu

修改资料,修改密码,更换手机号

zhengjinyi 4 gadi atpakaļ
vecāks
revīzija
d21cbc2ee7
32 mainītis faili ar 739 papildinājumiem un 773 dzēšanām
  1. 16 7
      src/main/resources/static/css/account/forget.css
  2. 1 1
      src/main/resources/static/css/account/register.css
  3. 1 1
      src/main/resources/static/css/base/base.h5.css
  4. 11 41
      src/main/resources/static/css/user-center/operation/form.css
  5. 3 2
      src/main/resources/static/css/user-center/setting/information.css
  6. 17 15
      src/main/resources/static/css/user-center/setting/password.css
  7. 17 13
      src/main/resources/static/css/user-center/setting/phone.css
  8. 3 8
      src/main/resources/static/js/account/forget.js
  9. 12 0
      src/main/resources/static/js/common/serviceapi/user.service.js
  10. 1 1
      src/main/resources/static/js/common/serviceapi/utils.service.js
  11. 3 2
      src/main/resources/static/js/user-center/dashboard.js
  12. 31 159
      src/main/resources/static/js/user-center/operation/form.js
  13. 1 0
      src/main/resources/static/js/user-center/operation/list.js
  14. 1 0
      src/main/resources/static/js/user-center/order/list.js
  15. 3 2
      src/main/resources/static/js/user-center/repair/list.js
  16. 82 23
      src/main/resources/static/js/user-center/setting/information.js
  17. 10 15
      src/main/resources/static/js/user-center/setting/password.js
  18. 58 164
      src/main/resources/static/js/user-center/setting/phone.js
  19. 75 68
      src/main/resources/templates/account/forget.html
  20. 9 9
      src/main/resources/templates/account/register-club.html
  21. 1 1
      src/main/resources/templates/account/register-supplier.html
  22. 1 1
      src/main/resources/templates/user-center/address/list.html
  23. 92 86
      src/main/resources/templates/user-center/dashboard.html
  24. 29 14
      src/main/resources/templates/user-center/operation/form.html
  25. 1 1
      src/main/resources/templates/user-center/operation/list.html
  26. 1 1
      src/main/resources/templates/user-center/order/detail.html
  27. 1 1
      src/main/resources/templates/user-center/repair/detail.html
  28. 1 1
      src/main/resources/templates/user-center/repair/form-user.html
  29. 1 1
      src/main/resources/templates/user-center/repair/list.html
  30. 133 131
      src/main/resources/templates/user-center/setting/information.html
  31. 92 2
      src/main/resources/templates/user-center/setting/password.html
  32. 31 2
      src/main/resources/templates/user-center/setting/phone.html

+ 16 - 7
src/main/resources/static/css/account/forget.css

@@ -10,6 +10,11 @@ footer .footTop{display:none;}
 .signAccount{width:1184px;margin:20px auto;min-height: 458px;background-color: #FFFFFF;}
 .signAccount .title{height:42px;line-height:42px;font-size:16px;color:#22272e;text-align:left;background-color: #F5F5F5;}
 .forget-form{width:498px;margin:0 auto;padding: 20px 0;}
+.right-header{width: 100%;height: 88px;box-sizing: border-box;float: left;padding:24px 316px;background-color: #FFF;}
+.right-header .tabs{width: 336px;height: 88px;margin: 0 auto;}
+.right-header .header-tabs{width: 168px;height: 38px;background-color: #f0f3f7;border-radius: 2px 0px 0px 2px;;line-height: 38px;font-size: 14px;text-align: center;color: #627386;float: left;cursor: pointer;}
+.right-header .header-tabs.current{background-color: #e15616;color: #FFFFFF;}
+.container{width: 100%;height: auto;box-sizing: border-box;float: left;background-color: #FFF;}
 
 
 }
@@ -18,11 +23,15 @@ footer .footTop{display:none;}
 * 移动端
 */
 @media screen and (max-width:768px){
-body{width:100%;height:100%;background-color: #ffffff;}
-footer{display:none}
-.signAccount .title{height:8.6vw;line-height:8.6vw;font-size:3.4vw;color:#22272e;text-align:left;padding: 0 4vw;}
-.forget-form{padding:0;}
-.signAccount form{width:93.4vw;margin:0 auto;}
-.subLine{margin-top:2vw;float: left;width: 100%;}
-
+    body{width:100%;height:100%;background-color: #ffffff;}
+    footer{display:none}
+    .signAccount .title{height:8.6vw;line-height:8.6vw;font-size:3.4vw;color:#22272e;text-align:left;padding: 0 4vw;}
+    .forget-form{padding:0;}
+    .signAccount form{width:93.4vw;margin:0 auto;}
+    .subLine{margin-top:2vw;float: left;width: 100%;}
+    .right-header{width: 100%;height: 11.2vw;box-sizing: border-box;float: left;padding:0;background-color: #FFF;}
+    .right-header .tabs{width: 100%;height: 11.2vw;margin: 0 auto;}
+    .right-header .header-tabs{width:50%;height: 11.2vw;background-color: #f0f3f7;line-height: 11.2vw;text-align: center;color: #627386;float: left;cursor: pointer;}
+    .right-header .header-tabs.current{background-color: #e15616;color: #FFFFFF;}
+    .container{width: 100%;height: auto;box-sizing: border-box;float: left;background-color: #FFF;}
 }

+ 1 - 1
src/main/resources/static/css/account/register.css

@@ -38,7 +38,7 @@ footer .footTop{display:none;}
 .formLine .formLine-file .file-zizhi{background: url("/img/account/icon-zizhi.png") no-repeat;}
 .formLine .form-upload-image{width: 128px;height: 90px;position: relative;}
 .formLine .form-upload-image .upload-img{width: 128px;height: 90px;display: block;}
-.formLine .form-upload-image .icon{width: 20px;height: 20px;display: block;position: absolute;left: 0;top: 0;cursor: pointer;}
+.formLine .form-upload-image .icon{width: 20px;height: 20px;display: block;position: absolute;right: 0;top: 0;cursor: pointer;}
 .formLine .form-upload-image .icon:before{width: 20px;height: 20px;background-position: -116px -140px;}
 
 .signAccount{width:498px;margin:0 auto;min-height: 900px;}

+ 1 - 1
src/main/resources/static/css/base/base.h5.css

@@ -22,7 +22,7 @@
 .jqSelect:before{content:'\276F';font-weight:normal;position:absolute;right:3vw;top:0;transform:rotate(90deg);font-size:3.6vw;color:#4A4F58}
 .mFixed{position:fixed;bottom:0;left:0;width:100%;height:100%;margin:0 auto;z-index:50;overflow-y:scroll;background-color:#FFF;-webkit-overflow-scrolling:touch}
 /*短信图形验证弹窗统一样式*/
-.content-model{width: 100%;height: 100%;background: rgba(0,0,0,.3);position: fixed;top: 0;left: 0;display: none;}
+.content-model{width: 100%;height: 100%;background: rgba(0,0,0,.3);position: fixed;top: 0;left: 0;display: none;z-index: 999;}
 .content-model.active{display: block;}
 .content-model .model-main{width: 63.8vw;height: 63.5vw;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);border-radius: 0.2vw;background: #FFFFFF;-webkit-box-shadow: 0 0.2vw 0.6vw rgba(0,0,0,0.2);box-shadow: 0 0.2vw 0.6vw rgba(0,0,0,0.2);}
 .content-model .model-title{width: 100%;box-sizing: border-box;height: 10.9vw;padding: 0 2.7vw;border: solid 1px #efefef;position: relative;}

+ 11 - 41
src/main/resources/static/css/user-center/operation/form.css

@@ -21,49 +21,19 @@ li{list-style:none}
     .navLayout .navList .con a.on{color:#e15616;background-color:#ffe6dc}
     /*个人中心右侧*/
     .navLayout .right{float:right;width:968px}
-    .order-header{width: 100%;height: 78px;box-sizing: border-box;padding: 20px;background-color: #FFF;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
+    .order-header{width: 100%;height: 78px;box-sizing: border-box;padding: 20px;background-color: #FFF;}
     .order-header .header-bt {width: 100%;height: 38px;float: left;}
-    .order-header .header-bt .header-search{width: 560px;height: 38px;float: left;}
-    .order-header .header-bt .search{height: 38px;float: left;margin-right: 15px;}
-    .order-header .header-bt .search .label{display: inline-block;float: left;height: 38px;line-height:38px;font-size: 12px;color: #627386;margin-right: 15px;}
-    .order-header .header-bt .search .search-input{width: 210px;box-sizing: border-box;padding: 0 10px;font-size: 12px;line-height: 36px;border: 1px solid #b8bfca;border-radius: 2px; }
+    .order-header .header-bt .header-title{width: 824px;height: 38px;float: left;line-height: 38px;font-size: 24px;color: #22272e;text-align: center;}
     .order-header .header-bt .header-button{height: 38px;float: right;}
-    .order-header .header-bt .header-button .btn-serch{width: 90px;height: 36px;display: block;background-color: #e15616;border-radius: 2px;border: solid 1px #e15616;font-size: 14px;color: #FFFFFF;line-height: 36px;text-align: center;float: left;margin: 0 5px;}
-    .order-header .header-bt .header-button .btn-add{width: 128px;height: 36px;display: block;background-color: #ffe6dc;border-radius: 2px;border: solid 1px #e15616;font-size: 14px;color: #e15616;line-height: 36px;text-align: center;float: left;margin: 0 5px;}
-
-    .container{width: 100%;height:auto;box-sizing: border-box;margin-top: 16px;}
-    .container .empty{box-sizing:border-box;padding:100px 0;text-align:center;color:#4A4F58;line-height:30px;font-size:16px;background-color:#FFF;}
-    .container .empty img{width:180px;height:180px;}
-    .container .empty a{color:#E15616;}
-    .container .section{width: 100%;height:auto;padding-bottom: 16px;box-sizing: border-box;padding:0 16px 16px 16px;background-color: #FFFFFF;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
-    .container .section .title{width: 100%;height: 54px;border-bottom: 1px solid #e2e7ef;}
-    .container .section .title .td{height: 54px;font-size: 14px;color:#627386;float: left;line-height:54px;text-align: left;}
-    .container .section .title .td.td-1{width:10%;}
-    .container .section .title .td.td-2{width:12%;text-align: center;}
-    .container .section .title .td.td-3{width:10%;text-align: center;}
-    .container .section .title .td.td-4{width:9%;text-align: center;}
-    .container .section .title .td.td-5{width:9%;text-align: center;}
-    .container .section .title .td.td-6{width:12%;text-align: center;}
-    .container .section .title .td.td-7{width:11%;text-align: center;}
-    .container .section .title .td.td-8{width:11%;text-align: center;}
-    .container .section .title .td.td-9{width:16%;text-align: center;}
-    .container .section .content{width: 100%;height: auto;padding: 16px 0 0 0;}
-    .container .section .list{width: 100%;height: 64px;}
-    .container .section .list .td{height: 64px;font-size: 14px;color:#22272e;float: left;line-height:50px;text-align: left;box-sizing: border-box;padding: 7px 0;border-bottom: 1px solid #e2e7ef;}
-    .container .section .list .td p{line-height: 25px;width: 100%;float: left;}
-    .container .section .list .td.td-1{width:10%;overflow: hidden;text-overflow:ellipsis;white-space: nowrap;}
-    .container .section .list .td.td-2{width:12%;text-align: center;}
-    .container .section .list .td.td-3{width:10%;text-align: center;}
-    .container .section .list .td.td-4{width:9%;text-align: center;}
-    .container .section .list .td.td-5{width:9%;text-align: center;}
-    .container .section .list .td.td-6{width:12%;text-align: center;overflow: hidden;text-overflow:ellipsis;white-space: nowrap;}
-    .container .section .list .td.td-7{width:11%;text-align: center;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;overflow: hidden;line-height: 25px;}
-    .container .section .list .td.td-8{width:11%;text-align: center;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;overflow: hidden;line-height: 25px;}
-    .container .section .list .td.td-9{width:16%;text-align: center;}
-    .container .section .list .td.td-9{width:16%;text-align: center;}
-    .container .section .list .td.td-9 a{margin: 0 5px;}
-    .container .section .list .td.td-9 .upd{color: #1890f9;}
-    .container .section .list .td.td-9 .del{color: #f94b4b;}
+    .order-header .header-bt .header-button .btn-add{width: 90px;height: 36px;display: block;background-color: #ffe6dc;border-radius: 2px;border: solid 1px #e15616;font-size: 14px;color: #e15616;line-height: 36px;text-align: center;float: left;margin: 0 5px;}
+    .container{width: 100%;height:526px;box-sizing: border-box;background-color: #FFF;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);padding:32px 90px;}
+    .container .form{float: left;width:220px;}
+    .container .formLine{float: left;width: 100%;}
+    .container .text{width: 100%;height: auto;float: left;}
+    .container .text p{font-size: 14px;color: #22272e;text-align: left;line-height: 44px;}
+    .container .button{width: 100%;height: 50px;float: left;margin-top: 16px;}
+    .container .button a{display: block;width: 232px;height: 50px;background-color: #e15616;box-shadow: 0px 3px 6px 0px rgba(249, 75, 75, 0.17);border-radius: 2px;margin: 0 auto;text-align: center;line-height: 50px;font-size: 14px;color: #FFFFFF;}
+    .container .button a.disabled{background-color: #999999;}
 }
 
 /**

+ 3 - 2
src/main/resources/static/css/user-center/setting/information.css

@@ -6,6 +6,7 @@ li{list-style:none}
 @media screen and (min-width:768px){
 .container{width: 100%;min-height:900px;box-sizing: border-box;padding: 20px 236px;background-color: #FFF;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
 .container .title{width: 100%;height: 64px;line-height: 64px;text-align: left;font-size: 24px;color: #22272e;float: left;}
+.container .formLine p span.mm{color: #22272e;}
 .subLine{margin-top: 20px;float: left;}
 .subLine .btn-upgrade {cursor: pointer;display: block;width: 232px;height: 50px;line-height: 50px;background-color: #e15616;border-radius: 2px;text-align: center;font-size: 18px;color: #FFF;float: left;margin-right: 15px;}
 .subLine .btn-upgrade.none{border: 1px solid #E15616;background-color: #ffe6dc;box-shadow: 0px 3px 6px 0px rgba(249, 75, 75, 0.17);color: #e15616;}
@@ -27,10 +28,10 @@ li{list-style:none}
 .formLine .formLine-file .file-zizhi{background: url("/img/account/icon-zizhi.png") no-repeat;}
 .formLine .form-upload-image{width: 128px;height: 90px;position: relative;}
 .formLine .form-upload-image .upload-img{width: 128px;height: 90px;display: block;}
-.formLine .form-upload-image .icon{width: 20px;height: 20px;display: block;position: absolute;left: 0;top: 0;cursor: pointer;}
+.formLine .form-upload-image .icon{width: 20px;height: 20px;display: block;position: absolute;right: 0;top: 0;cursor: pointer;}
 .formLine .form-upload-image .icon:before{width: 20px;height: 20px;background-position: -116px -140px;}
 .formLine .business{height:auto;position:relative}
-.formLine .business input[type="text"] {width: 350px;display: block;float: left;margin-right: 15px;}
+.formLine .business input[type="text"] {width: 324px;display: block;float: left;margin-right: 15px;}
 .formLine .business a {display: block;float: left; width: 92px;height: 32px;line-height: 34px;font-size: 14px;color: #e15616;background-color: #ffe6dc;border-radius: 2px;border: solid 1px #e15616;text-align: center;}
 
 

+ 17 - 15
src/main/resources/static/css/user-center/setting/password.css

@@ -1,18 +1,20 @@
 @charset "utf-8";
 li{list-style:none}
 /**
- *找回密码
+ *重置密码
  * PC端
  */
 @media screen and (min-width:768px){
-body{background-color: #F5F5F5;}
-footer .footTop{display:none;}
-.signAccount{width:1184px;margin:20px auto;min-height: 458px;background-color: #FFFFFF;}
-.signAccount .title{height:42px;line-height:42px;font-size:16px;color:#22272e;text-align:left;background-color: #F5F5F5;}
-.forget-form{width:498px;margin:0 auto;padding: 20px 0;}
-.container{width: 100%;min-height:500px;box-sizing: border-box;padding: 16px;background-color: #FFF;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
-
-
+    body{background-color: #F5F5F5;}
+    footer .footTop{display:none;}
+    .navLayout{min-height: 705px;}
+    .signAccount{width:1184px;margin:20px auto;min-height: 458px;background-color: #FFFFFF;}
+    .signAccount .title{height:42px;line-height:42px;font-size:16px;color:#22272e;text-align:left;background-color: #F5F5F5;}
+    .forget-form{width:498px;margin:0 auto;padding: 20px 0;}
+    .right-header{width: 100%;height: 88px;box-sizing: border-box;float: left;padding:24px 316px;background-color: #FFF;}
+    .right-header .header-tabs{width: 168px;height: 38px;background-color: #f0f3f7;border-radius: 2px 0px 0px 2px;;line-height: 38px;font-size: 14px;text-align: center;color: #627386;float: left;cursor: pointer;}
+    .right-header .header-tabs.current{background-color: #e15616;color: #FFFFFF;}
+    .container{width: 100%;min-height:485px;box-sizing: border-box;padding: 16px 236px;background-color: #FFF;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
 
 }
 
@@ -20,11 +22,11 @@ footer .footTop{display:none;}
 * 移动端
 */
 @media screen and (max-width:768px){
-body{width:100%;height:100%;background-color: #ffffff;}
-footer{display:none}
-.signAccount .title{height:8.6vw;line-height:8.6vw;font-size:3.4vw;color:#22272e;text-align:left;padding: 0 4vw;}
-.forget-form{padding:0;}
-.signAccount form{width:93.4vw;margin:0 auto;}
-.subLine{margin-top:2vw;float: left;width: 100%;}
+    body{width:100%;height:100%;background-color: #ffffff;}
+    footer{display:none}
+    .signAccount .title{height:8.6vw;line-height:8.6vw;font-size:3.4vw;color:#22272e;text-align:left;padding: 0 4vw;}
+    .forget-form{padding:0;}
+    .signAccount form{width:93.4vw;margin:0 auto;}
+    .subLine{margin-top:2vw;float: left;width: 100%;}
 
 }

+ 17 - 13
src/main/resources/static/css/user-center/setting/phone.css

@@ -5,13 +5,17 @@ li{list-style:none}
  * PC端
  */
 @media screen and (min-width:768px){
-body{background-color: #F5F5F5;}
-footer .footTop{display:none;}
-.signAccount{width:1184px;margin:20px auto;min-height: 458px;background-color: #FFFFFF;}
-.signAccount .title{height:42px;line-height:42px;font-size:16px;color:#22272e;text-align:left;background-color: #F5F5F5;}
-.forget-form{width:498px;margin:0 auto;padding: 20px 0;}
-.container{width: 100%;min-height:500px;box-sizing: border-box;padding: 16px;background-color: #FFF;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
-
+    body{background-color: #F5F5F5;}
+    footer .footTop{display:none;}
+    .navLayout{min-height: 648px;}
+    .signAccount{width:1184px;margin:20px auto;min-height: 458px;background-color: #FFFFFF;}
+    .signAccount .title{height:42px;line-height:42px;font-size:16px;color:#22272e;text-align:left;background-color: #F5F5F5;}
+    .forget-form{width:498px;margin:0 auto;padding: 20px 0;}
+    .header{width: 100%;height: 76px;box-sizing: border-box;padding: 20px 0;background-color: #FFFFFF;}
+    .header .header-p{width: 100%;height: 36px;background-image: linear-gradient(270deg,rgba(255,255,255,0.1) 0%,rgba(255,86,11,0.1) 51%,rgba(255,255,255,0.1) 100%);line-height: 36px;font-size: 14px;color: #e15616;text-align: center;}
+    .container{width: 100%;min-height:510px;box-sizing: border-box;padding:0 236px;background-color: #FFF;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
+    .container .title{width: 100%;line-height: 36px;font-size: 14px;color: #22272E;text-align: center;}
+    .container .title span{color: #f94b4b;}
 
 }
 
@@ -19,11 +23,11 @@ footer .footTop{display:none;}
 * 移动端
 */
 @media screen and (max-width:768px){
-body{width:100%;height:100%;background-color: #ffffff;}
-footer{display:none}
-.signAccount .title{height:8.6vw;line-height:8.6vw;font-size:3.4vw;color:#22272e;text-align:left;padding: 0 4vw;}
-.forget-form{padding:0;}
-.signAccount form{width:93.4vw;margin:0 auto;}
-.subLine{margin-top:2vw;float: left;width: 100%;}
+    body{width:100%;height:100%;background-color: #ffffff;}
+    footer{display:none}
+    .signAccount .title{height:8.6vw;line-height:8.6vw;font-size:3.4vw;color:#22272e;text-align:left;padding: 0 4vw;}
+    .forget-form{padding:0;}
+    .signAccount form{width:93.4vw;margin:0 auto;}
+    .subLine{margin-top:2vw;float: left;width: 100%;}
 
 }

+ 3 - 8
src/main/resources/static/js/account/forget.js

@@ -3,7 +3,7 @@ var registerPage = new Vue({
     data: {
         title:'手机找回密码',
         loginLoading: false,
-        showTabContentIndex:0,
+        tabCurrentIndex :1,
         showClass:'',
         mobilCount:0,
         mobileCodeText:'获取验证码',
@@ -207,14 +207,9 @@ var registerPage = new Vue({
             var el = event.currentTarget;
             verifyHandle(el);
         },
-        checkedEmailFn:function () {
-            this.title = "邮箱找回密码";
-            this.showTabContentIndex = 1;
+        checkedFn:function (index) {
+            this.tabCurrentIndex = index;
         },
-        checkedPhoneFn:function () {
-            this.title = "手机找回密码";
-            this.showTabContentIndex = 0;
-        }
     },
     created: function () {
 

+ 12 - 0
src/main/resources/static/js/common/serviceapi/user.service.js

@@ -76,12 +76,24 @@ var UserApi = {
                 callback(res);
             });
         },
+        AddOperationUse : function(params,callback) {//机构更新运营人员邀请码
+            Http.AjaxService({ url:'/operation/add', type:'POST', data:params, json:false})
+            .then(function(res){
+                callback(res);
+            });
+        },
         GetApplicationData : function(params,callback) {//查询机构资料信息
             Http.AjaxService({ url:'/user/club/applicationData', type:'GET', data:params, json:false})
             .then(function(res){
                 callback(res);
             });
         },
+        UpdateModifiedData: function(params,callback) {//查询机构资料信息
+            Http.AjaxService({ url:'/operation/modifiedData', type:'POST', data:params, json:false})
+            .then(function(res){
+                callback(res);
+            });
+        },
         SupplierRgister:function(params, callback){//供应商注册
             Http.AjaxService({url: '/supplier/register', type: 'post', data: params, json: false})
             .then(function (res) {

+ 1 - 1
src/main/resources/static/js/common/serviceapi/utils.service.js

@@ -128,7 +128,7 @@ var PublicApi = {
             });
         },
         clubChangeMobile:function(params,callback){//更换手机号
-            Http.AjaxService({ url:'/club/changeMobile', type:'post', data:params, json:true})
+            Http.AjaxService({ url:'/club/changeMobile', type:'post', data:params, json:false})
             .then(function(res){
                 callback(res);
             });

+ 3 - 2
src/main/resources/static/js/user-center/dashboard.js

@@ -3,7 +3,7 @@ var helpSuggestion = new Vue({
     el: "#dashboard",
     data: {
         btnLoading: false,
-        isRequset:false,
+        isRequset:true,
         userId: 0,
         degree:'',
         userInfo:{},
@@ -33,9 +33,10 @@ var helpSuggestion = new Vue({
                     _self.salesReturnCount = _self.showBadge(data.salesReturnCount);
                     _self.productList = data.homePageAdvertiseList;
                     _self.newsList = data.homePageInfoList;
-                    _self.isRequset = true;
+                    _self.isRequset = false;
                 }else{
                     CAIMEI.Alert(response.msg, '确定', false);
+                    _self.isRequset = false;
                 }
             })
         },

+ 31 - 159
src/main/resources/static/js/user-center/operation/form.js

@@ -2,180 +2,52 @@ jqMultipleShow("click", ".navList", ".tab", ".con");
 var operationPage = new Vue({
     el: "#operationPage",
     data: {
-        isRequset:true,
+        loginLoading: false,
         userId: 0,
-        StatusList:[
-            {value:0,name:'所有'},
-            {value:1,name:'已提交'},
-            {value:2,name:'已对接'},
-            {value:3,name:'已评价'},
-            {value:4,name:'已取消'}
-        ],
-        listQuery:{
-            userID:0,
-            linkName : '',
-            mobile : '',
-            pageNum:1,
-            pageSize:10
-        },
-        listRecord: 0,
-        pageInput: '1',
-        operationList:[],
-        confirmedCount:'',//待確認數量
-        paymentCount:'',//待付款
-        waitShipmentsCount:'',//待发货
-        shipmentsCount:'',//已发货
-        salesReturnCount:'',//退货款
-    },
-    filters: {
-        stateExp:function (state){ //订单状态文字和颜色
-            var stateText = '',
-                stateTextObject={
-                    2:'已绑定',
-                    1:'未绑定'
-                };
-                Object.keys(stateTextObject).forEach(function(key){
-                    if(key == state){
-                    stateText = stateTextObject[key]
-                }
-             });
-            return stateText;
-        },
-        stateTextExp:function (state){ //订单状态文字和颜色
-            var stateText = '',
-                stateTextObject={
-                    1:'有效',
-                    2:'已使用',
-                    3:'已过期'
-                };
-                Object.keys(stateTextObject).forEach(function(key){
-                    if(key == state){
-                    stateText = stateTextObject[key]
-                }
-             });
-            return stateText;
+        addForm: {
+            mobile: '',
+            linkName: '',
+            userID: '',
+            clubID: '',
+            configFlag: 2
+        },
+        rule: {
+            name: '^[a-zA-Z\\u4e00-\\u9fa5]{2,}$',
+            phone: '^\\d{6,12}$'
         }
     },
     computed: {
-        pageTotal: function () {
-            var total = Math.ceil(this.listRecord / this.listQuery.pageSize);
-            return total > 0 ? total : 1;
-        },
-        showPageBtn: function () {
-            var total = Math.ceil(this.listRecord / this.listQuery.pageSize);
-            total = total > 0 ? total : 1;
-            var index = this.listQuery.pageNum, arr = [];
-            if (total <= 6) {
-                for (var i = 1; i <= total; i++) {
-                    arr.push(i);
-                }
-                return arr;
-            }
-            if (index <= 3) return [1, 2, 3, 4, 5, 0, total];
-            if (index >= total - 2) return [1, 0, total - 4, total - 3, total - 2, total - 1, total];
-            return [1, 0, index - 2, index - 1, index, index + 1, index + 2, 0, total];
-        }
+
     },
     methods: {
-        toPagination: function (pageNum) {//点击切换分页
-            if (pageNum <= this.pageTotal) {
-                this.listQuery.pageNum = pageNum;
-                this.GetQueryListData();
-            }
-        },
-        checkNum: function () {//输入跳转分页
-            if (this.pageInput > this.pageTotal) {
-                this.pageInput = this.pageTotal;
-            } else if (this.pageInput < 1) {
-                this.pageInput = 1;
-            }
-        },
-        GetQueryListData:function(){//查询运营人员列表
+        addConfirmFn:function(data){//添加运营人员
             var _self = this;
-            UserApi.GetMyOperationList(_self.listQuery,function (response) {
-                if(response.code == 0){
-                    var data = response.data;
-                    if(data.results && data.results.length>0) {
-                        _self.operationList = [];
-                        _self.operationList = data.results;
-                        _self.listRecord = data.totalRecord;
-                    }else{
-                        _self.operationList = [];
-                        _self.operationList = data.results;
-                    }
-                    _self.isRequset = false;
+            var pass = verifyForm();
+            if (_self.loginLoading) { return false; }
+            if (!pass) {return false;}
+            _self.loginLoading = true;
+            UserApi.AddOperationUse(_self.addForm,function (response) {
+                if(response.code == 0 ){ //删除成功
+                    CAIMEI.dialog('添加成功',true,function () {
+                        window.location.href='/user/operation/list.html';
+                        _self.loginLoading = false;
+                    });
                 }else{
-                    CAIMEI.Alert(response.msg, '确定', false);
+                    CAIMEI.Alert(response.msg,'确定',false);
+                    _self.loginLoading = false;
                 }
             })
         },
-        searchOperationFn:function(){//点击搜索
-            this.GetQueryListData();
-        },
-        UpdataOperationFn:function(data){//更新邀请码
-            var _self = this;
-            CAIMEI.Modal('确定更新邀请码吗?更新后将会短信通知该运营人员','取消','确定',function () {
-                UserApi.UpdateInvitationCode({id:data.id},function (response) {
-                    if(response.code == 0 ){ //删除成功
-                        CAIMEI.dialog(response.msg,true,function () {
-                            _self.GetQueryListData();
-                        });
-                    }else{
-                        CAIMEI.Alert(response.msg,'确定',false);
-                    }
-                })
-            });
-        },
-        DeleteOperationFn:function(data){//删除运营人员
-            var _self = this;
-            CAIMEI.Modal('确定删除运营人员吗?','取消','确定',function () {
-                UserApi.DeleteMyOperation({id:data.id},function (response) {
-                    if(response.code == 0 ){ //删除成功
-                        CAIMEI.dialog('删除成功',true,function () {
-                            _self.GetQueryListData();
-                        });
-                    }else{
-                        CAIMEI.Alert(response.msg,'确定',false);
-                    }
-                })
-            });
-        },
-        ColorFn: function(state){//设置邀请码状态亚瑟
-            var stateColor = '',
-                stateColorObject={
-                    1:'#1DEDC5',
-                    2:'#1D7DED',
-                    3:'#ED1D1D'
-                };
-            Object.keys(stateColorObject).forEach(function(key){
-                if(key == state){
-                    stateColor = stateColorObject[key]
-                }
-            });
-            return stateColor;
-        },
-        statusColorFn: function(state){//设置状态颜色
-            var stateColor = '',
-                stateColorObject={
-                    1:'#333333',
-                    2:'#13ce66'
-                };
-            Object.keys(stateColorObject).forEach(function(key){
-                if(key == state){
-                    stateColor = stateColorObject[key]
-                }
-            });
-            return stateColor;
-        },
+        blurHandle: function(event) { // 失去焦点校验
+            var el = event.currentTarget;
+            verifyHandle(el);
+        }
     },
     mounted: function () {
         if(globalUserData){
-            this.userId = globalUserData.userId;
-            this.listQuery.orderState = CAIMEI.getUrlParam('state');
-            this.listQuery.userId = this.userId;
-            this.GetQueryListData();
+            this.addForm.userID = globalUserData.userId;
+            this.addForm.clubID = globalUserData.clubId;
         }
-        console.log(this.listQuery.orderState)
         $('.navLayout').find('.navList').removeClass("on").find('.con').hide().find('a').removeClass("on");
         $('.navLayout').find('.navList').eq(1).addClass("on").find('.con').show().find('a').eq(1).addClass("on");
 

+ 1 - 0
src/main/resources/static/js/user-center/operation/list.js

@@ -3,6 +3,7 @@ var operationPage = new Vue({
     el: "#operationPage",
     data: {
         isRequset:true,
+        noMore: false,
         userId: 0,
         StatusList:[
             {value:0,name:'所有'},

+ 1 - 0
src/main/resources/static/js/user-center/order/list.js

@@ -3,6 +3,7 @@ var orderPage = new Vue({
     el: "#orderPage",
     data: {
         isRequset:true,
+        noMore: false,
         userId: 0,
         orderTabBarIndex:0,
         orderTabBar: [

+ 3 - 2
src/main/resources/static/js/user-center/repair/list.js

@@ -3,6 +3,7 @@ var orderPage = new Vue({
     el: "#orderPage",
     data: {
         isRequset:true,
+        noMore: false,
         userId: 0,
         StatusList:[
             {value:0,name:'所有'},
@@ -84,7 +85,7 @@ var orderPage = new Vue({
                 this.pageInput = 1;
             }
         },
-        GetQueryListData:function(){//查询订单列表
+        GetQueryListData:function(){//查询维修列表
             var _self = this;
             RepairApi.GetFindMaintenance(_self.listQuery,function (response) {
                 if(response.code == 0){
@@ -103,7 +104,7 @@ var orderPage = new Vue({
                 }
             })
         },
-        hanldDetilsOrderFn:function(orderId){//订单详情
+        hanldDetilsOrderFn:function(orderId){//维修详情
             window.location.href='/user/order/detail.html?order='+orderId;
         },
         selectStatusFn:function(event){

+ 82 - 23
src/main/resources/static/js/user-center/setting/information.js

@@ -17,23 +17,31 @@ var informationPage = new Vue({
         codeImagePath:'https://dss2.bdstatic.com/8_V1bjqh_Q23odCf/pacific/1819816496.jpg',
         codeImageToken:'',
         imageCode:'',
+        bindMobile:'',
+        userIdentity:'',
         clubUpgradeUser: {
-            userID:'',
-            clubID:'',
-            contractEmail1:'',
-            name:'',
-            sname:'',
-            socialCreditCode:'',
-            mainPros:[],
-            businessLicenseImage:'',
-            headpic:'',
-            medicalPracticeLicenseImg:'',
-            firstClubType:'',
-            secondClubType:0,
-            department:'',
-            provinceID :'',
-            cityID : '',
-            townID : '',
+            userID:0,
+            clubID:0,					//会所ID
+            name:'',                    //机构名称
+            linkMan1:'',                //联系人
+            contractEmail1:'',          //邮箱
+            sname:'',                   //机构简称
+            provinceID:0,               //省ID
+            cityID:0,                   //市ID
+            townID:0,                   //区ID
+            address:'',                 //地址
+            socialCreditCode:'',        //营业执照编号
+            businessLicenseImage:'',    //营业执照图片
+            headpic:'',                 //门头照
+            firstClubType:'', //机构类型分类 医美:0和生美:1
+            secondClubType:'',		//机构类型二级分类 诊所:1,门诊:2,医院:3
+            department:'',			//科室
+            medicalPracticeLicenseImg:'',//资质图片
+            isAgreed:0,				//是否勾选协议
+            mainpro:[],             //主营内容
+            fax:'',                 //传真
+            contractPhone:'',       //固定电话
+            info : ''               //公司简介
         },
         userMainPros:[],
         formData:new FormData(),
@@ -85,26 +93,71 @@ var informationPage = new Vue({
                     var data = response.data;
                     _self.isRequset = false;
                     _self.clubUpgradeUser = data.club;
+                    _self.bindMobile = data.user.bindMobile;
+                    _self.userIdentity = data.user.userIdentity;
+                    _self.addressfrom.clubID = data.user.clubID;
+                    _self.addressfrom.userID = data.user.userID;
+                    _self.addressfrom.contractEmail1 = data.user.contractEmail1;
                     _self.addressfrom.provinceID = data.club.provinceID;
                     _self.addressfrom.cityID = data.club.cityID;
                     _self.addressfrom.townID = data.club.townID;
+                    _self.userMainPros = _self.setNewMainpro(data.club.mainpro);
+                    console.log(_self.userMainPros);
+                    _self.GetProvinceFn();
+                    _self.GetCtiyFn();
+                    _self.GetTownFn();
                 }else{
                     CAIMEI.Alert(response.msg,'确定',false);
                 }
             })
         },
-        clubUpgrade:function() {//升级会员机构
+        clunConfirmFn:function() {//保存提交
             var _self = this;
+            var params ={};
             var pass = verifyForm();
             if (_self.loginLoading) { return false; }
             this.$nextTick(function() {
                 if (!pass) {return false;}
                 _self.clubUpgradeUser.mainPros = _self.userMainPros.join("/");
+                if(_self.userIdentity === 4){
+                    params = {
+                        userID:_self.clubUpgradeUser.userID,
+                        clubID:_self.clubUpgradeUser.clubID,					//会所ID
+                        linkMan1:_self.clubUpgradeUser.linkMan1,
+                        fax:_self.clubUpgradeUser.fax,
+                        contractPhone:_self.clubUpgradeUser.contractPhone,
+                        info : _self.clubUpgradeUser.info,
+                    }
+                }else{
+                    params 	= {
+                        userID:_self.clubUpgradeUser.userID,
+                        clubID:_self.clubUpgradeUser.clubID,				//会所ID
+                        name:_self.clubUpgradeUser.name,
+                        linkMan1:_self.clubUpgradeUser.linkMan1,
+                        sname:_self.clubUpgradeUser.sname,
+                        contractEmail1:_self.clubUpgradeUser.contractEmail1,
+                        provinceID:_self.clubUpgradeUser.provinceID,
+                        cityID:_self.clubUpgradeUser.cityID,
+                        townID:_self.clubUpgradeUser.townID,
+                        address:_self.clubUpgradeUser.address,
+                        socialCreditCode:_self.clubUpgradeUser.socialCreditCode,
+                        businessLicenseImage:_self.clubUpgradeUser.businessLicenseImage,
+                        headpic:_self.clubUpgradeUser.headpic,
+                        firstClubType:_self.clubUpgradeUser.firstClubType, //机构类型分类 医美:0和生美:1
+                        secondClubType:_self.clubUpgradeUser.secondClubType,	//机构类型二级分类 诊所:1,门诊:2,医院:3
+                        department:_self.clubUpgradeUser.department,				//科室
+                        medicalPracticeLicenseImg:_self.clubUpgradeUser.medicalPracticeLicenseImg,//资质图片
+                        mainpro:_self.clubUpgradeUser.mainpro,
+                        fax:_self.clubUpgradeUser.fax,
+                        contractPhone:_self.clubUpgradeUser.contractPhone,
+                        info : _self.clubUpgradeUser.info,
+                    }
+                }
                 _self.loginLoading = true;
-                UserApi.ClubUpgrade(_self.clubUpgradeUser,function (response) {
+                UserApi.UpdateModifiedData(params,function (response) {
                     if(response.code === 0){
-                        CAIMEI.Alert('您的升级申请已提交审核','确定',true,function () {
-                            _self.clubLoginIndex();
+                        CAIMEI.dialog('修改成功',true,function () {
+                            window.location.href='/user/dashboard.html';
                             _self.loginLoading = false;
                         });
                     } else {
@@ -114,6 +167,13 @@ var informationPage = new Vue({
                 });
             });
         },
+        setNewMainpro:function(arr){//回显处理主营内容
+            var newArr = [];
+            arr.split('/').forEach(function(item){
+                newArr.push(item);
+            });
+            return newArr
+        },
         mainProAdd: function(){//添加主营
             var _self = this;
             if (_self.mainProEdit.length>0) {
@@ -245,7 +305,7 @@ var informationPage = new Vue({
         },
         GetCtiyFn: function(){//获取市
             var _self = this;
-            PublicApi.GetCity({ provinceId: _self.addressfrom.province },function(response){
+            PublicApi.GetCity({ provinceId: _self.addressfrom.provinceID },function(response){
                 if(response.code == 0 ){
                     _self.cityArray = response.data;
                 }else{
@@ -255,7 +315,7 @@ var informationPage = new Vue({
         },
         GetTownFn: function(){//获取区
             var _self = this;
-            PublicApi.GetTown({ cityId: _self.addressfrom.city },function(response){
+            PublicApi.GetTown({ cityId: _self.addressfrom.cityID },function(response){
                 if(response.code == 0 ){
                     _self.townArray = response.data;
                 }else{
@@ -281,7 +341,6 @@ var informationPage = new Vue({
         if(globalUserData){
             _self.userId = globalUserData.userId;
             _self.infoInformationData();
-            _self.GetProvinceFn();
         }
         $('.navLayout').find('.navList').removeClass("on").find('.con').hide().find('a').removeClass("on");
         $('.navLayout').find('.navList').eq(1).addClass("on").find('.con').show().find('a').eq(0).addClass("on");

+ 10 - 15
src/main/resources/static/js/user-center/setting/password.js

@@ -4,7 +4,7 @@ var passwordPage = new Vue({
     data: {
         title:'手机找回密码',
         loginLoading: false,
-        showTabContentIndex:0,
+        tabCurrentIndex:1,
         showClass:'',
         mobilCount:0,
         mobileCodeText:'获取验证码',
@@ -58,8 +58,9 @@ var passwordPage = new Vue({
             _self.loginLoading = true;
             UserApi.FindCompanyPwd(_self.phonePwd,function (response) {
                 if(response.code === 0){
-                    CAIMEI.Alert('成功找回密码!','去登录',true,function () {
+                    CAIMEI.dialog('重置密码成功!',true,function () {
                         _self.loginLoading = false;
+                        CAIMEI.Storage.clear();
                         window.location.href = '/login.html';
                     });
                 } else {
@@ -80,8 +81,9 @@ var passwordPage = new Vue({
             _self.loginLoading = true;
             UserApi.FindCompanyPwd(_self.emailPwd,function (response) {
                 if(response.code === 0){
-                    CAIMEI.Alert('成功找回密码!','去登录',true,function () {
+                    CAIMEI.dialog('重置密码成功!',true,function () {
                         _self.loginLoading = false;
+                        CAIMEI.Storage.clear();
                         window.location.href = '/login.html';
                     });
                 } else {
@@ -152,12 +154,10 @@ var passwordPage = new Vue({
             var pass = verifyCheack('.emailMsgBtn');
             if (_self.isMobileDisabled) { return false; }
             this.$nextTick(function() {
-                if (!pass) {
-                    return false;
-                }
+                if (!pass) {return false; }
                 var params = {
-                    email: _self.emailPwd.mobileOrEmail,
-                    status: 3
+                        email: _self.emailPwd.mobileOrEmail,
+                        status:3
                 };
                 _self.isEmailDisabled = true;
                 PublicApi.getEmailSMScode(params, function (response) {
@@ -208,13 +208,8 @@ var passwordPage = new Vue({
             var el = event.currentTarget;
             verifyHandle(el);
         },
-        checkedEmailFn:function () {
-            this.title = "邮箱找回密码";
-            this.showTabContentIndex = 1;
-        },
-        checkedPhoneFn:function () {
-            this.title = "手机找回密码";
-            this.showTabContentIndex = 0;
+        checkedFn:function (index) {
+            this.tabCurrentIndex = index;
         }
     },
     created: function () {

+ 58 - 164
src/main/resources/static/js/user-center/setting/phone.js

@@ -2,86 +2,42 @@ jqMultipleShow("click", ".navList", ".tab", ".con");
 var phonePage = new Vue({
     el: "#phonePage",
     data: {
-        title:'手机找回密码',
-        loginLoading: false,
-        showTabContentIndex:0,
-        showClass:'',
-        mobilCount:0,
-        mobileCodeText:'获取验证码',
-        mobilTime:null,
-        isMobileDisabled:false,
-        emailCount:0,
-        emailCodeText:'获取验证码',
-        emailTime:null,
-        isEmailDisabled:false,
-        isCodeModel:false,
-        codeImagePath:'',
-        codeImageToken:'',
-        imageCode:'',
-        phonePwd: {
-            mobileOrEmail :'',
-            activateCode : '',
-            passWord : '',
-            confirmPwd : '',
-            status:1
-        },
-        emailPwd: {
-            mobileOrEmail :'',
-            activateCode : '',
-            passWord : '',
-            confirmPwd : '',
-            status:2
+        loginLoading:false,
+        count: '',					//倒计时
+        newCount: '',				//倒计时
+        codeTime: null,
+        codeTimeNew: null,
+        mobileCodeText: '获取验证码',
+        newMobileCodeText: '获取验证码',
+        isMobileDisabled: false,	//手机验证码按钮控制
+        isNewMobileDisabled: false,	//手机验证码按钮控制
+        form:{
+            contractMobile2:'', //新联系人手机号
+            contractMobile:'',  //旧联系人手机号
+            mobileCode:'',      //原手机号验证码
+            newMobileCode:'',   //新手机号手机验证码
+            userID:0
         },
         rule:{
-            name: '^[a-zA-Z\\u4e00-\\u9fa5]{2,}$',
             phone: '^\\d{6,12}$',
             code: '^\\d{6}$',
-            emailCode: '^\\d{4}$',
-            license: '^[a-zA-Z0-9_]{18}$',
-            email: '^(([^<>()\\[\\]\\\\.,;:\\s@&quot;]+(\\.[^<>()\\[\\]\\\\.,;:\\s@&quot;]+)*)|(&quot;.+&quot;))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$',
-            password: "^[^\\u4e00-\\u9fa5]{8,16}$"
         }
     },
     computed: {
 
     },
     methods: {
-        findPhonePwd: function(){ //手机号找回密码
-            var _self = this;
-            var pass = verifyForm();
-            if (_self.loginLoading) { return false; }
-            if (!pass) {return false;}
-            if(_self.phonePwd.confirmPwd!=_self.phonePwd.passWord){
-                CAIMEI.dialog('两次密码输入不一致',false,function () {});
-                return;
-            }
-            _self.loginLoading = true;
-            UserApi.FindCompanyPwd(_self.phonePwd,function (response) {
-                if(response.code === 0){
-                    CAIMEI.Alert('成功找回密码!','去登录',true,function () {
-                        _self.loginLoading = false;
-                        window.location.href = '/login.html';
-                    });
-                } else {
-                    CAIMEI.Alert(response.msg,'确定',false);
-                    _self.loginLoading = false;
-                }
-            });
-        },
-        findEmailPwd: function(){ //邮箱找回密码
+        bindMobileCheck:function(){
             var _self = this;
             var pass = verifyForm();
             if (_self.loginLoading) { return false; }
             if (!pass) {return false;}
-            if(_self.emailPwd.confirmPwd!=_self.emailPwd.passWord){
-                CAIMEI.dialog('两次密码输入不一致',false,function () {});
-                return;
-            }
             _self.loginLoading = true;
-            UserApi.FindCompanyPwd(_self.emailPwd,function (response) {
+            PublicApi.clubChangeMobile(_self.form,function (response) {
                 if(response.code === 0){
-                    CAIMEI.Alert('成功找回密码!','去登录',true,function () {
+                    CAIMEI.dialog('修改成功',true,function () {
                         _self.loginLoading = false;
+                        CAIMEI.Storage.clear();
                         window.location.href = '/login.html';
                     });
                 } else {
@@ -90,131 +46,65 @@ var phonePage = new Vue({
                 }
             });
         },
-        getMobileImage:function() {//获取图形验证码
-            var _self = this;
-            var pass = verifyCheack('.massageBtn');
-            if (_self.isMobileDisabled) { return false; }
-            this.$nextTick(function() {
-                if (!pass) {
-                    return false;
-                }
-                PublicApi.getImgVerifyCode({platformType: 0},function(response){
-                    if(response.code == 0){
-                        _self.imageCode = '';
-                        _self.codeImagePath = response.data.baseImage;
-                        _self.codeImageToken = response.data.token;
-                        _self.isCodeModel = true;
-                    }else{
-                        CAIMEI.Alert(response.msg,'确定',false);
-                    }
-                })
-            });
-        },
-        getMobileCodeFn:function(){//机构注册获取注册短信验证码
+        getMobileCodeFn:function(){//获取旧手机号验证码
             var _self = this;
-            var params = {
-                    mobile:_self.phonePwd.mobileOrEmail,
-                    imgCode:_self.imageCode,
-                    token:_self.codeImageToken,
-                    activateCodeType:1,
-                    platformType:0
-                };
             _self.isMobileDisabled = true;
-            UserApi.getRegisterMobileCode(params,function (response) {
+            PublicApi.getClubMobileCode({ mobile : _self.form.contractMobile2 },function(response){
                 if(response.code == 0){
-                    _self.isCodeModel = false;
                     CAIMEI.dialog('验证短信已发送',false,function () {});
                     var TIME_COUNT = 60;
                     if (!_self.mobilTime) {
-                        _self.mobilCount = TIME_COUNT;
-                        _self.isMobileDisabled = true;
-                        _self.mobilTime = setInterval(function(){
-                        if (_self.mobilCount > 1 && _self.mobilCount <= TIME_COUNT) {
-                            _self.mobilCount--;
-                            _self.mobileCodeText = _self.mobilCount +'s重新发送';
-                        } else {
-                            _self.isMobileDisabled = false;
-                            clearInterval(_self.mobilTime);
-                            _self.mobilTime = null;
-                            _self.mobileCodeText = '获取验证码';
+                            _self.count = TIME_COUNT;
+                            _self.isMobileDisabled = true;
+                            _self.codeTime = setInterval(function(){
+                                if (_self.count > 1 && _self.count <= TIME_COUNT) {
+                                    _self.count--;
+                                    _self.mobileCodeText = _self.count +'s重新发送';
+                                } else {
+                                    _self.isMobileDisabled = false;
+                                    clearInterval(_self.codeTime);
+                                    _self.codeTime = null;
+                                    _self.mobileCodeText = '获取验证码';
+                                }
+                            },1000)
                         }
-                    },1000)
-                    }
                 }else{
                     CAIMEI.Alert(response.msg,'确定',false);
                     _self.isMobileDisabled = false;
-                    _self.isCodeModel = false;
                 }
             })
         },
-        getEmailCodeFn:function(){//找回密码获取邮箱验证码
+        getNewMobileCodeFn:function(){//获取新手机号短信验证码
             var _self = this;
-            var pass = verifyCheack('.emailMsgBtn');
-            if (_self.isMobileDisabled) { return false; }
-            this.$nextTick(function() {
-                if (!pass) {
-                    return false;
-                }
-                var params = {
-                    email: _self.emailPwd.mobileOrEmail,
-                    status: 3
-                };
-                _self.isEmailDisabled = true;
-                PublicApi.getEmailSMScode(params, function (response) {
-                    if (response.code == 0) {
-                        CAIMEI.dialog('验证短信已发送', false, function () {
-                        });
+            _self.isNewMobileDisabled = true;
+            PublicApi.getClubMobileCode({ mobile : _self.form.contractMobile },function(response){
+                    if(response.code == 0){
+                        CAIMEI.dialog('验证短信已发送',false,function () {});
                         var TIME_COUNT = 60;
-                        if (!_self.emailTime) {
-                            _self.emailCount = TIME_COUNT;
-                            _self.isEmailDisabled = true;
-                            _self.emailTime = setInterval(function () {
-                                if (_self.emailCount > 1 && _self.emailCount <= TIME_COUNT) {
-                                    _self.emailCount--;
-                                    _self.emailCodeText = _self.emailCount + 's重新发送';
+                        if (!_self.codeTimeNew) {
+                            _self.newCount = TIME_COUNT;
+                            _self.isNewMobileDisabled = true;
+                            _self.codeTimeNew = setInterval(function(){
+                                if (_self.newCount > 1 && _self.newCount <= TIME_COUNT) {
+                                    _self.newCount--;
+                                    _self.newMobileCodeText = _self.newCount +'s重新发送';
                                 } else {
-                                    _self.isEmailDisabled = false;
-                                    clearInterval(_self.emailTime);
-                                    _self.emailTime = null;
-                                    _self.emailCodeText = '获取验证码';
+                                    _self.isNewMobileDisabled = false;
+                                    clearInterval(_self.codeTimeNew);
+                                    _self.codeTimeNew = null;
+                                    _self.newMobileCodeText = '获取验证码';
                                 }
-                            }, 1000)
+                            },1000)
                         }
-                    } else {
-                        CAIMEI.Alert(response.msg, '确定', false);
-                        _self.isEmailDisabled = false;
+                    }else{
+                        CAIMEI.Alert(response.msg,'确定',false);
+                        _self.isNewMobileDisabled = false;
                     }
                 })
-            })
-        },
-        refreshCodeImage:function(){
-            this.getMobileImage()
-        },
-        closeCodeModel:function(){
-            this.isCodeModel = false;
-        },
-        showPassword: function(event) {//密码
-            var el = event.currentTarget;
-            var pwdEle = $(el).siblings('input');
-            if(pwdEle.attr('type') === 'password') {
-                $(el).addClass('on');
-                pwdEle.attr('type','text');
-            } else {
-                $(el).removeClass('on');
-                pwdEle.attr('type','password');
-            }
         },
         blurHandle: function(event) { // 失去焦点校验
             var el = event.currentTarget;
             verifyHandle(el);
-        },
-        checkedEmailFn:function () {
-            this.title = "邮箱找回密码";
-            this.showTabContentIndex = 1;
-        },
-        checkedPhoneFn:function () {
-            this.title = "手机找回密码";
-            this.showTabContentIndex = 0;
         }
     },
     created: function () {
@@ -222,6 +112,10 @@ var phonePage = new Vue({
     },
     mounted: function () {
         var _self = this;
+        if(globalUserData){
+            _self.form.contractMobile2 = globalUserData.phone;
+            _self.form.userID = globalUserData.userId;
+        }
         $('.navLayout').find('.navList').removeClass("on").find('.con').hide().find('a').removeClass("on");
         $('.navLayout').find('.navList').eq(2).addClass("on").find('.con').show().find('a').eq(1).addClass("on");
     }

+ 75 - 68
src/main/resources/templates/account/forget.html

@@ -12,76 +12,83 @@
 <template th:replace="account/components/header"></template>
 
 <!-- 找回密码表单 -->
-<div id="forGetPasswordPage">
+<div id="forGetPasswordPage" v-cloak>
     <div class="signAccount clear">
-        <div class="title">{{title}}</div>
-        <div class="forget-form"  v-if="showTabContentIndex == 0">
-            <form>
-                <div class="formLine" >
-                    <p><em>*</em>手机号(<span>若手机号已暂停使用,可使用 <a href="javascript:void(0);" @click="checkedEmailFn">邮箱验证</a></span>):</p>
-                    <input  class="massageBtn"  type="text" v-model.trim="phonePwd.mobileOrEmail" placeholder="请输入手机号码" :rule="rule.phone" maxlength="11" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入有效的手机号码"></span>
-                </div>
-                <div class="formLine code">
-                    <p><em>*</em>短信验证码:</p>
-                    <input type="text" v-model.trim="phonePwd.activateCode" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入有效短信验证码"></span>
-                    <a class="getCode" href="javascript:void(0);" @click="getMobileImage" :class="[isMobileDisabled  ? 'disabled' : '']">{{ mobileCodeText }}</a>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>新密码:</p>
-                    <input type="password" v-model.trim="phonePwd.passWord" autocomplete="new-password" placeholder="请输入新密码,为8-16位数字和字母组合" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
-                    <i class="icon showPwd" @click="showPassword($event)"></i>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>确认密码:</p>
-                    <input type="password" v-model.trim="phonePwd.confirmPwd" autocomplete="new-password" placeholder="请再次确认新密码" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
-                    <i class="icon showPwd" @click="showPassword($event)"></i>
-                </div>
-                <div class="subLine">
-                    <button class="btn" type="button" :class="loginLoading ? 'disabled':''"  @click="findPhonePwd()">提交</button>
-                </div>
-            </form>
+        <div class="right-header">
+            <div class="tabs">
+                <div class="header-tabs" :class="{ current: tabCurrentIndex === 1 }" @click="checkedFn(1)">使用手机修改</div>
+                <div class="header-tabs" :class="{ current: tabCurrentIndex === 2 }" @click="checkedFn(2)">使用邮箱修改</div>
+            </div>
         </div>
-        <div class="forget-form"  v-if="showTabContentIndex == 1">
-            <form>
-                <div class="formLine" >
-                    <p><em>*</em>邮箱(<span>若忘记邮箱,可使用 <a href="javascript:void(0);" @click="checkedPhoneFn">手机号</a></span>):</p>
-                    <input  class="emailMsgBtn"  type="text" v-model.trim="emailPwd.mobileOrEmail" placeholder="请输入邮箱" :rule="rule.email" maxlength="30" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入有效的邮箱地址"></span>
-                </div>
-                <div class="formLine code">
-                    <p><em>*</em>邮箱验证码:</p>
-                    <input type="text" v-model.trim="emailPwd.activateCode" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.emailCode"  maxlength="6" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入有效短信验证码"></span>
-                    <a class="getCode" href="javascript:void(0);" @click="getEmailCodeFn" :class="[isEmailDisabled  ? 'disabled' : '']">{{ emailCodeText }}</a>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>登录密码:</p>
-                    <input type="password" v-model.trim="emailPwd.passWord" autocomplete="new-password" placeholder="请输入新密码,为8-16位数字和字母组合" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
-                    <i class="icon showPwd" @click="showPassword($event)"></i>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>确认密码:</p>
-                    <input type="password" v-model.trim="emailPwd.confirmPwd" autocomplete="new-password" placeholder="请再次确认新密码" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
-                    <i class="icon showPwd" @click="showPassword($event)"></i>
-                </div>
-                <div class="subLine">
-                    <button class="btn" type="button" :class="loginLoading ? 'disabled':''"  @click="findEmailPwd()">提交</button>
-                </div>
-            </form>
+        <div class="container clear">
+            <div class="forget-form"  v-if="tabCurrentIndex == 1">
+                <form>
+                    <div class="formLine" >
+                        <p><em>*</em>手机号:</p>
+                        <input  class="massageBtn"  type="text" v-model.trim="phonePwd.mobileOrEmail" placeholder="请输入手机号码" :rule="rule.phone" maxlength="11" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="请输入有效的手机号码"></span>
+                    </div>
+                    <div class="formLine code">
+                        <p><em>*</em>短信验证码:</p>
+                        <input type="text" v-model.trim="phonePwd.activateCode" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="请输入有效短信验证码"></span>
+                        <a class="getCode" href="javascript:void(0);" @click="getMobileImage" :class="[isMobileDisabled  ? 'disabled' : '']">{{ mobileCodeText }}</a>
+                    </div>
+                    <div class="formLine">
+                        <p><em>*</em>新密码:</p>
+                        <input type="password" v-model.trim="phonePwd.passWord" autocomplete="new-password" placeholder="请输入新密码,为8-16位数字和字母组合" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
+                        <i class="icon showPwd" @click="showPassword($event)"></i>
+                    </div>
+                    <div class="formLine">
+                        <p><em>*</em>确认密码:</p>
+                        <input type="password" v-model.trim="phonePwd.confirmPwd" autocomplete="new-password" placeholder="请再次确认新密码" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
+                        <i class="icon showPwd" @click="showPassword($event)"></i>
+                    </div>
+                    <div class="subLine">
+                        <button class="btn" type="button" :class="loginLoading ? 'disabled':''"  @click="findPhonePwd()">提交</button>
+                    </div>
+                </form>
+            </div>
+            <div class="forget-form"  v-if="tabCurrentIndex == 2">
+                <form>
+                    <div class="formLine" >
+                        <p><em>*</em>邮箱:</p>
+                        <input  class="emailMsgBtn"  type="text" v-model.trim="emailPwd.mobileOrEmail" placeholder="请输入邮箱" :rule="rule.email" maxlength="30" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="请输入有效的邮箱地址"></span>
+                    </div>
+                    <div class="formLine code">
+                        <p><em>*</em>邮箱验证码:</p>
+                        <input type="text" v-model.trim="emailPwd.activateCode" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.emailCode"  maxlength="6" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="请输入有效短信验证码"></span>
+                        <a class="getCode" href="javascript:void(0);" @click="getEmailCodeFn" :class="[isEmailDisabled  ? 'disabled' : '']">{{ emailCodeText }}</a>
+                    </div>
+                    <div class="formLine">
+                        <p><em>*</em>登录密码:</p>
+                        <input type="password" v-model.trim="emailPwd.passWord" autocomplete="new-password" placeholder="请输入新密码,为8-16位数字和字母组合" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
+                        <i class="icon showPwd" @click="showPassword($event)"></i>
+                    </div>
+                    <div class="formLine">
+                        <p><em>*</em>确认密码:</p>
+                        <input type="password" v-model.trim="emailPwd.confirmPwd" autocomplete="new-password" placeholder="请再次确认新密码" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
+                        <i class="icon showPwd" @click="showPassword($event)"></i>
+                    </div>
+                    <div class="subLine">
+                        <button class="btn" type="button" :class="loginLoading ? 'disabled':''"  @click="findEmailPwd()">提交</button>
+                    </div>
+                </form>
+            </div>
         </div>
         <div class="content-model"  :class="isCodeModel ? 'active' : ''">
             <div class="model-main">

+ 9 - 9
src/main/resources/templates/account/register-club.html

@@ -130,7 +130,7 @@
                 </div>
                 <div class="formLine">
                     <p>营业执照编号:</p>
-                    <input type="text" v-model.trim="clubUpgradeUser.socialCreditCode" placeholder="请输入统一社会信用代码" maxlength="18">
+                    <input type="text" v-model.trim="clubUpgradeUser.socialCreditCode" placeholder="请输入统一社会信用代码" maxlength="20">
                 </div>
                 <div class="formLine clear">
                     <div class="form-upload">
@@ -165,17 +165,17 @@
                 </div>
                 <div class="formLine">
                     <p><em>*</em>机构类型:</p>
-                    <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="0" ><i class="icon mIcon">医美</i></label>
-                    <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="1" checked><i class="icon mIcon">生美</i></label>
+                    <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="1" ><i class="icon mIcon">医美</i></label>
+                    <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="2" checked><i class="icon mIcon">生美</i></label>
                     <span class="errTips icon mIcon" tips="请选择公司类型"></span>
                 </div>
-                <div v-show="clubUpgradeUser.firstClubType == 0" class="formLine">
+                <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
                     <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="1" checked><i class="icon mIcon">诊所</i></label>
                     <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="2" ><i class="icon mIcon">门诊</i></label>
                     <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="3" ><i class="icon mIcon">医院</i></label>
                     <span class="errTips icon mIcon" tips="请选择公司类型"></span>
                 </div>
-                <div v-show="clubUpgradeUser.firstClubType == 0" class="formLine">
+                <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
                     <div class="form-upload">
                         <p>资质:</p>
                         <div class="form-upload-image" v-if="clubUpgradeUser.medicalPracticeLicenseImg!=''">
@@ -197,10 +197,10 @@
                     <p>科室:</p>
                     <input type="text" v-model.trim="clubUpgradeUser.department" placeholder="请填写您所经营的科室,用逗号隔开.(至少三个)" maxlength="50">
                 </div>
-                <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 0">
+                <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 1">
                     <p><em>*</em>主营内容:</p>
                     <p class="business clear">
-                        <label v-for="pro in mentuzCampNullList" class="diyBox second" >
+                        <label v-for="pro in medicaCampNullList" class="diyBox second" >
                             <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
                             <i class="icon mIcon">{{pro.name}}</i>
                         </label>
@@ -211,10 +211,10 @@
                     </p>
                     <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
                 </div>
-                <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 1">
+                <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 2">
                     <p><em>*</em>主营内容:</p>
                     <p class="business clear">
-                        <label v-for="pro in medicaCampNullList" class="diyBox second">
+                        <label v-for="pro in mentuzCampNullList" class="diyBox second">
                             <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
                             <i class="icon mIcon">{{pro.name}}</i>
                         </label>

+ 1 - 1
src/main/resources/templates/account/register-supplier.html

@@ -107,7 +107,7 @@
                     </div>
                     <div class="formLine">
                         <p><em>*</em>营业执照编号:</p>
-                        <input type="text" v-model.trim="supplierUser.socialCreditCode" placeholder="请输入统一社会信用代码" :rule="rule.license" maxlength="19" @blur="blurHandle($event)" needverify>
+                        <input type="text" v-model.trim="supplierUser.socialCreditCode" placeholder="请输入统一社会信用代码" :rule="rule.license" maxlength="20" @blur="blurHandle($event)" needverify>
                         <i class="checked icon mIcon"></i>
                         <span class="errTips icon mIcon" tips="请输入正确的统一社会信用代码"></span>
                     </div>

+ 1 - 1
src/main/resources/templates/user-center/address/list.html

@@ -17,7 +17,7 @@
             <span>&gt;</span>
             <span>收货地址管理</span>
         </div>
-        <div class="wrap clear mf">
+        <div class="wrap clear">
             <!--左侧面包屑-->
             <template th:replace="user-center/components/tableft"></template>
             <div class="right">

+ 92 - 86
src/main/resources/templates/user-center/dashboard.html

@@ -21,103 +21,109 @@
             <!--左侧导航-->
             <template th:replace="user-center/components/tableft"></template>
             <div class="right">
-                <div class="user-header">
-                    <div class="header-ml">
-                        <div class="logo">
-                            <input ref="clubUseLogo"  class="logo-file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadUserPuploadAvatar">
-                            <i class="file" v-if="userInfo.image == null"></i>
-                            <img v-else :src="userInfo.image == null ? '' : userInfo.image" alt="">
-                        </div>
-                        <div class="account">
-                            <div class="name"><span>{{userInfo.name}}</span><a href="/" v-if="userInfo.userIdentity === 4">去升级会员机构</a></div>
-                            <div class="msg"><span>资料完整度:<em class="red">{{degree}}</em></span><a href="/user/setting/information.html">立即完善</a></div>
+                <!--loading-->
+                <div v-if="isRequset" class="loading">
+                    <img src="/img/base/loading.gif">
+                </div>
+                <template v-else>
+                    <div class="user-header">
+                        <div class="header-ml">
+                            <div class="logo">
+                                <input ref="clubUseLogo"  class="logo-file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadUserPuploadAvatar">
+                                <i class="file" v-if="userInfo.image == null"></i>
+                                <img v-else :src="userInfo.image == null ? '' : userInfo.image" alt="">
+                            </div>
+                            <div class="account">
+                                <div class="name"><span>{{userInfo.name}}</span><a href="/" v-if="userInfo.userIdentity === 4">去升级会员机构</a></div>
+                                <div class="msg"><span>资料完整度:<em class="red">{{degree}}</em></span><a href="/user/setting/information.html">立即完善</a></div>
+                            </div>
                         </div>
-                    </div>
-                    <div class="header-mr">
-                        <div class="message">
-                            <a href="/user/message/list.html">
-                                <i class="icon mIcon">
-                                    <span  v-if="unReadMessageCount>0" :class="[unReadMessageCount < 10 ? 'circular':'ellipse']">{{unReadMessageCount == 99 ? '99+' : unReadMessageCount}}</span>
-                                </i>
-                            </a>
+                        <div class="header-mr">
+                            <div class="message">
+                                <a href="/user/message/list.html">
+                                    <i class="icon mIcon">
+                                        <span  v-if="unReadMessageCount>0" :class="[unReadMessageCount < 10 ? 'circular':'ellipse']">{{unReadMessageCount == 99 ? '99+' : unReadMessageCount}}</span>
+                                    </i>
+                                </a>
+                            </div>
+                            <div class="money">余额: <span>{{toFixedFn(userInfo.ableUserMoney)}}</span> 元</div>
                         </div>
-                        <div class="money">余额: <span>{{toFixedFn(userInfo.ableUserMoney)}}</span> 元</div>
                     </div>
-                </div>
-                <div class="user-content clear">
-                    <div class="title">我的订单</div>
-                    <div class="section">
-                        <div class="user-main tabs">
-                            <div class="tabs-left">
-                                <div class="item">
-                                    <a href="javascript:void(0);" @click="orderListPath(1)">
-                                        <i class="icon mIcon icon-1">
-                                            <span v-if="confirmedCount>0" :class="[confirmedCount < 10 ? 'circular':'ellipse']">{{confirmedCount == 99 ? '99+' : confirmedCount}}</span>
-                                        </i>
-                                        <p>待确认</p>
-                                    </a>
-                                </div>
-                                <div class="item">
-                                    <a href="javascript:void(0);" @click="orderListPath(2)">
-                                        <i class="icon mIcon icon-2">
-                                            <span v-if="paymentCount>0" :class="[paymentCount < 10 ? 'circular':'ellipse']">{{paymentCount == 99 ? '99+' : paymentCount}}</span>
-                                        </i>
-                                        <p>待付款</p>
-                                    </a>
-                                </div>
-                                <div class="item">
-                                    <a href="javascript:void(0);" @click="orderListPath(3)">
-                                        <i class="icon mIcon icon-3">
-                                            <span v-if="waitShipmentsCount>0" :class="[waitShipmentsCount < 10 ? 'circular':'ellipse']">{{waitShipmentsCount == 99 ? '99+' : waitShipmentsCount}}</span>
-                                        </i>
-                                        <p>待发货</p>
-                                    </a>
-                                </div>
-                                <div class="item">
-                                    <a href="javascript:void(0);" @click="orderListPath(4)">
-                                        <i class="icon mIcon icon-4">
-                                            <span v-if="shipmentsCount>0" :class="[shipmentsCount < 10 ? 'circular':'ellipse']">{{shipmentsCount == 99 ? '99+' : shipmentsCount}}</span>
-                                        </i>
-                                        <p>已发货</p>
-                                    </a>
-                                </div>
-                                <div class="item">
-                                    <a href="javascript:void(0);" @click="orderListPath(5)">
-                                        <i class="icon mIcon icon-5">
-                                            <span v-if="salesReturnCount>0" :class="[salesReturnCount < 10 ? 'circular':'ellipse']">{{salesReturnCount == 99 ? '99+' : salesReturnCount}}</span>
-                                        </i>
-                                        <p>退货/款</p>
-                                    </a>
+                    <div class="user-content clear">
+                        <div class="title">我的订单</div>
+                        <div class="section">
+                            <div class="user-main tabs">
+                                <div class="tabs-left">
+                                    <div class="item">
+                                        <a href="javascript:void(0);" @click="orderListPath(1)">
+                                            <i class="icon mIcon icon-1">
+                                                <span v-if="confirmedCount>0" :class="[confirmedCount < 10 ? 'circular':'ellipse']">{{confirmedCount == 99 ? '99+' : confirmedCount}}</span>
+                                            </i>
+                                            <p>待确认</p>
+                                        </a>
+                                    </div>
+                                    <div class="item">
+                                        <a href="javascript:void(0);" @click="orderListPath(2)">
+                                            <i class="icon mIcon icon-2">
+                                                <span v-if="paymentCount>0" :class="[paymentCount < 10 ? 'circular':'ellipse']">{{paymentCount == 99 ? '99+' : paymentCount}}</span>
+                                            </i>
+                                            <p>待付款</p>
+                                        </a>
+                                    </div>
+                                    <div class="item">
+                                        <a href="javascript:void(0);" @click="orderListPath(3)">
+                                            <i class="icon mIcon icon-3">
+                                                <span v-if="waitShipmentsCount>0" :class="[waitShipmentsCount < 10 ? 'circular':'ellipse']">{{waitShipmentsCount == 99 ? '99+' : waitShipmentsCount}}</span>
+                                            </i>
+                                            <p>待发货</p>
+                                        </a>
+                                    </div>
+                                    <div class="item">
+                                        <a href="javascript:void(0);" @click="orderListPath(4)">
+                                            <i class="icon mIcon icon-4">
+                                                <span v-if="shipmentsCount>0" :class="[shipmentsCount < 10 ? 'circular':'ellipse']">{{shipmentsCount == 99 ? '99+' : shipmentsCount}}</span>
+                                            </i>
+                                            <p>已发货</p>
+                                        </a>
+                                    </div>
+                                    <div class="item">
+                                        <a href="javascript:void(0);" @click="orderListPath(5)">
+                                            <i class="icon mIcon icon-5">
+                                                <span v-if="salesReturnCount>0" :class="[salesReturnCount < 10 ? 'circular':'ellipse']">{{salesReturnCount == 99 ? '99+' : salesReturnCount}}</span>
+                                            </i>
+                                            <p>退货/款</p>
+                                        </a>
+                                    </div>
                                 </div>
+                                <div class="tabs-right"><a href="javascript:void(0);" @click="orderListPath(0)">全部订单<span class="icon mIcon"></span></a></div>
                             </div>
-                            <div class="tabs-right"><a href="javascript:void(0);" @click="orderListPath(0)">全部订单<span class="icon mIcon"></span></a></div>
                         </div>
                     </div>
-                </div>
-                <div class="user-content">
-                    <div class="title">今日推荐</div>
-                    <div class="section">
-                        <div class="user-main product">
-                            <a class="product-item" v-for="(item, index) in productList" :key="index" :href="item.link" target="_blank">
-                                <div class="product-img">
-                                    <img :src="item.image" :alt="item.title">
-                                </div>
-                                <div class="product-name"><p>{{item.title}}</p></div>
-                            </a>
+                    <div class="user-content">
+                        <div class="title">今日推荐</div>
+                        <div class="section">
+                            <div class="user-main product">
+                                <a class="product-item" v-for="(item, index) in productList" :key="index" :href="item.link" target="_blank">
+                                    <div class="product-img">
+                                        <img :src="item.image" :alt="item.title">
+                                    </div>
+                                    <div class="product-name"><p>{{item.title}}</p></div>
+                                </a>
+                            </div>
                         </div>
                     </div>
-                </div>
-                <div class="user-content">
-                    <div class="title">最新动态<a href="/info/center-3-1.html" target="_blank">全部动态<i class="icon mIcon"></i></a></div>
-                    <div class="section">
-                        <div class="user-main news">
-                            <a class="new-list" v-for="(item, index) in newsList" :key="index" :href="item.link" target="_blank">
-                                <p class="text">{{item.title}}</p>
-                                <p class="time">{{item.addTime}}</p>
-                            </a>
+                    <div class="user-content">
+                        <div class="title">最新动态<a href="/info/center-3-1.html" target="_blank">全部动态<i class="icon mIcon"></i></a></div>
+                        <div class="section">
+                            <div class="user-main news">
+                                <a class="new-list" v-for="(item, index) in newsList" :key="index" :href="item.link" target="_blank">
+                                    <p class="text">{{item.title}}</p>
+                                    <p class="time">{{item.addTime}}</p>
+                                </a>
+                            </div>
                         </div>
                     </div>
-                </div>
+                </template>
             </div>
         </div>
     </div>

+ 29 - 14
src/main/resources/templates/user-center/operation/form.html

@@ -4,6 +4,7 @@
 <head>
     <title>采美365网-运营人员管理-中国美业全方位线上交易服务互动平台,做美业,上采美</title>
     <template th:replace="components/head-link"></template>
+    <link th:href="@{/css/base/form.css(v=${version})}" rel="stylesheet" type="text/css">
     <link th:href="@{/css/user-center/operation/form.css(v=${version})}" rel="stylesheet" type="text/css">
 </head>
 <body>
@@ -19,30 +20,44 @@
             <span>&gt;</span>
             <span>添加运营人员</span>
         </div>
-        <div class="wrap clear mf">
+        <div class="wrap clear">
             <!--左侧面包屑-->
             <template th:replace="user-center/components/tableft"></template>
             <div class="right">
                 <div class="order-header">
                     <div class="header-bt">
-                        <div class="header-search">
-                            <div class="search">
-                                <span class="label">姓名:</span>
-                                <input type="text" v-model="listQuery.linkName" placeholder="请输入运营人员姓名" class="search-input">
-                            </div>
-                            <div class="search">
-                                <span class="label">手机号:</span>
-                                <input type="text" v-model="listQuery.mobile" placeholder="请输入运营人员手机号" class="search-input">
-                            </div>
-                        </div>
+                        <div class="header-title">运营人员绑定步骤</div>
                         <div class="header-button">
-                            <a class="btn-serch" href="javascript: void(0);" @click="searchOperationFn">搜索</a>
-                            <a class="btn-add" href="/user/operation/form.html">添加运营人员</a>
+                            <a class="btn-add" href="/user/operation/list.html">返回</a>
                         </div>
                     </div>
                 </div>
                 <div class="container clear">
-                    添加运营人员
+                    <div class="text">
+                        <p>1. 添加运营人员后,运营人员会收到一条邀请码短信</p>
+                        <p>2. 运营人员在微信搜索【采美采购商城】小程序,或者搜索关注【采美365】公众号,从底部菜单进入【采美采购商城】小程序</p>
+                        <p>3. 使用邀请码进行登录并绑定微信</p>
+                        <p>4. 绑定后,运营人员可通过微信直接登录采美365网</p>
+                    </div>
+                    <div class="form">
+                        <form>
+                            <div class="formLine">
+                                <p>姓名:</p>
+                                <input type="text" v-model.trim="addForm.linkName" placeholder="请输入运营人员姓名" :rule="rule.name" maxlength="8" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入运营人员姓名"></span>
+                            </div>
+                            <div class="formLine">
+                                <p>手机号</p>
+                                <input  class="massageBtn"  type="text" v-model.trim="addForm.mobile" placeholder="请输入手机号码" :rule="rule.phone" maxlength="11" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入有效的手机号码"></span>
+                            </div>
+                        </form>
+                    </div>
+                    <div class="button">
+                        <a href="javascript:void(0);" class="btn" @click="addConfirmFn" :class="loginLoading ? 'disabled' : ''">确定</a>
+                    </div>
                 </div>
             </div>
         </div>

+ 1 - 1
src/main/resources/templates/user-center/operation/list.html

@@ -17,7 +17,7 @@
             <span>&gt;</span>
             <span>运营人员管理</span>
         </div>
-        <div class="wrap clear mf">
+        <div class="wrap clear">
             <!--左侧面包屑-->
             <template th:replace="user-center/components/tableft"></template>
             <div class="right">

+ 1 - 1
src/main/resources/templates/user-center/order/detail.html

@@ -20,7 +20,7 @@
             <span>&gt;</span>
             <span>订单详情</span>
         </div>
-        <div class="wrap clear mf">
+        <div class="wrap clear">
             <!--左侧面包屑-->
             <template th:replace="user-center/components/tableft"></template>
             <div class="right">

+ 1 - 1
src/main/resources/templates/user-center/repair/detail.html

@@ -20,7 +20,7 @@
             <span>&gt;</span>
             <span>维修详情</span>
         </div>
-        <div class="wrap clear mf">
+        <div class="wrap clear">
             <!--左侧面包屑-->
             <template th:replace="user-center/components/tableft"></template>
             <div class="right">

+ 1 - 1
src/main/resources/templates/user-center/repair/form-user.html

@@ -20,7 +20,7 @@
             <span>&gt;</span>
             <span>申请维修</span>
         </div>
-        <div class="wrap clear mf">
+        <div class="wrap clear">
             <!--左侧面包屑-->
             <template th:replace="user-center/components/tableft"></template>
             <div class="right">

+ 1 - 1
src/main/resources/templates/user-center/repair/list.html

@@ -18,7 +18,7 @@
             <span>我的维修</span>
             <a class="link" href="/user/repair/form.html">申请维修</a>
         </div>
-        <div class="wrap clear mf">
+        <div class="wrap clear">
             <!--左侧面包屑-->
             <template th:replace="user-center/components/tableft"></template>
             <div class="right">

+ 133 - 131
src/main/resources/templates/user-center/setting/information.html

@@ -19,7 +19,7 @@
             <span>&gt;</span>
             <span>修改资料</span>
         </div>
-        <div class="wrap clear mf">
+        <div class="wrap clear">
             <!--左侧面包屑-->
             <template th:replace="user-center/components/tableft"></template>
             <div class="right">
@@ -32,164 +32,166 @@
                         <div class="title">注册信息</div>
                         <div class="formLine">
                             <p><em>*</em>联系人:</p>
-                            <input type="text" v-model.trim="clubUpgradeUser.name" placeholder="请输入联系人姓名" :rule="rule.name" maxlength="6" @blur="blurHandle($event)" needverify>
+                            <input type="text" v-model.trim="clubUpgradeUser.linkMan1" placeholder="请输入联系人姓名" :rule="rule.name" maxlength="6" @blur="blurHandle($event)" needverify>
                             <i class="checked icon mIcon"></i>
                             <span class="errTips icon mIcon" tips="请输入正确的联系人姓名"></span>
                         </div>
                         <div class="formLine">
-                            <p><em>*</em>手机号:<span>15888888888</span></p>
-                        </div>
-                        <div class="title">升级信息</div>
-                        <div class="formLine">
-                            <p><em>*</em>机构名称:</p>
-                            <input type="text" v-model.trim="clubUpgradeUser.name" placeholder="请与营业执照的注册名称保持一致" :rule="rule.name" maxlength="30" @blur="blurHandle($event)" needverify>
-                            <i class="checked icon mIcon"></i>
-                            <span class="errTips icon mIcon" tips="请输入正确的联系人姓名"></span>
-                        </div>
-                        <div class="formLine">
-                            <p><em>*</em>邮箱:</p>
-                            <input type="text" v-model.trim="clubUpgradeUser.contractEmail1" placeholder="请输入邮箱地址" :rule="rule.email" maxlength="32" @blur="blurHandle($event)" needverify>
-                            <i class="checked icon mIcon"></i>
-                            <span class="errTips icon mIcon" tips="请输入正确的邮箱地址"></span>
-                        </div>
-                        <div class="formLine">
-                            <p>机构简称:</p>
-                            <input type="text" v-model.trim="clubUpgradeUser.sname" placeholder="请输入机构简称" maxlength="10" >
-                        </div>
-                        <div class="formLine">
-                            <p><em>*</em>联系地址:</p>
-                            <div class="address">
-                                <select name="provinceID" id="cProvince" @change="ChangeProvince" v-model="addressfrom.provinceID">
-                                    <option value="" >请选择</option>
-                                    <option v-for="(item ,index) in ProvinceList" :key="index" :value='item.provinceID' >{{item.name}}</option>
-                                </select>
-                                <select name="cityID" id="cCity" @change="ChangeGetcity($event)" v-model="addressfrom.cityID">
-                                    <option value="" >请选择</option>
-                                    <option v-for="(item ,index) in cityArray" :key="index" :value="item.cityID" >{{item.name}}</option>
-                                </select>
-                                <select name="townID" id="cTown" @change="ChangeGetcTown($event)" v-model="addressfrom.townID">
-                                    <option value="" >请选择</option>
-                                    <option v-for="(item ,index) in townArray" :key="index" :value="item.townID"  >{{item.name}}</option>
-                                </select>
-                                <textarea placeholder="建议您如实填写详细地址,例如:街道名称,门牌号码,楼层和房间号等信息"  v-model="clubUpgradeUser.address"></textarea>
+                            <p><em>*</em>手机号:<span class="mm">{{bindMobile}}</span></p>
+                        </div>
+                        <template v-if="userIdentity === 2">
+                            <div class="title">升级信息</div>
+                            <div class="formLine">
+                                <p><em>*</em>机构名称:</p>
+                                <input type="text" v-model.trim="clubUpgradeUser.name" placeholder="请与营业执照的注册名称保持一致" :rule="rule.name" maxlength="30" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入正确的联系人姓名"></span>
                             </div>
-                            <i class="checked icon mIcon"></i>
-                            <span class="errTips icon mIcon" tips="请输入正确的联系地址"></span>
-                        </div>
-                        <div class="formLine">
-                            <p>营业执照编号:</p>
-                            <input type="text" v-model.trim="clubUpgradeUser.socialCreditCode" placeholder="请输入统一社会信用代码" maxlength="18">
-                        </div>
-                        <div class="formLine clear">
-                            <div class="form-upload">
-                                <p><em>*</em>营业执照图片:</p>
-                                <div class="form-upload-image" v-if="clubUpgradeUser.businessLicenseImage!=''">
-                                    <img class="upload-img" :src="clubUpgradeUser.businessLicenseImage" alt="" id="businessLicenseImage" @click="showViewerImageFn()">
-                                    <i class="icon mIcon" @click="deleteBusinessImage()"></i>
-                                </div>
-                                <div class="formLine-file" v-else>
-                                    <input ref="businessLicenseImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadBusinessLicenseImageFn">
-                                    <i class="icon mIcon file-biss"></i>
+                            <div class="formLine">
+                                <p><em>*</em>邮箱:</p>
+                                <input type="text" v-model.trim="clubUpgradeUser.contractEmail1" placeholder="请输入邮箱地址" :rule="rule.email" maxlength="32" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入正确的邮箱地址"></span>
+                            </div>
+                            <div class="formLine">
+                                <p>机构简称:</p>
+                                <input type="text" v-model.trim="clubUpgradeUser.sname" placeholder="请输入机构简称" maxlength="10" >
+                            </div>
+                            <div class="formLine">
+                                <p><em>*</em>联系地址:</p>
+                                <div class="address">
+                                    <select name="provinceID" id="cProvince" @change="ChangeProvince" v-model="addressfrom.provinceID">
+                                        <option value="" >请选择</option>
+                                        <option v-for="(item ,index) in ProvinceList" :key="index" :value='item.provinceID' >{{item.name}}</option>
+                                    </select>
+                                    <select name="cityID" id="cCity" @change="ChangeGetcity($event)" v-model="addressfrom.cityID">
+                                        <option value="" >请选择</option>
+                                        <option v-for="(item ,index) in cityArray" :key="index" :value="item.cityID" >{{item.name}}</option>
+                                    </select>
+                                    <select name="townID" id="cTown" @change="ChangeGetcTown($event)" v-model="addressfrom.townID">
+                                        <option value="" >请选择</option>
+                                        <option v-for="(item ,index) in townArray" :key="index" :value="item.townID"  >{{item.name}}</option>
+                                    </select>
+                                    <textarea placeholder="建议您如实填写详细地址,例如:街道名称,门牌号码,楼层和房间号等信息"  v-model="clubUpgradeUser.address"></textarea>
                                 </div>
-                                <span class="errTips icon mIcon"></span>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入正确的联系地址"></span>
                             </div>
-                            <div class="form-upload-tips">
-                                <i class="icon mIcon icon-wen"></i>
-                                <div class="wen-tips">点击图片可放大图片</div>
+                            <div class="formLine">
+                                <p>营业执照编号:</p>
+                                <input type="text" v-model.trim="clubUpgradeUser.socialCreditCode" placeholder="请输入统一社会信用代码" maxlength="20">
                             </div>
-                        </div>
-                        <div class="formLine clear">
-                            <div class="form-upload">
-                                <p>门头照:</p>
-                                <div class="form-upload-image" v-if="clubUpgradeUser.headpic!=''">
-                                    <img class="upload-img" :src="clubUpgradeUser.headpic" alt="" id="uploadMentuzImage" @click="showViewerImageFn1()">
-                                    <i class="icon mIcon" @click="deleteMentuzImage()"></i>
+                            <div class="formLine clear">
+                                <div class="form-upload">
+                                    <p><em>*</em>营业执照图片:</p>
+                                    <div class="form-upload-image" v-if="clubUpgradeUser.businessLicenseImage!=''">
+                                        <img class="upload-img" :src="clubUpgradeUser.businessLicenseImage" alt="" id="businessLicenseImage" @click="showViewerImageFn()">
+                                        <i class="icon mIcon" @click="deleteBusinessImage()"></i>
+                                    </div>
+                                    <div class="formLine-file" v-else>
+                                        <input ref="businessLicenseImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadBusinessLicenseImageFn">
+                                        <i class="icon mIcon file-biss"></i>
+                                    </div>
+                                    <span class="errTips icon mIcon"></span>
                                 </div>
-                                <div class="formLine-file" v-else>
-                                    <input ref="businessMentuImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadMentuzImageFn">
-                                    <i class="icon mIcon file-door"></i>
+                                <div class="form-upload-tips">
+                                    <i class="icon mIcon icon-wen"></i>
+                                    <div class="wen-tips">点击图片可放大图片</div>
                                 </div>
                             </div>
-                        </div>
-                        <div class="formLine">
-                            <p><em>*</em>机构类型:</p>
-                            <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="0" ><i class="icon mIcon">医美</i></label>
-                            <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="1" checked><i class="icon mIcon">生美</i></label>
-                            <span class="errTips icon mIcon" tips="请选择公司类型"></span>
-                        </div>
-                        <div v-show="clubUpgradeUser.firstClubType == 0" class="formLine">
-                            <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="1" checked><i class="icon mIcon">诊所</i></label>
-                            <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="2" ><i class="icon mIcon">门诊</i></label>
-                            <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="3" ><i class="icon mIcon">医院</i></label>
-                            <span class="errTips icon mIcon" tips="请选择公司类型"></span>
-                        </div>
-                        <div v-show="clubUpgradeUser.firstClubType == 0" class="formLine">
-                            <div class="form-upload">
-                                <p>资质:</p>
-                                <div class="form-upload-image" v-if="clubUpgradeUser.medicalPracticeLicenseImg!=''">
-                                    <img class="upload-img" :src="clubUpgradeUser.medicalPracticeLicenseImg" alt="" id="medicalPracticeLicenseImg" @click="showViewerImageFn2()">
-                                    <i class="icon mIcon" @click="deleteMedicalImage()"></i>
+                            <div class="formLine clear">
+                                <div class="form-upload">
+                                    <p>门头照:</p>
+                                    <div class="form-upload-image" v-if="clubUpgradeUser.headpic!=''">
+                                        <img class="upload-img" :src="clubUpgradeUser.headpic" alt="" id="uploadMentuzImage" @click="showViewerImageFn1()">
+                                        <i class="icon mIcon" @click="deleteMentuzImage()"></i>
+                                    </div>
+                                    <div class="formLine-file" v-else>
+                                        <input ref="businessMentuImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadMentuzImageFn">
+                                        <i class="icon mIcon file-door"></i>
+                                    </div>
                                 </div>
-                                <div class="formLine-file" v-else>
-                                    <input ref="businessMedicaImage" class="file" type="file"  accept="image/png,image/jpeg,image/gif,image/jpg" @change="uploadMedicaImageFn">
-                                    <i class="icon mIcon file-zizhi"></i>
+                            </div>
+                            <div class="formLine">
+                                <p><em>*</em>机构类型:</p>
+                                <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="1" ><i class="icon mIcon">医美</i></label>
+                                <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="2" checked><i class="icon mIcon">生美</i></label>
+                                <span class="errTips icon mIcon" tips="请选择公司类型"></span>
+                            </div>
+                            <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
+                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="1" checked><i class="icon mIcon">诊所</i></label>
+                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="2" ><i class="icon mIcon">门诊</i></label>
+                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="3" ><i class="icon mIcon">医院</i></label>
+                                <span class="errTips icon mIcon" tips="请选择公司类型"></span>
+                            </div>
+                            <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
+                                <div class="form-upload">
+                                    <p>资质:</p>
+                                    <div class="form-upload-image" v-if="clubUpgradeUser.medicalPracticeLicenseImg!=''">
+                                        <img class="upload-img" :src="clubUpgradeUser.medicalPracticeLicenseImg" alt="" id="medicalPracticeLicenseImg" @click="showViewerImageFn2()">
+                                        <i class="icon mIcon" @click="deleteMedicalImage()"></i>
+                                    </div>
+                                    <div class="formLine-file" v-else>
+                                        <input ref="businessMedicaImage" class="file" type="file"  accept="image/png,image/jpeg,image/gif,image/jpg" @change="uploadMedicaImageFn">
+                                        <i class="icon mIcon file-zizhi"></i>
+                                    </div>
+                                    <span class="errTips icon mIcon"></span>
+                                </div>
+                                <div class="form-upload-tips">
+                                    <i class="icon icon-wen"></i>
+                                    <div class="wen-tips">点击图片可放大图片</div>
                                 </div>
-                                <span class="errTips icon mIcon"></span>
                             </div>
-                            <div class="form-upload-tips">
-                                <i class="icon icon-wen"></i>
-                                <div class="wen-tips">点击图片可放大图片</div>
+                            <div v-if="clubUpgradeUser.secondClubType == 2 || clubUpgradeUser.secondClubType == 3" class="formLine">
+                                <p>科室:</p>
+                                <input type="text" v-model.trim="clubUpgradeUser.department" placeholder="请填写您所经营的科室,用逗号隔开.(至少三个)" maxlength="50">
                             </div>
-                        </div>
-                        <div v-if="clubUpgradeUser.secondClubType == 2 || clubUpgradeUser.secondClubType == 3" class="formLine">
-                            <p>科室:</p>
-                            <input type="text" v-model.trim="clubUpgradeUser.department" placeholder="请填写您所经营的科室,用逗号隔开.(至少三个)" maxlength="50">
-                        </div>
-                        <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 0">
-                            <p><em>*</em>主营内容:</p>
-                            <p class="business clear">
-                                <label v-for="pro in mentuzCampNullList" class="diyBox second" >
-                                    <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
-                                    <i class="icon mIcon">{{pro.name}}</i>
-                                </label>
-                            </p>
-                            <p class="business">
-                                <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
-                                <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
-                            </p>
-                            <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
-                        </div>
-                        <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 1">
-                            <p><em>*</em>主营内容:</p>
-                            <p class="business clear">
-                                <label v-for="pro in medicaCampNullList" class="diyBox second">
-                                    <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
-                                    <i class="icon mIcon">{{pro.name}}</i>
-                                </label>
-                            </p>
-                            <p class="business">
-                                <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
-                                <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
-                            </p>
-                            <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
-                        </div>
+                            <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 1">
+                                <p><em>*</em>主营内容:</p>
+                                <p class="business clear">
+                                    <label v-for="pro in medicaCampNullList" class="diyBox second" >
+                                        <input type="checkbox" name="secondClubType" v-model="clubUpgradeUser.mainpro" :value="pro.name" >
+                                        <i class="icon mIcon">{{pro.name}}</i>
+                                    </label>
+                                </p>
+                                <p class="business">
+                                    <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
+                                    <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
+                                </p>
+                                <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
+                            </div>
+                            <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 2">
+                                <p><em>*</em>主营内容:</p>
+                                <p class="business clear">
+                                    <label v-for="pro in mentuzCampNullList" class="diyBox second">
+                                        <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
+                                        <i class="icon mIcon">{{pro.name}}</i>
+                                    </label>
+                                </p>
+                                <p class="business">
+                                    <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
+                                    <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
+                                </p>
+                                <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
+                            </div>
+                        </template>
                         <div class="title">其他信息</div>
                         <div class="formLine">
                             <p>固定电话:</p>
-                            <input type="text" v-model.trim="clubUpgradeUser.name" placeholder="请输入公司的固定电话" maxlength="12">
+                            <input type="text" v-model.trim="clubUpgradeUser.contractPhone" placeholder="请输入公司的固定电话" maxlength="12">
                         </div>
                         <div class="formLine">
                             <p>传真:</p>
-                            <input type="text" v-model.trim="clubUpgradeUser.name" placeholder="请输入公司的传真" maxlength="12">
+                            <input type="text" v-model.trim="clubUpgradeUser.fax" placeholder="请输入公司的传真" maxlength="12">
                         </div>
                         <div class="formLine">
                             <p>公司介绍:</p>
                             <div class="address">
-                                <textarea placeholder="请输入公司的简介,最多500字!" maxlength="500"  v-model="clubUpgradeUser.address"></textarea>
+                                <textarea placeholder="请输入公司的简介,最多500字!" maxlength="500"  v-model="clubUpgradeUser.info"></textarea>
                             </div>
                         </div>
                         <div class="subLine">
-                            <button class="btn-upgrade" :class="loginLoading ? 'disabled':''" type="button" @click="clubUpgrade()">保存并提交</button>
+                            <button class="btn-upgrade" :class="loginLoading ? 'disabled':''" type="button" @click="clunConfirmFn()">保存并提交</button>
                         </div>
                     </form>
                 </div>

+ 92 - 2
src/main/resources/templates/user-center/setting/password.html

@@ -4,6 +4,7 @@
 <head>
     <title>采美365网-资料修改-中国美业全方位线上交易服务互动平台,做美业,上采美</title>
     <template th:replace="components/head-link"></template>
+    <link th:href="@{/css/base/form.css(v=${version})}" rel="stylesheet" type="text/css">
     <link th:href="@{/css/base/center.css(v=${version})}" rel="stylesheet" type="text/css">
     <link th:href="@{/css/user-center/setting/password.css(v=${version})}" rel="stylesheet" type="text/css">
 </head>
@@ -18,12 +19,101 @@
             <span>&gt;</span>
             <span>重置密码</span>
         </div>
-        <div class="wrap clear mf">
+        <div class="wrap clear">
             <!--左侧面包屑-->
             <template th:replace="user-center/components/tableft"></template>
             <div class="right">
+                <div class="right-header">
+                    <div class="header-tabs" :class="{ current: tabCurrentIndex === 1 }" @click="checkedFn(1)">使用手机修改</div>
+                    <div class="header-tabs" :class="{ current: tabCurrentIndex === 2 }" @click="checkedFn(2)">使用邮箱修改</div>
+                </div>
                 <div class="container clear">
-                    重置密码
+                    <div class="forget-form"  v-if="tabCurrentIndex == 1">
+                        <form>
+                            <div class="formLine" >
+                                <p><em>*</em>手机号:</p>
+                                <input  class="massageBtn"  type="text" v-model.trim="phonePwd.mobileOrEmail" placeholder="请输入手机号码" :rule="rule.phone" maxlength="11" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入有效的手机号码"></span>
+                            </div>
+                            <div class="formLine code">
+                                <p><em>*</em>短信验证码:</p>
+                                <input type="text" v-model.trim="phonePwd.activateCode" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入有效短信验证码"></span>
+                                <a class="getCode" href="javascript:void(0);" @click="getMobileImage" :class="[isMobileDisabled  ? 'disabled' : '']">{{ mobileCodeText }}</a>
+                            </div>
+                            <div class="formLine">
+                                <p><em>*</em>新密码:</p>
+                                <input type="password" v-model.trim="phonePwd.passWord" autocomplete="new-password" placeholder="请输入新密码,为8-16位数字和字母组合" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
+                                <i class="icon showPwd" @click="showPassword($event)"></i>
+                            </div>
+                            <div class="formLine">
+                                <p><em>*</em>确认密码:</p>
+                                <input type="password" v-model.trim="phonePwd.confirmPwd" autocomplete="new-password" placeholder="请再次确认新密码" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
+                                <i class="icon showPwd" @click="showPassword($event)"></i>
+                            </div>
+                            <div class="subLine">
+                                <button class="btn" type="button" :class="loginLoading ? 'disabled':''"  @click="findPhonePwd()">提交</button>
+                            </div>
+                        </form>
+                    </div>
+                    <div class="forget-form"  v-if="tabCurrentIndex == 2">
+                        <form>
+                            <div class="formLine" >
+                                <p><em>*</em>邮箱:</p>
+                                <input  class="emailMsgBtn"  type="text" v-model.trim="emailPwd.mobileOrEmail" placeholder="请输入邮箱" :rule="rule.email" maxlength="30" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入有效的邮箱地址"></span>
+                            </div>
+                            <div class="formLine code">
+                                <p><em>*</em>邮箱验证码:</p>
+                                <input type="text" v-model.trim="emailPwd.activateCode" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.emailCode"  maxlength="6" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入有效短信验证码"></span>
+                                <a class="getCode" href="javascript:void(0);" @click="getEmailCodeFn" :class="[isEmailDisabled  ? 'disabled' : '']">{{ emailCodeText }}</a>
+                            </div>
+                            <div class="formLine">
+                                <p><em>*</em>登录密码:</p>
+                                <input type="password" v-model.trim="emailPwd.passWord" autocomplete="new-password" placeholder="请输入新密码,为8-16位数字和字母组合" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
+                                <i class="icon showPwd" @click="showPassword($event)"></i>
+                            </div>
+                            <div class="formLine">
+                                <p><em>*</em>确认密码:</p>
+                                <input type="password" v-model.trim="emailPwd.confirmPwd" autocomplete="new-password" placeholder="请再次确认新密码" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
+                                <i class="icon showPwd" @click="showPassword($event)"></i>
+                            </div>
+                            <div class="subLine">
+                                <button class="btn" type="button" :class="loginLoading ? 'disabled':''"  @click="findEmailPwd()">提交</button>
+                            </div>
+                        </form>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div class="content-model"  :class="isCodeModel ? 'active' : ''">
+            <div class="model-main">
+                <div class="model-title"><p>获取短信验证码</p><i class="icon mIcon icon-close"  @click="closeCodeModel"></i></div>
+                <div class="model-content">
+                    <div class="model-form">
+                        <input class="input" type="text" placeholder="请输入图形验证码" v-model="imageCode" maxlength="4">
+                        <div class="image"><img :src="codeImagePath" alt=""></div>
+                        <div class="refresh" @click="refreshCodeImage">
+                            <i class="icon mIcon"></i>
+                            <span>刷新</span>
+                        </div>
+                    </div>
+                    <div class="model-button">
+                        <div class="button"  @click="getMobileCodeFn">获取短信验证码</div>
+                    </div>
                 </div>
             </div>
         </div>

+ 31 - 2
src/main/resources/templates/user-center/setting/phone.html

@@ -4,6 +4,7 @@
 <head>
     <title>采美365网-资料修改-中国美业全方位线上交易服务互动平台,做美业,上采美</title>
     <template th:replace="components/head-link"></template>
+    <link th:href="@{/css/base/form.css(v=${version})}" rel="stylesheet" type="text/css">
     <link th:href="@{/css/base/center.css(v=${version})}" rel="stylesheet" type="text/css">
     <link th:href="@{/css/user-center/setting/phone.css(v=${version})}" rel="stylesheet" type="text/css">
 </head>
@@ -18,12 +19,40 @@
             <span>&gt;</span>
             <span>更换手机号</span>
         </div>
-        <div class="wrap clear mf">
+        <div class="wrap clear">
             <!--左侧面包屑-->
             <template th:replace="user-center/components/tableft"></template>
             <div class="right">
+                <div class="header">
+                    <div class="header-p">本操作更换的是机构联系人的手机号,不是运营人员的手机号!</div>
+                </div>
                 <div class="container clear">
-                   更换手机号
+                    <div class="title"><span>*</span>原手机号:{{form.contractMobile2}}</div>
+                    <form>
+                        <div class="formLine code">
+                            <p><em>*</em>原手机号验证码:</p>
+                            <input type="text" v-model.trim="form.mobileCode" autocomplete="off" placeholder="请输入原手机号验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
+                            <i class="checked icon mIcon"></i>
+                            <span class="errTips icon mIcon" tips="请输入原手机号验证码"></span>
+                            <a class="getCode" href="javascript:void(0);" @click="getMobileCodeFn" :class="[isMobileDisabled  ? 'disabled' : '']">{{ mobileCodeText }}</a>
+                        </div>
+                        <div class="formLine" >
+                            <p><em>*</em>新手机号:</p>
+                            <input  class="massageBtn"  type="text" v-model.trim="form.contractMobile" placeholder="请输入新手机号码" :rule="rule.phone" maxlength="11" @blur="blurHandle($event)" needverify>
+                            <i class="checked icon mIcon"></i>
+                            <span class="errTips icon mIcon" tips="请输入新手机号码"></span>
+                        </div>
+                        <div class="formLine code">
+                            <p><em>*</em>新手机号验证码:</p>
+                            <input type="text" v-model.trim="form.newMobileCode" autocomplete="off" placeholder="请输入新手机号验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
+                            <i class="checked icon mIcon"></i>
+                            <span class="errTips icon mIcon" tips="请输入新手机号验证码"></span>
+                            <a class="getCode" href="javascript:void(0);" @click="getNewMobileCodeFn" :class="[isNewMobileDisabled  ? 'disabled' : '']">{{ newMobileCodeText }}</a>
+                        </div>
+                        <div class="subLine">
+                            <button class="btn" type="button" :class="loginLoading ? 'disabled':''"  @click="bindMobileCheck()">确认更换</button>
+                        </div>
+                    </form>
                 </div>
             </div>
         </div>