From d24c9dde20cba23b96082b4db81b5223c75e4ea9 Mon Sep 17 00:00:00 2001
From: odc.xiaohui <xiaohui@Q1>
Date: 星期三, 08 三月 2023 09:06:28 +0800
Subject: [PATCH] 身份证正反面调整

---
 src/views/layout/components/Header/index.vue |  310 ++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 208 insertions(+), 102 deletions(-)

diff --git a/src/views/layout/components/Header/index.vue b/src/views/layout/components/Header/index.vue
index 8525a7c..1fa1ed9 100644
--- a/src/views/layout/components/Header/index.vue
+++ b/src/views/layout/components/Header/index.vue
@@ -1,24 +1,46 @@
 <template>
   <!-- 澶撮儴 -->
-  <el-header>
+  <el-header v-if="show">
     <!-- 宸︿晶鑿滃崟 -->
     <div class="header-left">
       <div class="menu-left__item" v-for="(item, index) in menuLeftList" :key="item.id" @click="changeActive(index)">
-        <span :class="item.checked ? 'my-active' : ''">{{ item.label }}</span>
+        <span :class="item.checked ? 'my-active' : 'my-activeno'" @click="menuChange(item)">{{ item.label }}</span>
       </div>
     </div>
     <!-- 鍙充晶鑿滃崟 -->
     <div class="header-right">
-      <!-- 鎼滅储妗� -->
-      <div class="menu-right__item search">
-        <el-input suffix-icon="el-icon-search" v-model="keyword" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�"></el-input>
+      <div class="menu-right__item search"></div>
+      <!-- 娑堟伅 -->
+      <div class="menu-right__item btn" @mousemove="flag.message = true" @mouseleave="flag.message = false">
+        <el-tooltip effect="dark" content="娑堟伅涓績" placement="bottom-end" :hide-after="600">
+          <el-badge :value="messageCounts" class="item">
+            <i @click="getMessage" class="el-icon-message-solid"></i>
+          </el-badge>
+        </el-tooltip>
+        <!-- 娑堟伅鎿嶄綔 -->
+        <div class="message-card" v-if="flag.message" @mouseleave="flag.message = false">
+          <el-card class="box-card">
+            <div class="card-header">
+              <span>娑堟伅涓績</span>
+              <el-button type="text" @click="channelSetting">鎺ユ敹璁剧疆</el-button>
+            </div>
+            <div v-for="item in menuMessageList" :key="item.id" class="message-card__item">
+              <router-link to='/home/operate/message/messageIndex'>
+                <span class="label">{{ item.columnName }}</span>
+              </router-link>
+              <span>({{ item.messageNumber }})</span>
+            </div>
+          </el-card>
+        </div>
       </div>
       <!-- 鐧诲綍鐢ㄦ埛 -->
       <div class="menu-right__item user" @mousemove="flag.user = true" @mouseleave="flag.user = false">
+        <span class="user-span">|</span>
         <el-avatar :size="20" :src="user.user.icon" v-if="user.user.icon"></el-avatar>
         <el-avatar :size="20" src="https://cube.elemecdn.com/3/7c/3ea6beec64369c2642b92c6726f1epng.png" v-else>
         </el-avatar>
-        <span style="padding: 0 5px;">{{ user.user.username}}</span>
+
+        <span style="padding: 0 5px;">{{ user.user.username }}</span>
         <i class="el-icon-arrow-down"></i>
         <!-- 鐢ㄦ埛鎿嶄綔 -->
         <div class="user-card" v-if="flag.user" @mouseleave="flag.user = false">
@@ -28,47 +50,49 @@
           </el-card>
         </div>
       </div>
-      <!-- 娑堟伅 -->
-      <div class="menu-right__item btn" @mousemove="flag.message = true" @mouseleave="flag.message = false">
-        <el-tooltip effect="dark" content="娑堟伅涓績" placement="bottom-end" :hide-after="600">
-          <el-badge :value="50" :max="99" class="item">
-            <i class="el-icon-message-solid"></i>
-          </el-badge>
-        </el-tooltip>
-        <!-- 娑堟伅鎿嶄綔 -->
-        <div class="message-card" v-if="flag.message" @mouseleave="flag.message = false">
-          <el-card class="box-card">
-            <div class="card-header">
-              <span>娑堟伅涓績</span>
-              <el-button type="text">鎺ユ敹璁剧疆</el-button>
-            </div>
-            <div v-for="item in menuMessageList" :key="item.id" class="message-card__item">
-              <router-link to='/home/operate/message/messageIndex'>
-                <span @click="" class="label">{{ item.label }}</span>
-              </router-link>
-              <span>({{ item.num }})</span>
-            </div>
-          </el-card>
-        </div>
-      </div>
-      <!-- 璁剧疆 -->
-      <!-- <div class="menu-right__item btn">
-        <el-tooltip effect="dark" content="璐︽埛璁剧疆" placement="bottom-end" :hide-after="1000">
-          <i class="el-icon-s-tools"></i>
-        </el-tooltip>
-      </div> -->
+
       <!-- 閫�鍑虹櫥褰� -->
       <div class="menu-right__item btn" @click="loginout">
         <el-tooltip effect="dark" content="閫�鍑虹櫥褰�" placement="bottom-end" :hide-after="1000">
           <i class="el-icon-switch-button"></i>
         </el-tooltip>
       </div>
+      <el-dialog :visible.sync="channelSettingVisible" width="25%" title="娑堟伅鏍忕洰璁剧疆" v-if="channelSettingVisible"
+        :before-close="handleChannelClose">
+        <el-table ref="multipleTable" :header-cell-style="{
+                                        'font-size': '14px',
+                                        'font-weight': '650',
+                                        'line-height': '45px',
+                                      }" :data="channelData" style="width: 100%" @selection-change="handleSelectionChange">
+          <el-table-column width="55">
+          </el-table-column>
+          <el-table-column prop="columnName" label="鍏ㄩ儴" min-width="5" align="center">
+            <!-- <template slot-scope="scope">{{ scope.row.id }}</template> -->
+          </el-table-column>
+          <el-table-column label="鍚敤" min-width="5">
+            <template slot-scope="scope">
+              <!-- @change="handleChangeStatus(scope.row)" -->
+              <el-switch class="switchStyle"
+              v-model="scope.row.isReceive"
+              active-color="#3fef9a"
+              inactive-color="#000212"
+              :active-value="1"
+              :inactive-value="0"
+              @change="handleSelectionChange(scope.row)">
+
+              </el-switch>
+            </template>
+          </el-table-column>
+        </el-table>
+
+        <el-button type="button" @click="cancelChannel">鍙栨秷</el-button>
+      </el-dialog>
+
       <el-dialog :visible.sync="updatePasswordDialog" width="40%" title="淇敼瀵嗙爜" v-if="updatePasswordDialog"
         :before-close="handleClose">
         <updatePassword />
       </el-dialog>
-      <el-dialog :visible.sync="baseInformationVisible" width="35%" title="鍩烘湰淇℃伅" v-if="baseInformationVisible"
-        :before-close="handleClose">
+      <el-dialog :visible.sync="baseInformationVisible" width="35%" title="鍩烘湰淇℃伅" v-if="baseInformationVisible">
         <el-form :model="info" class="info" label-width="6vw">
           <el-form-item label="鐢ㄦ埛ID" min-width="6">
             <el-input v-model="info.id"></el-input>
@@ -76,15 +100,12 @@
           <el-form-item prop="nickName" label="鐢ㄦ埛鍚嶇О" min-width="10">
             <el-input v-model="info.nickName"></el-input>
           </el-form-item>
-          <el-form-item  prop="nickName" label="鎵�灞炲鍚�" min-width="8">
+          <el-form-item prop="nickName" label="鎵�灞炲鍚�" min-width="8">
             <el-input v-model="info.username"></el-input>
           </el-form-item>
-          <el-form-item  prop="mobile" label="鑱旂郴鏂瑰紡" min-width="7">
+          <el-form-item prop="mobile" label="鑱旂郴鏂瑰紡" min-width="7">
             <el-input v-model="info.mobile"></el-input>
           </el-form-item>
-          <!-- <el-form-item  prop="departName" label="鎵�灞為儴闂�" min-width="8">
-            <el-input v-model="user.mobile"></el-input>
-          </el-form-item> -->
           <el-form-item prop="jobTitle" label="鎵�灞炶亴鍔�" min-width="8">
             <el-input v-model="info.jobTitle"></el-input>
           </el-form-item>
@@ -100,6 +121,9 @@
 
 <script>
 import updatePassword from "./updatePassword";
+import users from "@/api/users";
+import { Message } from "element-ui";
+
 export default {
   components: {
     updatePassword
@@ -108,10 +132,12 @@
     return {
       baseInformationVisible: false,
       updatePasswordDialog: false,
+      channelSettingVisible: false,
+      checked3: true,
       menuLeftList: [
         {
           label: '椹鹃┒鑸�',
-          checked: true,
+          checked: false,
           url: '',
           id: '1f'
         },
@@ -125,7 +151,13 @@
           label: '鎵ф硶绠$悊',
           checked: false,
           url: '',
-          if: '3f',
+          id: '3f',
+        },
+        {
+          label: '娌圭儫妫�娴�',
+          checked: false,
+          url: '',
+          id: '4f',
         },
       ],
       flag: {
@@ -133,36 +165,51 @@
         message: false
       },
       user: '',
-      menuMessageList: [
-        {
-          label: '鍏ㄩ儴娑堟伅',
-          num: 10,
-          id: '1m'
-        },
-        {
-          label: '浜у搧娑堟伅',
-          num: 10,
-          id: '2m'
-        },
-        {
-          label: '瀹夊叏娑堟伅',
-          num: 10,
-          id: '3m'
-        },
-        {
-          label: '鏈嶅姟娑堟伅',
-          num: 10,
-          id: '4m'
-        },
-      ],
+      menuMessageList: [],
+      channelData: [],
+      messageCounts: 0,
       keyword: '',
-      info:null,
+      info: null,
+      show: false,
+      messageColumnSet: {
+      }
     };
   },
   created() {
-    this.getLoginInfo();
+    this.setLoginInfo();
+  },
+  watch:{
+    $route() {
+      this.menuLeftList.map(item=>{
+        item.checked = false
+      })
+    },
   },
   methods: {
+    cancelChannel(){
+      this.channelSettingVisible=false
+    },
+    handleSelectionChange(val) {
+      const userInfo = JSON.parse(sessionStorage.getItem('user'));
+      this.messageColumnSet.userId = userInfo.user.id
+      this.messageColumnSet.messageColumnId = val.id
+      if (val.isReceive == null) {
+        this.messageColumnSet.isReceive = 1
+      }
+      if (val.isReceive == 1) {
+        this.messageColumnSet.isReceive = 1
+      }
+      else if (val.isReceive == 0) {
+        this.messageColumnSet.isReceive = 0
+      }
+      this.$axios({
+        method: 'post',
+        url: 'sccg/message_column_set/update',
+        data: this.messageColumnSet
+      }).then(res => {
+        this.$message.success("璁㈤槄鎴愬姛")
+      })
+    },
     baseInfo() {
       this.baseInformationVisible = true;
       const name = sessionStorage.getItem('name');
@@ -175,11 +222,30 @@
           this.info = res.data.user;
         })
     },
-    handleClose(done) {
+    channelSetting(row) {
+      this.channelSettingVisible = true;
+      const userInfo = JSON.parse(sessionStorage.getItem('user'));
+      this.$axios({
+        method: 'get',
+        url: 'sccg/message_column/getShowColumn?' + 'id=' + userInfo.user.id
+      })
+        .then(res => {
+          this.channelData = res.data
+          // this.channelData.forEach(item=>{this.$refs.multipleTable.toggleRowSelection(item,true);console.log(this.$refs.multipleTable.toggleRowSelection(item,true))})
+        })
+    },
+    handleChannelClose(done) {
       this.$confirm("纭鍏抽棴锛�")
         .then((_) => {
           this.dialogUpload = false;
-          // this.dialogUpdate = false;
+          done();
+        })
+        .catch((_) => { });
+    },
+    handleClose(done) {
+      this.$confirm("纭鍏抽棴锛�")
+        .then((_) => {
+          this.channelSettingVisible = false;
           done();
         })
         .catch((_) => { });
@@ -198,34 +264,55 @@
         sessionStorage.clear();
         this.$router.push({ path: "/login" })
       }).catch(err => {
-        console.log(err);
       })
     },
     // 鏀瑰彉閫変腑鐘舵��
     changeActive(idx) {
       this.menuLeftList.forEach((item, index) => {
-        if (index === idx) {
-          item.checked = true;
-        } else {
-          item.checked = false;
-        }
+        item.checked = index === idx;
       })
     },
-    // 鑾峰彇鐧诲綍鐢ㄦ埛淇℃伅
-    getLoginInfo() {
+    // 璁剧疆鐢ㄦ埛鍩烘湰淇℃伅
+    async setLoginInfo() {
       const info = JSON.parse(sessionStorage.getItem('user'));
       if (info) {
         this.user = info;
       } else {
-        const name = sessionStorage.getItem('name');
-        this.$axios({
-          method: 'get',
-          url: 'sccg/admin/info?name=' + name,
-        })
-          .then(res => {
-            sessionStorage.setItem('user', JSON.stringify(res.data));
-            this.user = res.data;
+        this.user = await this.getLoginInfo();
+      }
+      this.getMessage();
+      this.show = true
+    },
+    // 鑾峰彇鐧诲綍鐢ㄦ埛淇℃伅
+    async getLoginInfo() {
+      const name = sessionStorage.getItem('name');
+      let res = await this.$axios({
+        method: 'get',
+        url: 'sccg/admin/info?name=' + name,
+      })
+      sessionStorage.setItem('user', JSON.stringify(res.data));
+      return res.data;
+    },
+    getMessage() {
+      const userInfo = JSON.parse(sessionStorage.getItem('user'));
+      users.getMessageAuditList({ userId: userInfo.user.id })
+        .then(res => {
+          this.menuMessageList = res;
+          this.menuMessageList.forEach(item => {
+            this.messageCounts += item.messageNumber;
           })
+        })
+        .catch(err => this.$message.error(`${err}`))
+    },
+    menuChange(data) {
+      if (data.id === '1f') {
+        window.open('http://cockpit.patstech.net:28081/cockpit/dist/board.html#/share-board/zfu0LsJ9', '_blank');
+      }
+      if (data.id === '2f') {
+        this.$router.push({ path: "/home/video" })
+      }
+      if (data.id === '3f') {
+        this.$router.push({ path: "/home/operate/casepool/pool" })
       }
     }
   }
@@ -233,26 +320,27 @@
 </script>
 
 <style lang="scss" scoped>
- ::v-deep .el-form{
+::v-deep .el-form {
   padding: 3vh 5vw;
-   .el-form-item__label{
+
+  .el-form-item__label {
     color: #4b9bb7;
   }
 }
+
 .el-header {
-  background-color: #071a38;
-  color: #333;
+  background-color: #313350;
   text-align: center;
   line-height: 60px;
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding: 0 20px;
-  // width: 100%;
-  color: #4b9bb7;
+  color: #fff;
 
   .header-left {
     display: flex;
+    flex: 1;
 
     .menu-left__item {
       width: 120px;
@@ -264,23 +352,38 @@
 
         &:hover {
           cursor: pointer;
-          color: #fff;
+          //color: #fff;
         }
       }
     }
 
     .my-active {
       border-radius: 20px;
+      color: #2f54eb;
+      background-color: #313350;
+    }
+    .my-activeno{
+      border-radius: 20px;
       color: #fff;
-      background-color: #092c4a;
+      background-color: #313350;
+    }
+    .my-active:hover {
+      color: #2f54eb;
+      background-color: #313350;
+    }
+    .my-activeno:hover{
+      color: #2f54eb;
+      background-color: #313350;
     }
   }
 
   .header-right {
     display: flex;
+    padding-left: 10vw;
+    flex: 1;
 
     .item {
-      width: 60px;
+      width: 100%;
       position: relative;
 
       :deep(.is-fixed) {
@@ -295,17 +398,19 @@
     }
 
     .search {
-      width: 200px;
+      flex: 3;
     }
 
     .user {
-      margin-left: 20px;
-      width: 120px;
+      //margin-left: 20px;
+      flex: 1;
       display: flex;
       align-items: center;
       justify-content: center;
       position: relative;
-
+.user-span{
+  padding: 0 10px;
+}
       .user-card {
         position: absolute;
         top: 60px;
@@ -335,7 +440,7 @@
     }
 
     .btn {
-      width: 60px;
+      flex: 1;
       font-size: 20px;
       position: relative;
 
@@ -382,9 +487,10 @@
 
     .user:hover,
     .btn:hover {
-      background-color: #092c4a;
+      //background-color: #092c4a;
       cursor: pointer;
+      color: #2f54eb;
     }
   }
 }
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.8.0