From 41d50b20c975faeaa9e5277bdcff13b5acecb575 Mon Sep 17 00:00:00 2001
From: qushaowei <qushaowei@163.com>
Date: 星期三, 13 十二月 2023 16:57:37 +0800
Subject: [PATCH] Merge branch 'master' of http://117.34.109.166:18448/r/vue_mdc_430 into develop

---
 src/components/tools/UserPassword.vue |   62 ++++++++++++++++++++++---------
 1 files changed, 44 insertions(+), 18 deletions(-)

diff --git a/src/components/tools/UserPassword.vue b/src/components/tools/UserPassword.vue
index ff16648..0067138 100644
--- a/src/components/tools/UserPassword.vue
+++ b/src/components/tools/UserPassword.vue
@@ -31,14 +31,13 @@
           label="纭鏂板瘑鐮�">
           <a-input type="password" @blur="handleConfirmBlur" placeholder="璇风‘璁ゆ柊瀵嗙爜" v-decorator="[ 'confirmpassword', validatorRules.confirmpassword]"/>
         </a-form-item>
-
       </a-form>
     </a-spin>
   </a-modal>
 </template>
 
 <script>
-
+  import { ajaxGetDictItems, getDictItemsFromCache } from '@/api/api'
   import { putAction } from '@/api/manage'
 
   export default {
@@ -57,10 +56,14 @@
           },
           password:{
             rules: [{
-              required: true, message: '璇疯緭鍏ユ柊瀵嗙爜!',
+              required: true, message: '璇疯緭鍏ユ柊瀵嗙爜!',trigger:'blur'
             }, {
               validator: this.validateToNextPassword,
-            }],
+            },
+              {
+                pattern: /^(?=.*[a-zA-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,./]).{8,}$/,
+                message: '瀵嗙爜鐢�8浣嶆暟瀛椼�佸ぇ灏忓啓瀛楁瘝鍜岀壒娈婄鍙风粍鎴�!',
+              }],
           },
           confirmpassword:{
             rules: [{
@@ -85,6 +88,13 @@
         username:"",
       }
     },
+    watch:{
+      visible:{
+        handler(value){
+          if(value) this.initDictData('password_length')
+        }
+      }
+    },
     methods: {
       show(uname){
         if(!uname){
@@ -95,6 +105,18 @@
           this.form.resetFields();
           this.visible = true;
         }
+      },
+      initDictData(dictCode) {
+        //鏍规嵁瀛楀吀Code, 鍒濆鍖栧瓧鍏告暟缁�
+        ajaxGetDictItems(dictCode, null).then((res) => {
+          if (res.success) {
+            const regExp = new RegExp("^(?=.*[a-zA-Z])(?=.*\\\d)(?=.*[~!@#$%^&*()_+`\\-={}:\";'<>?,./]).{"+Number(res.result[0].value)+",}$");
+            this.validatorRules.password.rules[2]={
+              pattern: regExp,
+              message: `瀵嗙爜鐢�${res.result[0].value}浣嶆暟瀛椼�佸ぇ灏忓啓瀛楁瘝鍜岀壒娈婄鍙风粍鎴�!`,
+            }
+          }
+        })
       },
       handleCancel () {
         this.close()
@@ -110,20 +132,24 @@
         // 瑙﹀彂琛ㄥ崟楠岃瘉
         this.form.validateFields((err, values) => {
           if (!err) {
-            that.confirmLoading = true;
-            let params = Object.assign({username:this.username},values)
-            console.log("淇敼瀵嗙爜鎻愪氦鏁版嵁",params)
-            putAction(this.url,params).then((res)=>{
-              if(res.success){
-                console.log(res)
-                that.$message.success(res.message);
-                that.close();
-              }else{
-                that.$message.warning(res.message);
-              }
-            }).finally(() => {
-              that.confirmLoading = false;
-            })
+            if(values.oldpassword!==values.confirmpassword){
+              that.confirmLoading = true;
+              let params = Object.assign({username:this.username},values)
+              console.log("淇敼瀵嗙爜鎻愪氦鏁版嵁",params)
+              putAction(this.url,params).then((res)=>{
+                if(res.success){
+                  console.log(res)
+                  that.$message.success(res.message);
+                  that.close();
+                }else{
+                  that.$message.warning(res.message);
+                }
+              }).finally(() => {
+                that.confirmLoading = false;
+              })
+            }else{
+              that.$message.warning('鏂板瘑鐮佷笌鏃у瘑鐮佷笉鑳界浉鍚�');
+            }
           }
         })
       },

--
Gitblit v1.9.3