From e6acb39a2475e211f2c1decc45a95c868239c25f Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期五, 18 十月 2024 14:28:32 +0800
Subject: [PATCH] ll

---
 admin/src/components/common/CommonHeader.vue |   82 ++++++++++++++++++++++++++++++++++++----
 1 files changed, 73 insertions(+), 9 deletions(-)

diff --git a/admin/src/components/common/CommonHeader.vue b/admin/src/components/common/CommonHeader.vue
index 5afc768..8af6eef 100644
--- a/admin/src/components/common/CommonHeader.vue
+++ b/admin/src/components/common/CommonHeader.vue
@@ -2,13 +2,16 @@
   <div class="common-header">
     <div class="header">
       <div class="logo">
-        <div>{{ title }}</div>
+        <div class="title">{{ title }}</div>
         <div class="list">
-          <div class="item">鏈嶅姟涓績</div>
-          <div class="item">瀹夐槻涓績</div>
-          <div class="item">娑堥槻涓績</div>
-          <div class="item">鑳界涓績</div>
-          <div class="item">椹鹃┒鑸�</div>
+          <div class="item active">
+            <div>鏈嶅姟涓績</div>
+            <div class="linellae"></div>
+          </div>
+          <div class="item" @click="getHeaderNav('0')">瀹夐槻涓績</div>
+          <div class="item" @click="getHeaderNav('1')">娑堟帶涓績</div>
+          <div class="item" @click="getHeaderNav('2')">鑳界涓績</div>
+          <div class="item" @click="getHeaderNav('3')">椹鹃┒鑸�</div>
         </div>
         <!-- <div class="title-en">Diagnosis of Intelligent Manufacturing Integrated Service Platfrom</div> -->
       </div>
@@ -81,6 +84,7 @@
 import { mapState, mapMutations } from 'vuex'
 import GlobalAlertWindow from './GlobalAlertWindow'
 import { logout, updatePwd } from '@/api/system/common'
+import { getAppHeaderNav } from '@/api'
 export default {
   name: 'CommonHeader',
   components: { GlobalAlertWindow },
@@ -93,6 +97,7 @@
   data() {
     return {
       title: process.env.VUE_APP_TITLE,
+      headerNavData: {},
       visible: {
         // 淇敼瀵嗙爜
         changePwd: false
@@ -114,7 +119,8 @@
             { required: true, message: '璇疯緭鍏ュ師濮嬪瘑鐮�' }
           ],
           newPwd: [
-            { required: true, message: '璇疯緭鍏ユ柊瀵嗙爜' }
+          { required: true, message: '璇疯緭鍏ュ瘑鐮�', trigger: 'blur' },
+          { validator: this.validatePassword, trigger: 'blur' },
           ],
           confirmPwd: [
             { required: true, message: '璇峰啀娆¤緭鍏ユ柊瀵嗙爜' }
@@ -128,6 +134,10 @@
     // title () {
     //   return this.$route.meta.title
     // }
+  },
+  mounted() {
+    console.log('userInfo',this.userInfo);
+    
   },
   filters: {
     // 灞曠ず鍚嶇О
@@ -148,6 +158,31 @@
       this.visible.changePwd = true
       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 => {
+        window.open(res, "_blank");
       })
     },
     // 纭畾淇敼瀵嗙爜
@@ -204,6 +239,31 @@
 .common-header {
   background-color: #2080f7;
 }
+.list{
+  flex: 1;
+  display: flex;
+  align-items: center;
+  margin-left: 60px;
+  .item{
+    margin-right: 40px;
+    font-size: 16px;
+    font-weight: 400;
+    display: flex;
+    flex-direction: column;
+    align-items: center;
+    justify-content: flex-start;
+    height: 40px;
+    cursor: pointer;
+    .linellae{
+      width: 64px;
+      height: 2px;
+      background: #FFFFFF;
+    }
+  }
+  .active{
+    font-weight: 500;
+  }
+}
 .header {
   overflow: hidden;
   // background: #fff;
@@ -214,7 +274,7 @@
   .logo {
     /* background: url("../../assets/images/top_ic_chilun@2x.png") no-repeat; */
     box-sizing: border-box;
-    min-width: 280px;
+    min-width: 360px;
     height: 56px;
     padding: 10px 30px;
     // flex-shrink: 0;
@@ -224,6 +284,9 @@
     color: #fff;
     display: flex;
     align-items: center;
+    .title{
+      width: 200px;
+    }
     // display: inline;
     .title-en {
       font-size: 11px;
@@ -232,13 +295,14 @@
     }
   }
   .user {
-    width: 712px;
+    width: 212px;
     box-sizing: border-box;
     height: 56px;
     padding-right: 25px;
     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