xcx пре 4 година
родитељ
комит
4a7cf7c489

+ 12
- 31
package-lock.json Прегледај датотеку

1798
       "dependencies": {
1798
       "dependencies": {
1799
         "regenerator-runtime": {
1799
         "regenerator-runtime": {
1800
           "version": "0.10.5",
1800
           "version": "0.10.5",
1801
-          "resolved": "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.10.5.tgz?cache=0&sync_timestamp=1595456095182&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerator-runtime%2Fdownload%2Fregenerator-runtime-0.10.5.tgz",
1801
+          "resolved": "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.10.5.tgz",
1802
           "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg="
1802
           "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg="
1803
         }
1803
         }
1804
       }
1804
       }
5575
         "ansi-regex": {
5575
         "ansi-regex": {
5576
           "version": "2.1.1",
5576
           "version": "2.1.1",
5577
           "bundled": true,
5577
           "bundled": true,
5578
-          "dev": true,
5579
-          "optional": true
5578
+          "dev": true
5580
         },
5579
         },
5581
         "aproba": {
5580
         "aproba": {
5582
           "version": "1.2.0",
5581
           "version": "1.2.0",
5597
         "balanced-match": {
5596
         "balanced-match": {
5598
           "version": "1.0.0",
5597
           "version": "1.0.0",
5599
           "bundled": true,
5598
           "bundled": true,
5600
-          "dev": true,
5601
-          "optional": true
5599
+          "dev": true
5602
         },
5600
         },
5603
         "brace-expansion": {
5601
         "brace-expansion": {
5604
           "version": "1.1.11",
5602
           "version": "1.1.11",
5605
           "bundled": true,
5603
           "bundled": true,
5606
           "dev": true,
5604
           "dev": true,
5607
-          "optional": true,
5608
           "requires": {
5605
           "requires": {
5609
             "balanced-match": "^1.0.0",
5606
             "balanced-match": "^1.0.0",
5610
             "concat-map": "0.0.1"
5607
             "concat-map": "0.0.1"
5619
         "code-point-at": {
5616
         "code-point-at": {
5620
           "version": "1.1.0",
5617
           "version": "1.1.0",
5621
           "bundled": true,
5618
           "bundled": true,
5622
-          "dev": true,
5623
-          "optional": true
5619
+          "dev": true
5624
         },
5620
         },
5625
         "concat-map": {
5621
         "concat-map": {
5626
           "version": "0.0.1",
5622
           "version": "0.0.1",
5627
           "bundled": true,
5623
           "bundled": true,
5628
-          "dev": true,
5629
-          "optional": true
5624
+          "dev": true
5630
         },
5625
         },
5631
         "console-control-strings": {
5626
         "console-control-strings": {
5632
           "version": "1.1.0",
5627
           "version": "1.1.0",
5633
           "bundled": true,
5628
           "bundled": true,
5634
-          "dev": true,
5635
-          "optional": true
5629
+          "dev": true
5636
         },
5630
         },
5637
         "core-util-is": {
5631
         "core-util-is": {
5638
           "version": "1.0.2",
5632
           "version": "1.0.2",
5749
         "inherits": {
5743
         "inherits": {
5750
           "version": "2.0.3",
5744
           "version": "2.0.3",
5751
           "bundled": true,
5745
           "bundled": true,
5752
-          "dev": true,
5753
-          "optional": true
5746
+          "dev": true
5754
         },
5747
         },
5755
         "ini": {
5748
         "ini": {
5756
           "version": "1.3.5",
5749
           "version": "1.3.5",
5762
           "version": "1.0.0",
5755
           "version": "1.0.0",
5763
           "bundled": true,
5756
           "bundled": true,
5764
           "dev": true,
5757
           "dev": true,
5765
-          "optional": true,
5766
           "requires": {
5758
           "requires": {
5767
             "number-is-nan": "^1.0.0"
5759
             "number-is-nan": "^1.0.0"
5768
           }
5760
           }
5777
           "version": "3.0.4",
5769
           "version": "3.0.4",
5778
           "bundled": true,
5770
           "bundled": true,
5779
           "dev": true,
5771
           "dev": true,
5780
-          "optional": true,
5781
           "requires": {
5772
           "requires": {
5782
             "brace-expansion": "^1.1.7"
5773
             "brace-expansion": "^1.1.7"
5783
           }
5774
           }
5785
         "minimist": {
5776
         "minimist": {
5786
           "version": "0.0.8",
5777
           "version": "0.0.8",
5787
           "bundled": true,
5778
           "bundled": true,
5788
-          "dev": true,
5789
-          "optional": true
5779
+          "dev": true
5790
         },
5780
         },
5791
         "minipass": {
5781
         "minipass": {
5792
           "version": "2.2.4",
5782
           "version": "2.2.4",
5793
           "bundled": true,
5783
           "bundled": true,
5794
           "dev": true,
5784
           "dev": true,
5795
-          "optional": true,
5796
           "requires": {
5785
           "requires": {
5797
             "safe-buffer": "^5.1.1",
5786
             "safe-buffer": "^5.1.1",
5798
             "yallist": "^3.0.0"
5787
             "yallist": "^3.0.0"
5811
           "version": "0.5.1",
5800
           "version": "0.5.1",
5812
           "bundled": true,
5801
           "bundled": true,
5813
           "dev": true,
5802
           "dev": true,
5814
-          "optional": true,
5815
           "requires": {
5803
           "requires": {
5816
             "minimist": "0.0.8"
5804
             "minimist": "0.0.8"
5817
           }
5805
           }
5892
         "number-is-nan": {
5880
         "number-is-nan": {
5893
           "version": "1.0.1",
5881
           "version": "1.0.1",
5894
           "bundled": true,
5882
           "bundled": true,
5895
-          "dev": true,
5896
-          "optional": true
5883
+          "dev": true
5897
         },
5884
         },
5898
         "object-assign": {
5885
         "object-assign": {
5899
           "version": "4.1.1",
5886
           "version": "4.1.1",
5905
           "version": "1.4.0",
5892
           "version": "1.4.0",
5906
           "bundled": true,
5893
           "bundled": true,
5907
           "dev": true,
5894
           "dev": true,
5908
-          "optional": true,
5909
           "requires": {
5895
           "requires": {
5910
             "wrappy": "1"
5896
             "wrappy": "1"
5911
           }
5897
           }
5991
         "safe-buffer": {
5977
         "safe-buffer": {
5992
           "version": "5.1.1",
5978
           "version": "5.1.1",
5993
           "bundled": true,
5979
           "bundled": true,
5994
-          "dev": true,
5995
-          "optional": true
5980
+          "dev": true
5996
         },
5981
         },
5997
         "safer-buffer": {
5982
         "safer-buffer": {
5998
           "version": "2.1.2",
5983
           "version": "2.1.2",
6028
           "version": "1.0.2",
6013
           "version": "1.0.2",
6029
           "bundled": true,
6014
           "bundled": true,
6030
           "dev": true,
6015
           "dev": true,
6031
-          "optional": true,
6032
           "requires": {
6016
           "requires": {
6033
             "code-point-at": "^1.0.0",
6017
             "code-point-at": "^1.0.0",
6034
             "is-fullwidth-code-point": "^1.0.0",
6018
             "is-fullwidth-code-point": "^1.0.0",
6048
           "version": "3.0.1",
6032
           "version": "3.0.1",
6049
           "bundled": true,
6033
           "bundled": true,
6050
           "dev": true,
6034
           "dev": true,
6051
-          "optional": true,
6052
           "requires": {
6035
           "requires": {
6053
             "ansi-regex": "^2.0.0"
6036
             "ansi-regex": "^2.0.0"
6054
           }
6037
           }
6092
         "wrappy": {
6075
         "wrappy": {
6093
           "version": "1.0.2",
6076
           "version": "1.0.2",
6094
           "bundled": true,
6077
           "bundled": true,
6095
-          "dev": true,
6096
-          "optional": true
6078
+          "dev": true
6097
         },
6079
         },
6098
         "yallist": {
6080
         "yallist": {
6099
           "version": "3.0.2",
6081
           "version": "3.0.2",
6100
           "bundled": true,
6082
           "bundled": true,
6101
-          "dev": true,
6102
-          "optional": true
6083
+          "dev": true
6103
         }
6084
         }
6104
       }
6085
       }
6105
     },
6086
     },

+ 90
- 0
src/pages/WoDe/EditMiMa/index.vue Прегледај датотеку

1
+<template>
2
+  <div class="Page">
3
+    <MainPageContainer :ShowMainHeader="true" :ShowMainHeaderBack="true" MainHeaderTitle="修改密码" @UserInfoChange="Init">
4
+      <div class="PageContainer">
5
+        <div class="Form">
6
+          <input type="password" placeholder="请输入原始密码" v-model="LoginPassword" @input="LoginPassword = LoginPassword.substring(0, 12)">
7
+        </div>
8
+        <div class="Form">
9
+          <input type="password" placeholder="请输入新密码" v-model="NewPassword" @input="NewPassword = NewPassword.substring(0, 12)">
10
+        </div>
11
+        <div class="Form">
12
+          <input type="password" placeholder="请确认您的密码" v-model="PasswordAgain" @input="PasswordAgain = PasswordAgain.substring(0, 12)">
13
+        </div>
14
+        <div class="Btn">
15
+          <a @click="EditMiMa">确认</a>
16
+        </div>
17
+      </div>
18
+    </MainPageContainer>
19
+  </div>
20
+</template>
21
+
22
+<script>
23
+import md5 from 'js-md5'
24
+import MainPageContainer from '../../../components/common/MainPageContainer'
25
+import { createNamespacedHelpers } from 'vuex'
26
+const { mapState: mapUserState, mapActions: mapUserActions } = createNamespacedHelpers('user')
27
+export default {
28
+  name: '',
29
+  data () {
30
+    return {
31
+      LoginPassword: '',
32
+      NewPassword: '',
33
+      PasswordAgain: '',
34
+      DataLock: false
35
+    }
36
+  },
37
+  computed: {
38
+    ...mapUserState({
39
+      UserInfo: x => x.UserInfo
40
+    })
41
+  },
42
+  components: {
43
+    MainPageContainer
44
+  },
45
+  created () {
46
+  },
47
+  mounted () {
48
+    this.$nextTick(() => {
49
+    })
50
+  },
51
+  methods: {
52
+    ...mapUserActions([
53
+      'EditPassword'
54
+    ]),
55
+    Init () {
56
+    },
57
+    EditMiMa () {
58
+      if (this.DataLock || this.NewPassword === '' || this.PasswordAgain === '' || (this.UserInfo.cashPass !== null && this.LoginPassword === '')) return
59
+      this.DataLock = true
60
+      if (this.LoginPassword === '') {
61
+        this.Toast('原始密码不能为空')
62
+        this.DataLock = false
63
+        return false
64
+      }
65
+      if (this.NewPassword !== this.PasswordAgain) {
66
+        this.Toast('新密码与确认密码不一致')
67
+        this.DataLock = false
68
+        return false
69
+      }
70
+      this.EditPassword({ data: { newPassword: md5(this.NewPassword), originPassword: md5(this.LoginPassword) } }).then(() => {
71
+        this.Toast('修改密码成功')
72
+        this.DataLock = false
73
+        window.localStorage.niucaiadminname = null
74
+        window.localStorage.niucaiadminpassword = null
75
+        window.setTimeout(() => {
76
+          this.$router.push({ name: 'SignIn' })
77
+        }, 1000)
78
+      }).catch((res) => {
79
+        this.Toast(res.data.message)
80
+        this.DataLock = false
81
+      })
82
+    }
83
+  }
84
+}
85
+</script>
86
+
87
+<!-- Add "scoped" attribute to limit CSS to this component only -->
88
+<style lang="scss" scoped>
89
+@import "page.scss";
90
+</style>

+ 45
- 0
src/pages/WoDe/EditMiMa/page.scss Прегледај датотеку

1
+.Page {
2
+  background: #f2f2f2;
3
+  width: 100%;
4
+  height: 100%;
5
+  position: relative;
6
+  overflow: hidden;
7
+  .PageContainer {
8
+    width: 100%;
9
+    height: 100%;
10
+    position: relative;
11
+    overflow-y: scroll;
12
+    -webkit-overflow-scrolling: touch;
13
+    > .Form {
14
+      padding: 0.15rem;
15
+      background: #fff;
16
+      > input {
17
+        display: block;
18
+        font-size: 0.14rem;
19
+        line-height: 0.2rem;
20
+        width: 100%;
21
+      }
22
+    }
23
+    > span {
24
+      display: block;
25
+      font-size: 0.12rem;
26
+      color: #adadad;
27
+      line-height: 0.2rem;
28
+      margin-top: 0.05rem;
29
+      text-indent: 0.15rem;
30
+    }
31
+    > .Btn {
32
+      padding: 0 0.15rem;
33
+      margin-top: 0.5rem;
34
+      > a {
35
+        display: block;
36
+        text-align: center;
37
+        font-size: 0.16rem;
38
+        color: #fff;
39
+        background: #d91d36;
40
+        border-radius: 0.06rem;
41
+        line-height: 0.42rem;
42
+      }
43
+    }
44
+  }
45
+}

+ 4
- 0
src/pages/WoDe/GeRenSheZhi/index.vue Прегледај датотеку

2
   <div class="Page">
2
   <div class="Page">
3
     <MainPageContainer :ShowMainHeader="true" :MainHeaderTitle="`个人设置`" :ShowMainHeaderBack="true">
3
     <MainPageContainer :ShowMainHeader="true" :MainHeaderTitle="`个人设置`" :ShowMainHeaderBack="true">
4
       <ul>
4
       <ul>
5
+        <li class="flex-h">
6
+          <router-link tag="span" class="flex-item" :to="{ name: 'EditMiMa' }">修改密码</router-link>
7
+          <i class="iconfont iconjiantouright"></i>
8
+        </li>
5
         <li class="flex-h">
9
         <li class="flex-h">
6
           <router-link tag="span" class="flex-item" :to="{ name: 'GuanYuWoMen' }">关于我们</router-link>
10
           <router-link tag="span" class="flex-item" :to="{ name: 'GuanYuWoMen' }">关于我们</router-link>
7
           <i class="iconfont iconjiantouright"></i>
11
           <i class="iconfont iconjiantouright"></i>

+ 5
- 0
src/router/index.js Прегледај датотеку

93
             name: 'GuanYuWoMen',
93
             name: 'GuanYuWoMen',
94
             component: resolve => (require(['@/pages/WoDe/GuanYuWoMen'], resolve))
94
             component: resolve => (require(['@/pages/WoDe/GuanYuWoMen'], resolve))
95
           },
95
           },
96
+          {
97
+            path: '/WoDe/EditMiMa', // 个人中心-修改密码
98
+            name: 'EditMiMa',
99
+            component: resolve => (require(['@/pages/WoDe/EditMiMa'], resolve))
100
+          },
96
           {
101
           {
97
             path: '/WoDe/XiaZaiErWeiMa', // 个人中心-下载二维码
102
             path: '/WoDe/XiaZaiErWeiMa', // 个人中心-下载二维码
98
             name: 'XiaZaiErWeiMa',
103
             name: 'XiaZaiErWeiMa',

+ 5
- 0
src/store/user/index.js Прегледај датотеку

79
     }
79
     }
80
   },
80
   },
81
   actions: {
81
   actions: {
82
+    EditPassword (context, payload) { // 修改密码
83
+      return new Promise((resolve, reject) => {
84
+        ToolClass.Axios(resolve, reject, Api.EditPassword, context, payload, 1000)
85
+      })
86
+    },
82
     AliShiMingRenZheng (context, payload) { // 支付宝实名认证
87
     AliShiMingRenZheng (context, payload) { // 支付宝实名认证
83
       return new Promise((resolve, reject) => {
88
       return new Promise((resolve, reject) => {
84
         ToolClass.Axios(resolve, reject, Api.AliShiMingRenZheng, context, payload, 1000)
89
         ToolClass.Axios(resolve, reject, Api.AliShiMingRenZheng, context, payload, 1000)

+ 4
- 0
src/util/Api.js Прегледај датотеку

2
 const prefix = '/api'
2
 const prefix = '/api'
3
 
3
 
4
 const $api = {
4
 const $api = {
5
+  EditPassword: { // 修改密码
6
+    method: 'put',
7
+    url: `${prefix}/shop/resetpassword`
8
+  },
5
   AliShiMingRenZheng: { // 支付宝实名认证
9
   AliShiMingRenZheng: { // 支付宝实名认证
6
     method: 'put',
10
     method: 'put',
7
     url: `${prefix}/app/shop/:id`
11
     url: `${prefix}/app/shop/:id`