From 0ed2002103cfe3d0892ee2468d98b7d3fad8e7b9 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期五, 18 十月 2024 15:45:06 +0800
Subject: [PATCH] ll

---
 admin/src/components/common/CommonHeader.vue |   39 +++++++++++++++++++++++++++++++++++----
 1 files changed, 35 insertions(+), 4 deletions(-)

diff --git a/admin/src/components/common/CommonHeader.vue b/admin/src/components/common/CommonHeader.vue
index cc86262..4b5996f 100644
--- a/admin/src/components/common/CommonHeader.vue
+++ b/admin/src/components/common/CommonHeader.vue
@@ -9,7 +9,7 @@
             <div class="linellae"></div>
           </div>
           <div class="item" @click="getHeaderNav('0')">瀹夐槻涓績</div>
-          <div class="item" @click="getHeaderNav('1')">娑堥槻涓績</div>
+          <div class="item" @click="getHeaderNav('1')">娑堟帶涓績</div>
           <div class="item" @click="getHeaderNav('2')">鑳界涓績</div>
           <div class="item" @click="getHeaderNav('3')">椹鹃┒鑸�</div>
         </div>
@@ -40,6 +40,8 @@
     <GlobalAlertWindow
       title="淇敼瀵嗙爜"
       :visible.sync="visible.changePwd"
+      :showClose="!userInfo.needChangePwd || userInfo.needChangePwd == '1'"
+      :showCancel="userInfo.needChangePwd && userInfo.needChangePwd == '0'"
       @confirm="confirmChangePwd"
       @close="visible.changePwd = false"
     >
@@ -62,7 +64,7 @@
             v-model="changePwdData.form.newPwd"
             type="password"
             placeholder="璇疯緭鍏ユ柊瀵嗙爜"
-            maxlength="30"
+            maxlength="20"
             show-password
           ></el-input>
         </el-form-item>
@@ -71,7 +73,7 @@
             v-model="changePwdData.form.confirmPwd"
             type="password"
             placeholder="璇峰啀娆¤緭鍏ユ柊瀵嗙爜"
-            maxlength="30"
+            maxlength="20"
             show-password
           ></el-input>
         </el-form-item>
@@ -119,7 +121,8 @@
             { required: true, message: '璇疯緭鍏ュ師濮嬪瘑鐮�' }
           ],
           newPwd: [
-            { required: true, message: '璇疯緭鍏ユ柊瀵嗙爜' }
+          { required: true, message: '璇疯緭鍏ュ瘑鐮�', trigger: 'blur' },
+          { validator: this.validatePassword, trigger: 'blur' },
           ],
           confirmPwd: [
             { required: true, message: '璇峰啀娆¤緭鍏ユ柊瀵嗙爜' }
@@ -133,6 +136,13 @@
     // title () {
     //   return this.$route.meta.title
     // }
+  },
+  mounted() {
+    // console.log('userInfo',this.userInfo);
+    if(!this.userInfo.needChangePwd || this.userInfo.needChangePwd == '0'){
+      this.visible.changePwd = true
+    }
+    
   },
   filters: {
     // 灞曠ず鍚嶇О
@@ -154,6 +164,26 @@
       this.$nextTick(() => {
         this.$refs.changePwdDataForm.resetFields()
       })
+    },
+    validatePassword(rule, value, callback) {
+      if (!value) {
+        callback(new Error('璇疯緭鍏ュ瘑鐮�'));
+      } else {
+        const lengthValid = /^.{6,20}$/.test(value);
+        const hasLetter = /[a-zA-Z]/.test(value);
+        const hasNumber = /[0-9]/.test(value);
+        const hasSpecial = /[!@#$%^&*(),.?":{}|<>]/.test(value);
+
+        const typesCount = [hasLetter, hasNumber, hasSpecial].filter(Boolean).length;
+
+        if (!lengthValid) {
+          callback(new Error('瀵嗙爜闀垮害闇�涓�6鍒�20涓瓧绗�'));
+        } else if (typesCount < 2) {
+          callback(new Error('瀵嗙爜闇�鍖呭惈瀛楁瘝銆佹暟瀛楀強鐗规畩瀛楃涓殑鑷冲皯涓ょ'));
+        } else {
+          callback(); // 楠岃瘉閫氳繃
+        }
+      }
     },
     getHeaderNav(type){
       getAppHeaderNav(type).then(res => {
@@ -277,6 +307,7 @@
     background: url("../../assets/images/top_ic_bolang@2x.png") no-repeat;
     flex-shrink: 0;
     text-align: right;
+    cursor: pointer;
     .el-dropdown {
       top: 2px;
       color: #fff;

--
Gitblit v1.9.3