sunyanqiang hace 2 años
padre
commit
918d9bb1f8

+ 44 - 0
src/api/bdglSecret/secretaccount.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询涉密计算机台账列表
+export function listSecretaccount(query) {
+  return request({
+    url: '/bdglSecret/secretaccount/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询涉密计算机台账详细
+export function getSecretaccount(id) {
+  return request({
+    url: '/bdglSecret/secretaccount/' + id,
+    method: 'get'
+  })
+}
+
+// 新增涉密计算机台账
+export function addSecretaccount(data) {
+  return request({
+    url: '/bdglSecret/secretaccount',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改涉密计算机台账
+export function updateSecretaccount(data) {
+  return request({
+    url: '/bdglSecret/secretaccount',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除涉密计算机台账
+export function delSecretaccount(id) {
+  return request({
+    url: '/bdglSecret/secretaccount/' + id,
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/monitoring/brigadecamera.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询摄像头管理列表
+export function listBrigadecamera(query) {
+  return request({
+    url: '/monitoring/brigadecamera/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询摄像头管理详细
+export function getBrigadecamera(id) {
+  return request({
+    url: '/monitoring/brigadecamera/' + id,
+    method: 'get'
+  })
+}
+
+// 新增摄像头管理
+export function addBrigadecamera(data) {
+  return request({
+    url: '/monitoring/brigadecamera',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改摄像头管理
+export function updateBrigadecamera(data) {
+  return request({
+    url: '/monitoring/brigadecamera',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除摄像头管理
+export function delBrigadecamera(id) {
+  return request({
+    url: '/monitoring/brigadecamera/' + id,
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/peopleManage/typestatistics.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询人员类别数量列表
+export function listTypestatistics(query) {
+  return request({
+    url: '/peopleManage/typestatistics/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询人员类别数量详细
+export function getTypestatistics(id) {
+  return request({
+    url: '/peopleManage/typestatistics/' + id,
+    method: 'get'
+  })
+}
+
+// 新增人员类别数量
+export function addTypestatistics(data) {
+  return request({
+    url: '/peopleManage/typestatistics',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改人员类别数量
+export function updateTypestatistics(data) {
+  return request({
+    url: '/peopleManage/typestatistics',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除人员类别数量
+export function delTypestatistics(id) {
+  return request({
+    url: '/peopleManage/typestatistics/' + id,
+    method: 'delete'
+  })
+}

+ 162 - 83
src/components/look_word/bdgldiary.vue

@@ -163,7 +163,10 @@
           <td class="JR_left" style="font-family: '宋体'">实到</td>
           <td class="JR_left" width="52" style="font-family: '宋体'">到课率</td>
         </tr>
-        <tr v-for="(item, i) in message.contextData" :key="i + '     '">
+        <tr
+          v-for="(item, i) in message.bdglDiaryWeekworkRegisterList"
+          :key="i + '     '"
+        >
           <td height="88">{{ item.dateline }}</td>
           <td align="left" colspan="9">
             <p v-html="aaa(item.contents)" style="margin-left: 7px"></p>
@@ -668,7 +671,7 @@
 // import '@/utils/jquery.wordexport.js'
 import exportWord from "@/utils/exportWord.js";
 export default {
-  name: "bdglevens",
+  name: "bdgdiarys",
   props: ["message"],
   dicts: ["post_Level"],
   data() {
@@ -723,6 +726,14 @@ export default {
                 `,
       },
       num: 0,
+      zao: [],
+      shang: [],
+      xia: [],
+      wan: [],
+      zao1: {},
+      shang1: {},
+      xia1: {},
+      wan1: {},
     };
   },
   created() {
@@ -733,7 +744,7 @@ export default {
     this.xunlian();
     this.qingjias();
     this.xunlians();
-    this.xunlianRen();
+    // this.xunlianRen();
     if (this.message.bdglDiaryLeaveList) {
       if (this.message.bdglDiaryLeaveList.length >= 6) {
         this.num = 0;
@@ -747,68 +758,117 @@ export default {
   mounted() {},
 
   methods: {
-    xunlianRen() {
-      if (this.message.contextData2) {
-        this.formattingFn();
-        for (let i = 0; i < this.message.contextData2.length; i++) {
-          if (
-            this.message.contextData2[i].dateline == "早晨" &&
-            this.message.contextData2[i].percentage != null &&
-            this.message.contextData2[i].realTo != null &&
-            this.message.contextData2[i].shouldArrive != null
-          ) {
-            this.message.contextData[0].realTo +=
-              this.message.contextData2[i].realTo + "<br/>";
-            this.message.contextData[0].percentage += (
-              this.message.contextData2[i].percentage + "<br/>"
-            ).replaceAll(".00", "");
-            this.message.contextData[0].shouldArrive +=
-              this.message.contextData2[i].shouldArrive + "<br/>";
-          }
-          if (
-            this.message.contextData2[i].dateline == "上午" &&
-            this.message.contextData2[i].percentage != null &&
-            this.message.contextData2[i].realTo != null &&
-            this.message.contextData2[i].shouldArrive != null
-          ) {
-            this.message.contextData[1].realTo +=
-              this.message.contextData2[i].realTo + "<br/>";
-            this.message.contextData[1].percentage += (
-              this.message.contextData2[i].percentage + "<br/>"
-            ).replaceAll(".00", "");
-            this.message.contextData[1].shouldArrive +=
-              this.message.contextData2[i].shouldArrive + "<br/>";
-          }
-          if (
-            this.message.contextData2[i].dateline == "下午" &&
-            this.message.contextData2[i].percentage != null &&
-            this.message.contextData2[i].realTo != null &&
-            this.message.contextData2[i].shouldArrive != null
-          ) {
-            this.message.contextData[2].realTo +=
-              this.message.contextData2[i].realTo + "<br/>";
-            this.message.contextData[2].percentage += (
-              this.message.contextData2[i].percentage + "<br/>"
-            ).replaceAll(".00", "");
-            this.message.contextData[2].shouldArrive +=
-              this.message.contextData2[i].shouldArrive + "<br/>";
-          }
-          if (
-            this.message.contextData2[i].dateline == "晚上" &&
-            this.message.contextData2[i].percentage != null &&
-            this.message.contextData2[i].realTo != null &&
-            this.message.contextData2[i].shouldArrive != null
-          ) {
-            this.message.contextData[3].realTo +=
-              this.message.contextData2[i].realTo + "<br/>";
-            this.message.contextData[3].percentage += (
-              this.message.contextData2[i].percentage + "<br/>"
-            ).replaceAll(".00", "");
-            this.message.contextData[3].shouldArrive +=
-              this.message.contextData2[i].shouldArrive + "<br/>";
-          }
+    xunlianRen(a, b, c, d) {
+      var a1 = a;
+      if (a1.length > 1) {
+        for (let i = 0; i < a1.length; i++) {
+          this.zao1.percentage +=
+            a1[i].percentage + "<br/>".replaceAll(".00", "");
+          this.zao1.shouldArrive += a1[i].shouldArrive + "<br/>";
+          this.zao1.contents += a1[i].contents + "<br/>";
+          this.zao1.realTo += a1[i].realTo + "<br/>";
+          //  this.zao1.percentage+=
+          // a1[i].realTo + "<br/>"
+          //  [0].percentage = (
+          //     this.message.bdglDiaryWeekworkRegisterList[i].percentage + "<br/>"
+          //   ).replaceAll(".00", "");
+          //   this.message.bdglDiaryWeekworkRegisterList[0].shouldArrive =
+          //     this.message.bdglDiaryWeekworkRegisterList[i].shouldArrive +
+          //     "<br/>";
+          //   this.message.bdglDiaryWeekworkRegisterList[0].percentage += (
+          //     ta + "<br/>"
+          //   ).replaceAll(".00", "");
+          //   this.message.bdglDiaryWeekworkRegisterList[0].shouldArrive +=
+          //     a +
+          //     "<br/>";
         }
+        this.zao1.percentage = this.zao1.percentage.substring(9);
+        this.zao1.shouldArrive = this.zao1.percentage.substring(7);
+        this.zao1.contents = this.zao1.percentage.substring(9);
+        this.zao1.realTo = this.zao1.percentage.substring(8);
+        this.message.bdglDiaryWeekworkRegisterList[0].percentage =
+          this.zao1.percentage;
+        this.message.bdglDiaryWeekworkRegisterList[0].shouldArrive =
+          this.zao1.shouldArrive;
+          this.message.bdglDiaryWeekworkRegisterList[0].contents =
+          this.zao1.contents;
+          this.message.bdglDiaryWeekworkRegisterList[0].realTo =
+          this.zao1.realTo;
+        console.log(this.message.bdglDiaryWeekworkRegisterList);
+      } else {
+        this.message.bdglDiaryWeekworkRegisterList[0].percentage =
+          a1[0].percentage;
       }
+      // if (this.message.bdglDiaryWeekworkRegisterList) {
+      //   this.formattingFn();
+      //   for (
+      //     let i = 0;
+      //     i < this.message.bdglDiaryWeekworkRegisterList.length;
+      //     i++
+      //   ) {
+      //     if (
+      //       this.message.bdglDiaryWeekworkRegisterList[i].dateline == "早晨" &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].percentage != null &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].realTo != null &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].shouldArrive != null
+      //     ) {
+      //       console.log(this.message.bdglDiaryWeekworkRegisterList[0].realTo);
+      //       this.message.bdglDiaryWeekworkRegisterList[0].realTo =
+      //         this.message.bdglDiaryWeekworkRegisterList[i].realTo + "<br/>";
+      //       this.message.bdglDiaryWeekworkRegisterList[0].percentage = (
+      //         this.message.bdglDiaryWeekworkRegisterList[i].percentage + "<br/>"
+      //       ).replaceAll(".00", "");
+      //       this.message.bdglDiaryWeekworkRegisterList[0].shouldArrive =
+      //         this.message.bdglDiaryWeekworkRegisterList[i].shouldArrive +
+      //         "<br/>";
+      //     }
+      //     if (
+      //       this.message.bdglDiaryWeekworkRegisterList[i].dateline == "上午" &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].percentage != null &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].realTo != null &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].shouldArrive != null
+      //     ) {
+      //       this.message.bdglDiaryWeekworkRegisterList[1].realTo +=
+      //         this.message.bdglDiaryWeekworkRegisterList[i].realTo + "<br/>";
+      //       this.message.bdglDiaryWeekworkRegisterList[1].percentage += (
+      //         this.message.bdglDiaryWeekworkRegisterList[i].percentage + "<br/>"
+      //       ).replaceAll(".00", "");
+      //       this.message.bdglDiaryWeekworkRegisterList[1].shouldArrive +=
+      //         this.message.bdglDiaryWeekworkRegisterList[i].shouldArrive +
+      //         "<br/>";
+      //     }
+      //     if (
+      //       this.message.bdglDiaryWeekworkRegisterList[i].dateline == "下午" &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].percentage != null &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].realTo != null &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].shouldArrive != null
+      //     ) {
+      //       this.message.bdglDiaryWeekworkRegisterList[2].realTo +=
+      //         this.message.bdglDiaryWeekworkRegisterList[i].realTo + "<br/>";
+      //       this.message.bdglDiaryWeekworkRegisterList[2].percentage += (
+      //         this.message.bdglDiaryWeekworkRegisterList[i].percentage + "<br/>"
+      //       ).replaceAll(".00", "");
+      //       this.message.bdglDiaryWeekworkRegisterList[2].shouldArrive +=
+      //         this.message.bdglDiaryWeekworkRegisterList[i].shouldArrive +
+      //         "<br/>";
+      //     }
+      //     if (
+      //       this.message.bdglDiaryWeekworkRegisterList[i].dateline == "晚上" &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].percentage != null &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].realTo != null &&
+      //       this.message.bdglDiaryWeekworkRegisterList[i].shouldArrive != null
+      //     ) {
+      //       this.message.bdglDiaryWeekworkRegisterList[3].realTo +=
+      //         this.message.bdglDiaryWeekworkRegisterList[i].realTo + "<br/>";
+      //       this.message.bdglDiaryWeekworkRegisterList[3].percentage += (
+      //         this.message.bdglDiaryWeekworkRegisterList[i].percentage + "<br/>"
+      //       ).replaceAll(".00", "");
+      //       this.message.bdglDiaryWeekworkRegisterList[3].shouldArrive +=
+      //         this.message.bdglDiaryWeekworkRegisterList[i].shouldArrive +
+      //         "<br/>";
+      //     }
+      //   }
+      // }
     },
     daochu() {
       exportWord(this.faith);
@@ -831,8 +891,8 @@ export default {
     },
     // 格式化数据
     formattingFn() {
-      if (this.message.contextData) {
-        this.message.contextData.forEach((item) => {
+      if (this.message.bdglDiaryWeekworkRegisterList) {
+        this.message.bdglDiaryWeekworkRegisterList.forEach((item) => {
           item.percentage = "";
           item.realTo = "";
           item.shouldArrive = "";
@@ -840,57 +900,76 @@ export default {
       }
     },
     xunlians() {
-      if (this.message.contextData) {
-        for (let index = 0; index < this.message.contextData.length; index++) {
-          this.faith1.push(this.message.contextData[index].dateline);
+      if (this.message.bdglDiaryWeekworkRegisterList) {
+        for (
+          let index = 0;
+          index < this.message.bdglDiaryWeekworkRegisterList.length;
+          index++
+        ) {
+          this.faith1.push(
+            this.message.bdglDiaryWeekworkRegisterList[index].dateline
+          );
         }
         if (this.faith1.indexOf("早晨") == -1) {
-          this.message.contextData.push({
+          this.message.bdglDiaryWeekworkRegisterList.push({
             dateline: "早晨",
             contents: "",
             percentage: "",
           });
         }
         if (this.faith1.indexOf("上午") == -1) {
-          this.message.contextData.push({
+          this.message.bdglDiaryWeekworkRegisterList.push({
             dateline: "上午",
             contents: "",
             percentage: "",
           });
         }
         if (this.faith1.indexOf("下午") == -1) {
-          this.message.contextData.push({
+          this.message.bdglDiaryWeekworkRegisterList.push({
             dateline: "下午",
             contents: "",
             percentage: "",
           });
         }
         if (this.faith1.indexOf("晚上") == -1) {
-          this.message.contextData.push({
+          this.message.bdglDiaryWeekworkRegisterList.push({
             dateline: "晚上",
             contents: "",
             percentage: "",
           });
         }
-        for (let index = 0; index < this.message.contextData.length; index++) {
-          // console.log(this.message.contextData[index]);
-          if (this.message.contextData[index].dateline == "早晨") {
-            this.faith2[0] = this.message.contextData[index];
+        for (
+          let index = 0;
+          index < this.message.bdglDiaryWeekworkRegisterList.length;
+          index++
+        ) {
+          if (
+            this.message.bdglDiaryWeekworkRegisterList[index].dateline == "早晨"
+          ) {
+            this.zao.push(this.message.bdglDiaryWeekworkRegisterList[index]);
           }
 
-          if (this.message.contextData[index].dateline == "上午") {
-            this.faith2[1] = this.message.contextData[index];
+          if (
+            this.message.bdglDiaryWeekworkRegisterList[index].dateline == "上午"
+          ) {
+            this.shang.push(this.message.bdglDiaryWeekworkRegisterList[index]);
           }
 
-          if (this.message.contextData[index].dateline == "下午") {
-            this.faith2[2] = this.message.contextData[index];
+          if (
+            this.message.bdglDiaryWeekworkRegisterList[index].dateline == "下午"
+          ) {
+            this.xia.push(this.message.bdglDiaryWeekworkRegisterList[index]);
           }
 
-          if (this.message.contextData[index].dateline == "晚上") {
-            this.faith2[3] = this.message.contextData[index];
+          if (
+            this.message.bdglDiaryWeekworkRegisterList[index].dateline == "晚上"
+          ) {
+            this.wan.push(this.message.bdglDiaryWeekworkRegisterList[index]);
           }
         }
-        this.message.contextData = this.faith2;
+        this.xunlianRen(this.zao);
+        // this.faith2 = [...this.zao, ...this.shang, ...this.xia, ...this.wan];
+        this.message.bdglDiaryWeekworkRegisterList = this.faith2;
       } else {
         this.number = 6;
         this.meiShuJu = [

+ 61 - 27
src/components/look_word/personnelRoster.vue

@@ -17,7 +17,7 @@
       </p>
 
       <table
-      class="b1"
+        class="b1"
         border="1"
         style="
           border-collapse: collapse;
@@ -41,10 +41,18 @@
             align="center"
             style="font-family: 'heiti'"
           >
-            <td class="JR_left" rowspan="2" style="font-family: 'heiti'">日期</td>
-            <td class="JR_left" colspan="3" style="font-family: 'heiti'">编制人数</td>
-            <td class="JR_left" colspan="3" style="font-family: 'heiti'">在位人数</td>
-            <td class="JR_left" colspan="3" style="font-family: 'heiti'">超(缺)编人员情况</td>
+            <td class="JR_left" rowspan="2" style="font-family: 'heiti'">
+              日期
+            </td>
+            <td class="JR_left" colspan="3" style="font-family: 'heiti'">
+              编制人数
+            </td>
+            <td class="JR_left" colspan="3" style="font-family: 'heiti'">
+              在位人数
+            </td>
+            <td class="JR_left" colspan="3" style="font-family: 'heiti'">
+              超(缺)编人员情况
+            </td>
           </tr>
           <tr
             class="JR_tr"
@@ -68,16 +76,16 @@
             align="center"
             style="font-family: 'fangsong'"
           >
-            <td class="JR_right"></td>
-            <td class="JR_right">{{ renshu.bzwgb }}</td>
-            <td class="JR_right">{{ renshu.bzwsb }}</td>
-            <td class="JR_right">{{ renshu.bzwyw }}</td>
-            <td class="JR_right">{{ renshu.zbgb }}</td>
-            <td class="JR_right">{{ renshu.zbsb }}</td>
-            <td class="JR_right">{{ renshu.zbyw }}</td>
-            <td class="JR_right">{{ renshu.zwgb }}</td>
-            <td class="JR_right">{{ renshu.zwsb }}</td>
-            <td class="JR_right">{{ renshu.zwyw }}</td>
+            <td class="JR_right">{{nowDate}}</td>
+            <td class="JR_right">{{ renshu.inpreparationGb }}</td>
+            <td class="JR_right">{{ renshu.inpreparationSg }}</td>
+            <td class="JR_right">{{ renshu.inpreparationYwb }}</td>
+            <td class="JR_right">{{ renshu.incumbentsGb }}</td>
+            <td class="JR_right">{{ renshu.incumbentsSg }}</td>
+            <td class="JR_right">{{ renshu.incumbentsYwb }}</td>
+            <td class="JR_right">{{ renshu.outpreparationGb }}</td>
+            <td class="JR_right">{{ renshu.outpreparationSg }}</td>
+            <td class="JR_right">{{ renshu.outpreparationYwb }}</td>
           </tr>
 
           <tr class="JR_tr" height="40" align="center">
@@ -109,7 +117,7 @@
         日期
       </p>
       <table
-      class="b1"
+        class="b1"
         border="1"
         style="
           border-collapse: collapse;
@@ -146,7 +154,9 @@
             </td>
             <td class="JR_left" style="font-family: 'heiti'">文化<br />程度</td>
             <td class="JR_left" style="font-family: 'heiti'">婚姻<br />状况</td>
-            <td class="JR_left" style="font-family: 'heiti'">家庭住址及联系方式</td>
+            <td class="JR_left" style="font-family: 'heiti'">
+              家庭住址及联系方式
+            </td>
             <td class="JR_left" style="font-family: 'heiti'">备注</td>
           </tr>
           <tr
@@ -154,21 +164,15 @@
             height="40"
             align="center"
             style="font-family: 'fangsong'"
-             v-for="(item, i) in message"
+            v-for="(item, i) in message"
             :key="i"
           >
             <td class="JR_right">{{ item.name }}</td>
             <td class="JR_right">
-              <dict-tag
-                :options="dict.type.post_Level"
-                :value="item.postId"
-              />
+              <dict-tag :options="dict.type.post_Level" :value="item.postId" />
             </td>
             <td class="JR_right">
-              <dict-tag
-                :options="dict.type.post_Level"
-                :value="item.rankId"
-              />
+              <dict-tag :options="dict.type.post_Level" :value="item.rankId" />
             </td>
             <td class="JR_right">
               <dict-tag
@@ -190,7 +194,8 @@
               <dict-tag
                 :options="dict.type.marryList"
                 :value="item.marryList"
-              /></td>
+              />
+            </td>
             <td class="JR_right">{{ item.live }}{{ item.phone }}</td>
             <td class="JR_right"></td>
           </tr>
@@ -243,9 +248,11 @@ export default {
       //婚姻情况
       marryList: [],
       xueLi: "",
+      nowDate:null
     };
   },
   created() {
+    this.getTiems()
     //学历
     this.getDicts("Degree_level").then((response) => {
       this.educationId = response.data;
@@ -266,8 +273,35 @@ export default {
     this.getDicts("sys_familyName").then((response) => {
       this.nationIds = response.data;
     });
+    // 获取当前时间
   },
   methods: {
+    // 获取日期
+    getTiems() {
+      //获取当前日期
+      var date = new Date();
+
+      // 获取当前月份
+      var nowMonth = date.getMonth() + 1;
+
+      // 获取当前是几号
+      var strDate = date.getDate();
+
+      // 添加分隔符“-”
+      var seperator = "-";
+
+      // 对月份进行处理,1-9月在前面添加一个“0”
+      if (nowMonth >= 1 && nowMonth <= 9) {
+        nowMonth = "0" + nowMonth;
+      }
+
+      // 对月份进行处理,1-9号在前面添加一个“0”
+      if (strDate >= 0 && strDate <= 9) {
+        strDate = "0" + strDate;
+      }
+      this.nowDate =
+        date.getFullYear() + seperator + nowMonth + seperator + strDate;
+    },
     daochu() {
       lookWord(this.title, "#contents", this.style, true);
     },

+ 296 - 85
src/views/bdglSecret/secret/index.vue

@@ -1,35 +1,87 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px">
+    <el-form
+      :model="queryParams"
+      ref="queryForm"
+      :inline="true"
+      label-width="68px"
+    >
       <el-form-item label="" prop="unitId">
-        <treeselect v-model="queryParams.unitId" :options="deptOptions" placeholder="请选择单位" @select="selectshou" />
+        <treeselect
+          v-model="queryParams.unitId"
+          :options="deptOptions"
+          placeholder="请选择单位"
+          @select="selectshou"
+        />
       </el-form-item>
       <el-form-item label="" prop="kind">
-        <el-select v-model="queryParams.kind" placeholder="请选择类型" clearable size="small" @change="secrecy">
-          <el-option v-for="item in ziDian" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"
-            class="input_xiala" />
+        <el-select
+          v-model="queryParams.kind"
+          placeholder="请选择类型"
+          clearable
+          size="small"
+          @change="secrecy"
+        >
+          <el-option
+            v-for="item in ziDian"
+            :key="item.dictValue"
+            :label="item.dictLabel"
+            :value="item.dictValue"
+            class="input_xiala"
+          />
         </el-select>
       </el-form-item>
       <el-form-item prop="peopleName">
-        <el-input v-model="queryParams.peopleName" placeholder="请输入责任人" clearable size="small" @input="handleQuery" />
+        <el-input
+          v-model="queryParams.peopleName"
+          placeholder="请输入责任人"
+          clearable
+          size="small"
+          @input="handleQuery"
+        />
       </el-form-item>
       <el-form-item>
-        <el-button icon="el-icon-refresh" size="btr" @click="resetQuery">重置</el-button>
+        <el-button icon="el-icon-refresh" size="btr" @click="resetQuery"
+          >重置</el-button
+        >
       </el-form-item>
     </el-form>
 
     <el-row :gutter="10" class="mb8">
       <el-col :span="1.5">
-        <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
-          v-hasPermi="['bdglSecret:secret:add']">新增</el-button>
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['bdglSecret:secret:add']"
+          >新增</el-button
+        >
       </el-col>
       <el-col :span="1.5">
-        <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
-          v-hasPermi="['bdglSecret:secret:edit']">修改</el-button>
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['bdglSecret:secret:edit']"
+          >修改</el-button
+        >
       </el-col>
       <el-col :span="1.5">
-        <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
-          v-hasPermi="['bdglSecret:secret:remove']">删除</el-button>
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['bdglSecret:secret:remove']"
+          >删除</el-button
+        >
       </el-col>
       <!-- <el-col :span="1.5">
         <el-button
@@ -47,48 +99,89 @@
 
     <div class="hezi">
       <div class="tji">涉密物品统计</div>
-      <div style="display: flex;
-                    justify-content:space-evenly;
-                    padding: 41px 20px;">
-        <div style="width: 173px;
-                    display: flex;
-                    justify-content: space-evenly;
-                    align-items: center;">
+      <div
+        style="display: flex; justify-content: space-evenly; padding: 41px 20px"
+      >
+        <div
+          style="
+            width: 173px;
+            display: flex;
+            justify-content: space-evenly;
+            align-items: center;
+          "
+        >
           <span>移动载体</span>
-          <span><span style="font-size: 25px; margin-right: 18px;">{{tongJiList[3]}}</span>台</span>
+          <span
+            ><span style="font-size: 25px; margin-right: 18px">{{
+              tongJiList[3]
+            }}</span
+            >台</span
+          >
         </div>
-        <div style="width: 173px;
-                         display: flex;
-                           justify-content:space-between;
-                          align-items: center;">
+        <div
+          style="
+            width: 173px;
+            display: flex;
+            justify-content: space-between;
+            align-items: center;
+          "
+        >
           <span>军用手机</span>
-          <span><span style="font-size: 25px; margin-right: 18px;">{{tongJiList[0]}}</span>台</span>
+          <span
+            ><span style="font-size: 25px; margin-right: 18px">{{
+              tongJiList[0]
+            }}</span
+            >台</span
+          >
         </div>
-        <div style="width: 173px;
-       display: flex;
-        justify-content: space-evenly;
-       align-items: center;">
+        <div
+          style="
+            width: 173px;
+            display: flex;
+            justify-content: space-evenly;
+            align-items: center;
+          "
+        >
           <span>电脑</span>
-          <span><span style="font-size: 25px; margin-right: 18px;">{{tongJiList[1]}}</span>台</span>
+          <span
+            ><span style="font-size: 25px; margin-right: 18px">{{
+              tongJiList[1]
+            }}</span
+            >台</span
+          >
         </div>
-        <div style="width: 173px;
- display: flex;
-   justify-content: space-evenly;
- align-items: center;">
+        <div
+          style="
+            width: 173px;
+            display: flex;
+            justify-content: space-evenly;
+            align-items: center;
+          "
+        >
           <span>相机</span>
-          <span><span style="font-size: 25px; margin-right: 18px;">{{tongJiList[2]}}</span>台</span>
+          <span
+            ><span style="font-size: 25px; margin-right: 18px">{{
+              tongJiList[2]
+            }}</span
+            >台</span
+          >
         </div>
       </div>
     </div>
 
-    <el-table v-loading="loading" :data="bdglsecrecyList" @selection-change="handleSelectionChange"
-      :header-cell-style="{ background: '#003C69', color: 'white' }" style="width: 100%">
+    <el-table
+      v-loading="loading"
+      :data="bdglsecrecyList"
+      @selection-change="handleSelectionChange"
+      :header-cell-style="{ background: '#003C69', color: 'white' }"
+      style="width: 100%"
+    >
       <el-table-column type="selection" width="55" align="center" />
       <!-- <el-table-column label="序号" align="center" prop="id" /> -->
       <el-table-column label="序号" type="index" width="50" align="center">
         <template scope="scope">
           <span>{{
-          (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
+            (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
           }}</span>
         </template>
       </el-table-column>
@@ -101,26 +194,65 @@
       <el-table-column label="编号" align="center" prop="number" width="200" />
       <!-- <el-table-column label="密级" align="center" prop="confidential" /> -->
       <!-- <el-table-column label="使用人" align="center" prop="people1Name" /> -->
-      <el-table-column label="使用单位" align="center" prop="unitId" :formatter="deptIdformatter" width="200" />
+      <el-table-column
+        label="使用单位"
+        align="center"
+        prop="unitId"
+        :formatter="deptIdformatter"
+        width="200"
+      />
       <el-table-column label="责任人" align="center" prop="peopleName" />
-      <el-table-column label="用途" align="center" show-overflow-tooltip prop="people2Name" width="200" />
-      <el-table-column label="启用时间" align="center" prop="startTime" width="160">
+      <el-table-column
+        label="用途"
+        align="center"
+        show-overflow-tooltip
+        prop="people2Name"
+        width="200"
+      />
+      <el-table-column
+        label="启用时间"
+        align="center"
+        prop="startTime"
+        width="160"
+      >
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.startTime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="停用时间" align="center" prop="endTime" width="160">
+      <el-table-column
+        label="停用时间"
+        align="center"
+        prop="endTime"
+        width="160"
+      >
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.endTime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="归还时间" align="center" prop="hindOverTime" width="160">
+      <el-table-column
+        label="归还时间"
+        align="center"
+        prop="hindOverTime"
+        width="160"
+      >
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.hindOverTime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="备注" align="center" show-overflow-tooltip prop="remarks" width="200" />
-      <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200" fixed="right">
+      <el-table-column
+        label="备注"
+        align="center"
+        show-overflow-tooltip
+        prop="remarks"
+        width="200"
+      />
+      <el-table-column
+        label="操作"
+        align="center"
+        class-name="small-padding fixed-width"
+        width="200"
+        fixed="right"
+      >
         <template slot-scope="scope">
           <!-- <el-button
             size="btk"
@@ -129,30 +261,67 @@
             v-hasPermi="['grassrootsregistration:bdgldiary:edit']"
             ><span class="chakan">查看</span></el-button
           > -->
-          <el-button size="btu" type="text" @click="handleUpdate(scope.row)" v-hasPermi="['bdglSecret:secret:edit']">
+          <el-button
+            size="btu"
+            type="text"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['bdglSecret:secret:edit']"
+          >
             <span class="edit">修改</span>
           </el-button>
-          <el-button size="btd" type="text" @click="handleDelete(scope.row)" v-hasPermi="['bdglSecret:secret:remove']">
+          <el-button
+            size="btd"
+            type="text"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['bdglSecret:secret:remove']"
+          >
             <span class="delete">删除</span>
           </el-button>
         </template>
       </el-table-column>
     </el-table>
 
-    <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
-      @pagination="getList" />
+    <pagination
+      v-show="total > 0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
 
     <!-- 添加或修改网络/手机/涉密载体登记本对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="1016px" append-to-body :close-on-click-modal="false">
+    <el-dialog
+      :title="title"
+      :visible.sync="open"
+      width="1016px"
+      append-to-body
+      :close-on-click-modal="false"
+    >
       <div class="jiben">基本信息</div>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px" :inline="true">
+      <el-form
+        ref="form"
+        :model="form"
+        :rules="rules"
+        label-width="80px"
+        :inline="true"
+      >
         <el-form-item label="使用单位" prop="unitId">
-          <treeselect v-model="form.unitId" :options="deptOptions" placeholder="请选择使用单位" @select="selectPeo" />
+          <treeselect
+            v-model="form.unitId"
+            :options="deptOptions"
+            placeholder="请选择使用单位"
+            @select="selectPeo"
+          />
         </el-form-item>
         <el-form-item label="类型" prop="kind">
           <el-select v-model="form.kind" placeholder="请选择类型">
-            <el-option v-for="item in ziDian" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"
-              class="input_xiala">
+            <el-option
+              v-for="item in ziDian"
+              :key="item.dictValue"
+              :label="item.dictLabel"
+              :value="item.dictValue"
+              class="input_xiala"
+            >
             </el-option>
           </el-select>
         </el-form-item>
@@ -184,8 +353,14 @@
         </el-form-item> -->
         <el-form-item label="责任人" prop="peopleId">
           <el-select v-model="form.peopleId" placeholder="请选择负责人">
-            <el-option v-for="(item, i) in renYuan" :key="i" :label="item.name" :value="item.id"
-              @click.native="zheRenRe(item.name)" class="input_xiala">
+            <el-option
+              v-for="(item, i) in renYuan"
+              :key="i"
+              :label="item.name"
+              :value="item.id"
+              @click.native="zheRenRe(item.name)"
+              class="input_xiala"
+            >
             </el-option>
           </el-select>
         </el-form-item>
@@ -203,27 +378,57 @@
           </el-select>
         </el-form-item> -->
         <el-form-item label="启用时间" prop="startTime">
-          <el-date-picker clearable size="small" v-model="form.startTime" type="date" :editable="false"
-            value-format="yyyy-MM-dd" placeholder="请选择启用时间">
+          <el-date-picker
+            clearable
+            size="small"
+            v-model="form.startTime"
+            type="date"
+            :editable="false"
+            value-format="yyyy-MM-dd"
+            placeholder="请选择启用时间"
+          >
           </el-date-picker>
         </el-form-item>
         <el-form-item label="停用时间" prop="endTime">
-          <el-date-picker ref="bb" clearable size="small" v-model="form.endTime" type="date" :editable="false"
-            value-format="yyyy-MM-dd" placeholder="请选择停用时间">
+          <el-date-picker
+            ref="bb"
+            clearable
+            size="small"
+            v-model="form.endTime"
+            type="date"
+            :editable="false"
+            value-format="yyyy-MM-dd"
+            placeholder="请选择停用时间"
+          >
           </el-date-picker>
         </el-form-item>
         <el-form-item label="归还时间" prop="hindOverTime">
-          <el-date-picker clearable size="small" v-model="form.hindOverTime" type="date" :editable="false"
-            value-format="yyyy-MM-dd" placeholder="请选择归还时间">
+          <el-date-picker
+            clearable
+            size="small"
+            v-model="form.hindOverTime"
+            type="date"
+            :editable="false"
+            value-format="yyyy-MM-dd"
+            placeholder="请选择归还时间"
+          >
           </el-date-picker>
         </el-form-item>
         <div class="jiben">用途</div>
         <el-form-item label="" prop="people2Name">
-          <el-input v-model="form.people2Name" type="textarea" placeholder="请输入用途" />
+          <el-input
+            v-model="form.people2Name"
+            type="textarea"
+            placeholder="请输入用途"
+          />
         </el-form-item>
         <div class="jiben">备注</div>
         <el-form-item label="" prop="remarks">
-          <el-input v-model="form.remarks" type="textarea" placeholder="请输入备注" />
+          <el-input
+            v-model="form.remarks"
+            type="textarea"
+            placeholder="请输入备注"
+          />
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -232,9 +437,18 @@
       </div>
     </el-dialog>
     <div class="fff">
-      <el-dialog :visible.sync="menuRoleVisible" :title="title" append-to-body id="chakan"
-        :close-on-click-modal="false">
-        <bdglsecrecy v-if="menuRoleVisible" ref="menuRole" :message="wordInfo"></bdglsecrecy>
+      <el-dialog
+        :visible.sync="menuRoleVisible"
+        :title="title"
+        append-to-body
+        id="chakan"
+        :close-on-click-modal="false"
+      >
+        <bdglsecrecy
+          v-if="menuRoleVisible"
+          ref="menuRole"
+          :message="wordInfo"
+        ></bdglsecrecy>
       </el-dialog>
     </div>
   </div>
@@ -250,7 +464,7 @@ import {
   updateSecret,
   exportSecret,
   getDepts,
-  getNumber
+  getNumber,
 } from "@/api/bdglSecret/secret";
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
@@ -351,7 +565,7 @@ export default {
       },
       unitId: [],
       //获取统计数据
-      tongJiList: {}
+      tongJiList: {},
     };
   },
   created() {
@@ -362,19 +576,19 @@ export default {
     getDepts().then((res) => {
       this.unitId = res.data;
     });
-    this.tongJi()
+    this.tongJi();
   },
   methods: {
     //获取统计数量
     tongJi(unitids) {
-      getNumber(unitids).then(res => {
-        this.tongJiList = res.data
-      })
+      getNumber(unitids).then((res) => {
+        this.tongJiList = res.data;
+      });
     },
     selectshou(data) {
       this.queryParams.unitId = data.id;
       this.getList();
-      this.tongJi({ unitid: this.queryParams.unitId })
+      this.tongJi({ unitid: this.queryParams.unitId });
     },
     //单位翻译
     deptIdformatter(row, column) {
@@ -508,7 +722,7 @@ export default {
       this.reset();
       this.resetForm("queryForm");
       this.queryParams.unitId = null;
-      this.tongJi({ unitid: this.queryParams.unitId })
+      this.tongJi({ unitid: this.queryParams.unitId });
       this.handleQuery();
     },
     /** 对话框重置按钮操作 */
@@ -571,15 +785,14 @@ export default {
               this.$modal.msgSuccess("修改成功");
               this.open = false;
               this.getList();
-              this.tongJi({ unitid: this.queryParams.unitId })
+              this.tongJi({ unitid: this.queryParams.unitId });
             });
           } else {
             addSecret(this.form).then((response) => {
               this.$modal.msgSuccess("新增成功");
               this.open = false;
               this.getList();
-              this.tongJi({ unitid: this.queryParams.unitId })
-
+              this.tongJi({ unitid: this.queryParams.unitId });
             });
           }
         }
@@ -598,10 +811,10 @@ export default {
         })
         .then(() => {
           this.getList();
-          this.tongJi({ unitid: this.queryParams.unitId })
+          this.tongJi({ unitid: this.queryParams.unitId });
           this.$modal.msgSuccess("删除成功");
         })
-        .catch(() => { });
+        .catch(() => {});
     },
     /** 导出按钮操作 */
     handleExport() {
@@ -616,7 +829,7 @@ export default {
           this.$download.name(response.msg);
           this.exportLoading = false;
         })
-        .catch(() => { });
+        .catch(() => {});
     },
   },
 };
@@ -805,8 +1018,6 @@ export default {
   color: #fff;
   font-size: 18px;
   font-weight: 600;
-
-
 }
 
 .tji {
@@ -820,6 +1031,6 @@ export default {
   color: #fff;
   font-size: 18px;
   font-weight: 600;
-  background: #004D86;
+  background: #004d86;
 }
 </style>

+ 679 - 0
src/views/bdglSecret/secretaccount/index.vue

@@ -0,0 +1,679 @@
+<template>
+  <div class="app-container">
+    <el-form
+      :model="queryParams"
+      ref="queryForm"
+      size="small"
+      :inline="true"
+      v-show="showSearch"
+      label-width="68px"
+    >
+      <el-form-item label="" prop="unitname">
+        <el-input
+          v-model="queryParams.unitname"
+          placeholder="请输入单位"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="" prop="model">
+        <el-input
+          v-model="queryParams.model"
+          placeholder="请输入型号"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="" prop="confidentialitylevel">
+        <el-input
+          v-model="queryParams.confidentialitylevel"
+          placeholder="请输入密级"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          size="mini"
+          @click="handleQuery"
+          >搜索</el-button
+        >
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
+          >重置</el-button
+        >
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['bdglSecret:secretaccount:add']"
+          >新增</el-button
+        >
+      </el-col>
+      <!-- <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['bdglSecret:secretaccount:edit']"
+          >修改</el-button
+        >
+      </el-col> -->
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['bdglSecret:secretaccount:remove']"
+          >删除</el-button
+        >
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['bdglSecret:secretaccount:export']"
+          >导出</el-button
+        >
+      </el-col>
+    </el-row>
+
+    <el-table
+      v-loading="loading"
+      :data="secretaccountList"
+      @selection-change="handleSelectionChange"
+      :header-cell-style="{ background: '#003C69', color: 'white' }"
+      style="width: 100%"
+    >
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="序号" type="index" width="50" align="center">
+        <template scope="scope">
+          <span>{{
+            (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
+          }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="单位" align="center" prop="unitname" />
+      <el-table-column label="类型" align="center" prop="stype" />
+      <el-table-column label="品牌" align="center" prop="brand" />
+      <el-table-column label="型号" align="center" prop="model" />
+      <el-table-column
+        label="硬盘序列号"
+        align="center"
+        prop="harddisknumber"
+      />
+      <el-table-column
+        label="MAC地址/物理地"
+        align="center"
+        prop="macaddress"
+      />
+      <el-table-column label="密级" align="center" prop="confidentialitylevel">
+        <template slot-scope="scope">
+          <dict-tag
+            :options="dict.type.brigade_secret"
+            :value="scope.row.confidentialitylevel"
+          />
+        </template>
+      </el-table-column>
+      <el-table-column label="保密编码" align="center" prop="levelnumber" />
+      <el-table-column
+        label="责任人"
+        align="center"
+        prop="
+persoeliable"
+      />
+      <el-table-column label="备注" align="center" prop="remarks" />
+      <el-table-column label="单位ID" align="center" prop="unitid" />
+      <el-table-column
+        label="操作"
+        align="center"
+        class-name="small-padding fixed-width"
+      >
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['bdglSecret:secretaccount:edit']"
+            >修改</el-button
+          >
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['bdglSecret:secretaccount:remove']"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <pagination
+      v-show="total > 0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改涉密计算机台账对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+      <el-form
+        ref="form"
+        :model="form"
+        :rules="rules"
+        label-width="80px"
+        inline
+      >
+        <el-form-item label="单位" prop="unitname">
+          <treeselect
+            v-model="form.unitId"
+            :options="deptOptions"
+            placeholder="请选择使用单位"
+            @select="selectPeo"
+          />
+        </el-form-item>
+        <el-form-item label="责任人" prop="persoeliable">
+          <el-select v-model="form.persoeliable" placeholder="请选择负责人">
+            <el-option
+              v-for="(item, i) in renYuan"
+              :key="i"
+              :label="item.name"
+              :value="item.id"
+              class="input_xiala"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="密级" prop="confidentialitylevel">
+          <el-select
+            v-model="form.confidentialitylevel"
+            placeholder="请选择密级"
+          >
+            <el-option
+              v-for="item in ziDian"
+              :key="item.dictValue"
+              :label="item.dictLabel"
+              :value="item.dictValue"
+              class="input_xiala"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="品牌" prop="brand">
+          <el-input v-model="form.brand" placeholder="请输入品牌" />
+        </el-form-item>
+        <el-form-item label="型号" prop="model">
+          <el-input v-model="form.model" placeholder="请输入型号" />
+        </el-form-item>
+        <el-form-item label="硬盘序列号" prop="harddisknumber">
+          <el-input
+            v-model="form.harddisknumber"
+            placeholder="请输入硬盘序列号"
+          />
+        </el-form-item>
+        <el-form-item label="MAC地址/物理地" prop="macaddress">
+          <el-input
+            v-model="form.macaddress"
+            placeholder="请输入MAC地址/物理地"
+          />
+        </el-form-item>
+
+        <el-form-item label="保密编码" prop="levelnumber">
+          <el-input v-model="form.levelnumber" placeholder="请输入保密编码" />
+        </el-form-item>
+        <div class="jiben">备注</div>
+        <el-form-item label="" prop="remarks">
+          <el-input
+            v-model="form.remarks"
+            type="textarea"
+            placeholder="请输入备注"
+          />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel" size="btn">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import {
+  listSecretaccount,
+  getSecretaccount,
+  delSecretaccount,
+  addSecretaccount,
+  updateSecretaccount,
+} from "@/api/bdglSecret/secretaccount";
+// 单位
+import {
+  getZhuChiRen,
+  getDept,
+} from "@/api/grassrootsregistration/bdglmeeting";
+import Treeselect from "@riophae/vue-treeselect";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+import { getDicts } from "@/api/system/dict/data";
+
+export default {
+  name: "Secretaccount",
+  components: { Treeselect },
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 涉密计算机台账表格数据
+      secretaccountList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        unitname: null,
+        stype: null,
+        brand: null,
+        model: null,
+        harddisknumber: null,
+        macaddress: null,
+        confidentialitylevel: null,
+        levelnumber: null,
+
+        persoeliable: null,
+        remarks: null,
+        unitid: null,
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {},
+      // 部门树结构
+      deptOptions: [],
+      // 人员列表
+      renYuan: [],
+      // 密级列表
+      ziDian: [],
+    };
+  },
+  created() {
+    this.getList();
+    this.getTreeselect();
+    this.getdict();
+  },
+  methods: {
+    // 查询密级
+    getdict() {
+      getDicts("brigade_secret").then((res) => {
+        this.ziDian = res.data;
+      });
+    },
+    /** 查询部门下拉树结构 */
+    getTreeselect() {
+      getDept().then((response) => {
+        this.deptOptions = response.data;
+      });
+    },
+    // 单位选择触发
+    selectPeo(val) {
+      this.ChongZhiRen();
+      this.form.unitname=val.label
+      this.form.unitId=val.id
+      // 获取人员
+      this.getZhuChi(this.form.unitId);
+    },
+    // 重置表单人员
+    ChongZhiRen() {
+      // 责任人
+      this.form.persoeliable = null;
+    },
+    // 获取主持人
+    getZhuChi(id) {
+      console.log(id);
+      getZhuChiRen(id).then((res) => {
+        this.renYuan = res.data;
+      });
+    },
+    /** 查询涉密计算机台账列表 */
+    getList() {
+      this.loading = true;
+      listSecretaccount(this.queryParams).then((response) => {
+        this.secretaccountList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        unitname: null,
+        stype: null,
+        brand: null,
+        model: null,
+        harddisknumber: null,
+        macaddress: null,
+        confidentialitylevel: null,
+        levelnumber: null,
+
+        persoeliable: null,
+        remarks: null,
+        unitid: null,
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map((item) => item.id);
+      this.single = selection.length !== 1;
+      this.multiple = !selection.length;
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加涉密计算机台账";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids;
+      getSecretaccount(id).then((response) => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改涉密计算机台账";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate((valid) => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateSecretaccount(this.form).then((response) => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addSecretaccount(this.form).then((response) => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal
+        .confirm("是否确认删除涉密计算机台账的数据项?")
+        .then(function () {
+          return delSecretaccount(ids);
+        })
+        .then(() => {
+          this.getList();
+          this.$modal.msgSuccess("删除成功");
+        })
+        .catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download(
+        "bdglSecret/secretaccount/export",
+        {
+          ...this.queryParams,
+        },
+        `secretaccount_${new Date().getTime()}.xlsx`
+      );
+    },
+  },
+};
+</script>
+<style scoped>
+/* 对话框背景颜色 */
+::v-deep .el-dialog {
+  background: #004d86 !important;
+}
+
+::v-deep .el-textarea__inner {
+  width: 920px;
+  height: 104px;
+}
+
+::v-deep .el-dialog__header {
+  border-bottom: 1px solid #718a9d;
+}
+
+::v-deep .el-dialog__title {
+  color: #fff;
+  font: 18px;
+}
+
+::v-deep .el-dialog__headerbtn .el-dialog__close {
+  color: #fff;
+}
+
+::v-deep .el-form-item__label {
+  font: 16px;
+  color: #fff;
+  width: 148px !important;
+}
+
+::v-deep .el-input__inner {
+  /* width: 200px !important;
+  height: 36px; */
+  background: transparent;
+  color: #fff;
+  border: 1px solid white !important;
+  border-color: #fff !important;
+}
+
+/* 单位框背景颜色 */
+::v-deep .vue-treeselect__control {
+  background: transparent !important;
+  color: #fff;
+}
+
+/* 基本信息背景 */
+.jiben {
+  width: 920px;
+  height: 32px;
+  background-image: url(../../../images/小标题底.png);
+  margin-bottom: 25px;
+  color: #fff;
+  padding-left: 16px;
+  line-height: 32px;
+}
+
+::v-deep .el-dialog__body {
+  margin: 10px 30px 20px 50px;
+  padding-top: 20px !important;
+  box-sizing: border-box;
+  /* padding: 30px 12px 30px 28px; */
+}
+
+/*调整表单间距 */
+::v-deep .el-form-item__content {
+  width: 200px;
+}
+
+.contents {
+  padding: 0px 40px !important;
+}
+
+/* 下拉菜单 */
+.el-dropdown-link {
+  cursor: pointer;
+  color: #409eff;
+}
+
+.el-icon-arrow-down {
+  font-size: 12px;
+}
+
+/* 刷新图标 */
+/* .el-icon-refresh {
+  width: 76px;
+  height: 36px;
+  color: #fff;
+  background-color: #1d96ff !important;
+  border-radius: 4px;
+  border: none;
+  margin-left: 20px;
+  font-size: 14px;
+} */
+/* 下拉菜单字体/背景颜色 */
+.el-select-dropdown__item.hover,
+.el-select-dropdown__item:hover {
+  background-color: #004d86;
+  color: #fff;
+}
+
+.el-select-dropdown__item {
+  color: #fff;
+}
+
+/* 时间选择 */
+::v-deep .el-input--small .el-input__inner {
+  width: 200px;
+  height: 36px;
+  line-height: 36px;
+}
+
+.el-date-editor.el-input {
+  width: 200px;
+  height: 36px;
+  line-height: 36px;
+}
+
+::v-deep .el-date-editor.el-input .el-input__inner {
+  height: 36px;
+  line-height: 36px;
+}
+
+/* 单位下拉菜单选中字体颜色 */
+::v-deep .vue-treeselect__single-value {
+  color: #fff !important;
+}
+
+/* 分页按钮 */
+::v-deep .el-pagination.is-background .el-pager li {
+  background-color: #004d86;
+  color: #fff;
+}
+
+::v-deep .el-pagination.is-background .btn-next {
+  background-color: #004d86;
+  color: #fff;
+}
+
+::v-deep .el-input__inner {
+  cursor: pointer !important;
+}
+
+/* 底部确定取消按钮 */
+::v-deep .el-dialog__footer {
+  padding: 18px 40px 30px 0px;
+  margin-right: 32px;
+}
+
+/* 增加按钮弹框 */
+::v-deep .el-dialog {
+  width: 1060px !important;
+}
+
+::v-deep .el-dialog__body {
+  padding: none !important;
+}
+
+/* 文件编号背景颜色 */
+::v-deep .el-input.is-disabled .el-input__inner {
+  background: transparent !important;
+}
+
+/* 调整输入框提示文字颜色 */
+::v-deep .vue-treeselect__placeholder {
+  color: #bdbdbd4f !important;
+}
+
+::v-deep input::-webkit-input-placeholder {
+  color: #bdbdbd4f !important;
+}
+
+::v-deep input:-moz-placeholder {
+  color: #bdbdbd4f !important;
+}
+
+.hezi {
+  height: 100px;
+  margin-bottom: 13px;
+  margin-top: 15px;
+  position: relative;
+  background: rgb(0, 60, 105);
+  color: #fff;
+  font-size: 18px;
+  font-weight: 600;
+}
+
+.tji {
+  width: 176px;
+  height: 36px;
+  text-align: center;
+  line-height: 36px;
+  position: absolute;
+  top: -18px;
+  right: 87px;
+  color: #fff;
+  font-size: 18px;
+  font-weight: 600;
+  background: #004d86;
+}
+</style>

+ 9 - 4
src/views/bdglregular/regularinfo/index.vue

@@ -635,7 +635,7 @@
           type="primary"
           @click="submitForm2"
           v-if="btnnum != 0 && btnnum != 1 && zg == 3"
-          >确 定1</el-button
+          >确 定</el-button
         >
         <el-button type="primary" @click="tongguofun" v-if="btnnum == 0"
           >通 过</el-button
@@ -644,7 +644,7 @@
           >重新整改</el-button
         >
         <el-button type="primary" @click="weitongguofun" v-if="btnnum == 1"
-          >确 定2</el-button
+          >确 定</el-button
         >
         <el-button @click="cancel" size="btn">取 消</el-button>
       </div>
@@ -1142,7 +1142,7 @@ export default {
       url: process.env.VUE_APP_BASE_API,
       statelist: ["未通过", "待处理", "待验收", "已通过", "已逾期"],
       restdata: false,
-      wenNam:null
+      wenName:null
     };
   },
   created() {
@@ -1475,8 +1475,13 @@ export default {
               console.log(this.form.documentProof.length>0)
               if (typeof this.form.documentProof != "string") {
                 let documentProofs = this.form.documentProof;
-                this.form.documentProof = documentProofs[0].url;
+                if(documentProofs.length>0){
+                  this.form.documentProof = documentProofs[0].url;
                 this.form.wenjianname = documentProofs[0].name;
+                }else{
+                  this.form.documentProof = "";
+                this.form.wenjianname = "";
+                }
               }
             }
             this.form.caoZuoType = this.queryParams.caoZuoType;

+ 26 - 16
src/views/bdglregular/specialinfo/index.vue

@@ -598,13 +598,13 @@
           type="primary"
           @click="submitForm"
           v-if="btnnum != 0 && btnnum != 1 && zg != 3"
-          >确 定1</el-button
+          >确 定</el-button
         >
         <el-button
           type="primary"
           @click="submitForm2"
           v-if="btnnum != 0 && btnnum != 1 && zg == 3"
-          >确 定2</el-button
+          >确 定</el-button
         >
         <el-button type="primary" @click="tongguofun" v-if="btnnum == 0"
           >通 过</el-button
@@ -613,7 +613,7 @@
           >重新整改</el-button
         >
         <el-button type="primary" @click="weitongguofun" v-if="btnnum == 1"
-          >确 定3</el-button
+          >确 定</el-button
         >
         <el-button @click="cancel" size="btn">取 消</el-button>
       </div>
@@ -820,12 +820,13 @@
           <imageUpload v-model="form.pictureProof" :limit="1" />
           <!-- <el-input v-model="form.pictureProof" placeholder="请输入图片举证" /> -->
         </el-form-item>
-        <div class="jiben" v-if="jiannum != 0&&wenName==1">文件举证</div>
+        <div class="jiben" v-if="jiannum != 0 && wenName == 1">文件举证</div>
         <el-form-item
           label
           prop="documentProof"
           :class="{ active: isActive }"
-          v-if="jiannum != 0&&wenName==1"
+          v-if="jiannum != 0 && wenName == 1"
+          disabled
         >
           <!-- <fileUpload v-model="form.documentProof" /> -->
           <!-- <fileUpload v-model="form.documentProof" :limit="1" /> -->
@@ -834,6 +835,7 @@
             v-model="form.wenjianname"
             style="width: 600px"
             class="wenjian"
+            disabled
           />
           <a
             :href="url + form.documentProof"
@@ -1011,7 +1013,7 @@ export default {
       isdisabled: false,
       zg: null,
       open3: false,
-      wenName:null,
+      wenName: null,
       isActive: null,
       url: process.env.VUE_APP_BASE_API,
       // 树形结构列表
@@ -1265,10 +1267,10 @@ export default {
       getSpecialinfo(id).then((response) => {
         this.disabled = true;
         this.form = response.data;
-        if(response.data.wenjianname){
-          this.wenName=1
-        }else{
-          this.wenName=0
+        if (response.data.wenjianname) {
+          this.wenName = 1;
+        } else {
+          this.wenName = 0;
         }
         this.open3 = true;
         this.title = "修改经常性检查";
@@ -1313,8 +1315,13 @@ export default {
             if (this.form.documentProof) {
               if (typeof this.form.documentProof != "string") {
                 let documentProofs = this.form.documentProof;
-                this.form.documentProof = documentProofs[0].url;
-                this.form.wenjianname = documentProofs[0].name;
+                if (documentProofs.length > 0) {
+                  this.form.documentProof = documentProofs[0].url;
+                  this.form.wenjianname = documentProofs[0].name;
+                } else {
+                  this.form.documentProof = "";
+                  this.form.wenjianname = "";
+                }
               }
             }
             console.log(this.form);
@@ -1326,10 +1333,10 @@ export default {
               // this.open3=false;
               this.getList();
             });
-        } else {
-          this.$message.error("请上传图片或者文件!");
+          } else {
+            this.$message.error("请上传图片或者文件!");
+          }
         }
-      }
       });
     },
     /** 提交按钮 */
@@ -1573,7 +1580,10 @@ hr {
 ::v-deep .box5 .el-form-item__content {
   width: 200px;
 }
-::v-deep .el-link.el-link--default{
+::v-deep .el-link.el-link--default {
   color: #fff;
 }
+::v-deep .upload-file-list .ele-upload-list__item-conten{
+  width:700px
+}
 </style>

+ 257 - 137
src/views/grassrootsregistration/bdgldiary/index.vue

@@ -138,10 +138,14 @@
         <el-table-column label="编制文职" align="center" prop="orgcivilian" />
         <el-table-column label="查铺查哨" align="center" prop="inspect">
           <template slot-scope="scope">
-            <span style="color: #67c23a" v-if="scope.row.bdglDailyInspectLen != 0"
+            <span
+              style="color: #67c23a"
+              v-if="scope.row.bdglDailyInspectLen != 0"
               >登记</span
             >
-            <span style="color: #ff4949" v-if="scope.row.bdglDailyInspectLen == 0"
+            <span
+              style="color: #ff4949"
+              v-if="scope.row.bdglDailyInspectLen == 0"
               >未登记</span
             >
           </template>
@@ -154,11 +158,6 @@
             <span v-else style="color: #ff4949">未审批</span>
           </template>
         </el-table-column>
-        <el-table-column label="完整度" align="center" prop="completionRatio">
-          <template slot-scope="scope">
-            <span>{{scope.row.completionRatio}}%</span>
-          </template>
-        </el-table-column>
         <el-table-column
           width="250"
           label="操作"
@@ -374,21 +373,17 @@
                 </tr>
                 <tr align="center">
                   <td height="60">
-                    <el-input
-                      v-model="item.dateline"
-                      placeholder="请输入时间"
-                    ></el-input>
+                    <el-input v-model="item.dateline" placeholder=""></el-input>
                   </td>
                   <td rowspan="2" colspan="2">
                     <el-input
                       type="textarea"
                       :rows="1"
                       placeholder="请输入内容"
-                      v-model="item.centertext"
+                      v-model="item.contents"
                       :autosize="true"
                       resize="none"
                     >
-                      {{ item.contents }}
                     </el-input>
                   </td>
                   <td>
@@ -417,6 +412,77 @@
                 </tr>
               </table>
             </div>
+            <!-- 工作登记 -->
+            <div class="box1">
+              <el-form
+                ref="form"
+                :model="tomList"
+                :rules="rules"
+                label-width="80px"
+                :inline="true"
+              >
+                <el-form-item label="" prop="day">
+                  <el-select
+                    v-model="tomList.wook"
+                    @change="datelinefun"
+                    placeholder="早晨"
+                  >
+                    <el-option
+                      v-for="item in day"
+                      :key="item.value"
+                      :label="item.label"
+                      :value="item.label"
+                      class="input_xiala"
+                    >
+                    </el-option>
+                  </el-select>
+                </el-form-item>
+
+                <el-time-select
+                  class="b1"
+                  placeholder="起始时间"
+                  v-model="tomList.startTime"
+                  :picker-options="option"
+                  style="margin-right: 22px"
+                >
+                </el-time-select>
+                <el-time-select
+                  class="b1"
+                  placeholder="结束时间"
+                  v-model="tomList.endTime"
+                  :picker-options="option"
+                  style="margin-right: 22px"
+                >
+                </el-time-select>
+                <div class="box2">
+                  <el-form-item label="" prop="organizer">
+                    <el-input
+                      v-model="tomList.organizer"
+                      placeholder="组织人"
+                      clearable
+                      size="small"
+                    />
+                  </el-form-item>
+                  <!-- 工作登记-添加按钮 -->
+                  <div class="btn">
+                    <el-button
+                      type="primary"
+                      icon="el-icon-check"
+                      @click="tijiao"
+                    ></el-button>
+                  </div>
+                </div>
+                <el-form-item label="" prop="content">
+                  <el-input
+                    type="textarea"
+                    v-model="tomList.contents"
+                    placeholder="内容"
+                    clearable
+                    size="small"
+                  />
+                </el-form-item>
+              </el-form>
+            </div>
 
             <div class="jiben">公差勤务</div>
             <el-form-item prop="tolerance">
@@ -673,24 +739,6 @@
                     ></el-input>
                   </el-form-item>
                   <el-form-item label="" prop="">
-                    <!-- <el-date-picker
-                    type="datetime"
-                    v-model="item1.examineDate"
-                    :editable="false"
-                    size="mini"
-                    placeholder="选择日期"
-                    value-format="yyyy-MM-dd-HH-mm"
-                    @change="chenge"
-                    :picker-options="pickerOptions"
-                  >
-                  </el-date-picker> -->
-                    <!-- <el-date-picker
-                      v-model="item1.examineDate"
-                      type="datetime"
-                      placeholder="选择日期时间"
-                      class="sun"
-                    >
-                    </el-date-picker> -->
                     <el-time-picker
                       v-model="item1.examineDate"
                       :picker-options="{
@@ -756,15 +804,6 @@
                     ></el-input>
                   </el-form-item>
                   <el-form-item label="" prop="">
-                    <!-- <el-date-picker
-                      v-model="item1.comeDate"
-                      type="date"
-                      :editable="false"
-                      size="mini"
-                      placeholder="来队时间"
-                      value-format="yyyy-MM-dd"
-                    >
-                    </el-date-picker> -->
                     <el-time-picker
                       v-model="item1.comeDate"
                       :picker-options="{
@@ -776,15 +815,6 @@
                     </el-time-picker>
                   </el-form-item>
                   <el-form-item label="" prop="">
-                    <!-- <el-date-picker
-                      v-model="item1.leaveDate"
-                      type="date"
-                      :editable="false"
-                      size="mini"
-                      placeholder="离队时间"
-                      value-format="yyyy-MM-dd"
-                    >
-                    </el-date-picker> -->
                     <el-time-picker
                       v-model="item1.leaveDate"
                       :picker-options="{
@@ -816,7 +846,7 @@
               </div>
             </div>
 
-            <div class="jiben">请假外出</div>
+            <!-- <div class="jiben">请假外出</div>
             <div class="box3 qing_jia">
               <el-form v-for="(item, e) in qingJia" :key="e + ' '">
                 <div>
@@ -896,7 +926,7 @@
                   </el-form-item>
                 </div>
               </el-form>
-            </div>
+            </div> -->
           </el-form>
         </div>
         <div slot="footer" class="dialog-footer">
@@ -1166,16 +1196,17 @@ export default {
       // 搜索时间保存
       tiem: null,
       // 训练情况
-      xunlian: [
-        {
-          dateline: null,
-          contents: null,
-          shouldArrive: null,
-          realTo: null,
-          percentage: null,
-          organizer: null,
-        },
-      ],
+      xunlian: [],
+      // 工作安排字段
+      tomList: {
+        wook: null,
+        startTime: null,
+        endTime: null,
+        peopleIds: null,
+        address: null,
+        contents: null,
+        organizer: null,
+      },
       // 数据时间
       DataTime: "",
       //  右边登记数据
@@ -1201,6 +1232,32 @@ export default {
       dw: {},
       formes: {},
       statustimer: false,
+      //早中晚选中
+      day: [
+        {
+          value: "选项1",
+          label: "早晨",
+        },
+        {
+          value: "选项2",
+          label: "上午",
+        },
+        {
+          value: "选项3",
+          label: "下午",
+        },
+        {
+          value: "选项4",
+          label: "晚上",
+        },
+      ],
+      option: {
+        start: "06:00",
+        step: "00:05",
+        end: "08:00",
+      },
+      // 训练列表
+      xunList: [],
     };
   },
   created() {
@@ -1223,6 +1280,58 @@ export default {
     this.getUser();
   },
   methods: {
+    // 一周工作提交
+    tijiao() {
+      if (
+        this.tomList.wook != null &&
+        this.tomList.startTime != null &&
+        this.tomList.endTime != null &&
+        this.tomList.contents != null &&
+        this.tomList.organizer != null
+      ) {
+        this.xunlian.push({
+          dateline: this.tomList.wook,
+          contents:
+            this.tomList.startTime +
+            "-" +
+            this.tomList.endTime +
+            " " +
+            this.tomList.contents +
+            "(" +
+            this.tomList.organizer +
+            ")",
+          percentage: null,
+          realTo: null,
+          shouldArrive: null,
+        });
+        this.tomList = {};
+      } else {
+        this.$message.error("内容填写不完整!");
+      }
+    },
+    datelinefun(val) {
+      if (val == "早晨") {
+        this.option.start = "06:00";
+        this.option.end = "08:00";
+        this.tomList.startTime = null;
+        this.tomList.endTime = null;
+      } else if (val == "上午") {
+        this.option.start = "08:00";
+        this.option.end = "012:00";
+        this.tomList.startTime = null;
+        this.tomList.endTime = null;
+      } else if (val == "下午") {
+        this.option.start = "12:00";
+        this.option.end = "18:00";
+        this.tomList.startTime = null;
+        this.tomList.endTime = null;
+      } else if (val == "晚上") {
+        this.option.start = "18:00";
+        this.option.end = "23:00";
+        this.tomList.startTime = null;
+        this.tomList.endTime = null;
+      }
+    },
     // 动态判断时间的修改
     gettimer() {
       listDiary().then((res) => {
@@ -1235,7 +1344,6 @@ export default {
     getUser() {
       getUserProfile().then((response) => {
         this.dw = response.data.dept;
-        // console.log(this.dw);
       });
     },
     // 新增时间获取
@@ -1356,19 +1464,24 @@ export default {
     // 获取训练
     XunLian(id, tiem) {
       getXunLian(id, tiem).then((res) => {
-        this.xunlian = res.data;
-        if (this.xunlian) {
-          for (var i = 0; i < this.xunlian.length; i++) {
-            this.xunlian[i].centertext =
-              this.xunlian[i].startTime +
-              "-" +
-              this.xunlian[i].endTime +
-              "  " +
-              this.xunlian[i].contents +
-              "(" +
-              this.xunlian[i].organizer +
-              ")";
+        if (res.data) {
+          this.xunlian = res.data;
+          if (this.xunlian) {
+            for (var i = 0; i < this.xunlian.length; i++) {
+              // centertext
+              this.xunlian[i].contents =
+                this.xunlian[i].startTime +
+                "-" +
+                this.xunlian[i].endTime +
+                "  " +
+                this.xunlian[i].contents +
+                "(" +
+                this.xunlian[i].organizer +
+                ")";
+            }
           }
+        } else {
+          this.xunlian = [];
         }
       });
     },
@@ -1619,16 +1732,7 @@ export default {
           dialogue: null,
         },
       ];
-      this.xunlian = [
-        {
-          dateline: null,
-          contents: null,
-          shouldArrive: null,
-          realTo: null,
-          percentage: null,
-          organizer: null,
-        },
-      ];
+      this.xunlian = [];
       this.qingJia = [
         {
           name: null,
@@ -1641,6 +1745,15 @@ export default {
           overTime: null,
         },
       ];
+      this.tomList = {
+        wook: null,
+        startTime: null,
+        endTime: null,
+        peopleIds: null,
+        adorganizerdress: null,
+        contents: null,
+        organizer: null,
+      };
       this.resetForm("form");
     },
     /** 对话框重置按钮操作 */
@@ -1698,50 +1811,16 @@ export default {
         var tiems = new Date(response.data.blogDate);
         this.form = response.data;
         this.form.blogDate = tiems;
-        if (this.form.bdglDiaryLeaveList) {
-          if (this.form.bdglDiaryLeaveList.length > 0) {
-            this.qingJia = this.form.bdglDiaryLeaveList;
-          }
-        } else {
-          this.qingJia = [
-            {
-              name: null,
-              job: null,
-              reason: null,
-              leaveDuration: null,
-              leaveApprover: null,
-              leaveTime: null,
-              backTime: null,
-              overTime: null,
-            },
-          ];
-        }
         //  请求首长
         this.getShous(this.form.unitId);
-        this.xunlian = response.data.weekworkRegisters;
-        if (this.xunlian) {
-          for (var i = 0; i < this.xunlian.length; i++) {
-            this.xunlian[i].centertext =
-              this.xunlian[i].startTime +
-              "-" +
-              this.xunlian[i].endTime +
-              "  " +
-              this.xunlian[i].contents +
-              "(" +
-              this.xunlian[i].organizer +
-              ")";
+        // 训练计划
+        this.xunList = response.data.bdglDiaryWeekworkRegisterList;
+        if (this.xunList) {
+          for (let index = 0; index < this.xunList.length; index++) {
+            this.xunlian.push(this.xunList[index]);
           }
         } else {
-          this.xunlian = [
-            {
-              dateline: null,
-              contents: null,
-              shouldArrive: null,
-              realTo: null,
-              percentage: null,
-              organizer: null,
-            },
-          ];
+          this.xunlian = [];
         }
 
         // 请求人员
@@ -1822,6 +1901,13 @@ export default {
           ) {
             this.form.bdglDiaryLeaveList = this.qingJia;
           }
+          // 工作安排
+          if (
+            this.xunlian[0].dateline != null &&
+            this.xunlian[0].contents != null
+          ) {
+            this.form.bdglDiaryWeekworkRegisterList = this.xunlian;
+          }
           if (this.form.id != null) {
             updateBdgldiary(this.form).then((response) => {
               this.$modal.msgSuccess("修改成功");
@@ -1854,6 +1940,13 @@ export default {
             if (this.relatives[0].peopleId !== null) {
               this.form.kinsfolk = this.relatives;
             }
+            // 工作安排
+            if (
+              this.xunlian[0].dateline != null &&
+              this.xunlian[0].contents != null
+            ) {
+              this.form.bdglDiaryWeekworkRegisterList = this.xunlian;
+            }
             this.form.blogDate = new Date(this.form.blogDate);
             // // 训练计划
             this.form.weekworkRegisters = this.xunlian;
@@ -1866,17 +1959,6 @@ export default {
         }
       });
     },
-    // 隔行变色
-    // changeColor() {
-    //   var content = document.getElementsByClassName("el-tree-node__content");
-    //   for (var i = 0; i < content.length; i++) {
-    //     if (i % 2 === 0) {
-    //       content[i].style.background = "#00365F ";
-    //     } else {
-    //       content[i].style.background = "#003C69";
-    //     }
-    //   }
-    // },
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;
@@ -2002,14 +2084,15 @@ export default {
 }
 
 ::v-deep .btn {
-  width: 76px;
+  width: 54px;
   height: 36px;
   color: #fff;
   background-color: #1d96ff;
   border-radius: 4px;
   border: none;
-  margin-left: 20px;
   font-size: 14px;
+  display: inline-block;
+  margin-left: 60px;
 }
 
 ::v-deep .el-icon-refresh {
@@ -2437,4 +2520,41 @@ export default {
   content: "";
   display: inline-block;
 }
+/* 新增工作登记 */
+.box1 {
+  width: 920px;
+  min-height: 100px;
+  border: 1px solid white;
+  color: #fff;
+  border-radius: 5px;
+  margin-bottom: 30px;
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  position: relative;
+  padding: 20px 20px 0px 30px;
+}
+.box1 ::v-deep .el-textarea__inner {
+  width: 806px;
+  min-height: 104px !important;
+  font-size: 14px;
+}
+.box1 ::v-deep .el-form-item__content {
+  margin-right: 12px;
+}
+.box1 ::v-deep .el-date-editor {
+  width: 170px !important;
+  height: 36px;
+  line-height: 36px;
+}
+.box1 ::v-deep .el-form-item__content {
+  width: 130px;
+  cursor: pointer !important;
+}
+.box2 ::v-deep .el-form-item__content .el-input__inner {
+  width: 170px !important;
+}
+.box2 {
+  display: inline-block;
+}
 </style>

+ 31 - 368
src/views/grassrootsregistration/personnelRoster/index.vue

@@ -1,32 +1,11 @@
-<!-- 文连务会记录本领导 -->
+<!--人员记录本领导 -->
 <template>
   <div class="arr_conten">
-    <!-- <el-form
-      :model="form"
-      ref="form"
-      :inline="true"
-      label-width="68px"
-      style="padding-left: 30px"
-    >
-      <el-form-item prop="year">
-        <el-date-picker
-          v-model="form.year"
-          type="year"
-          placeholder="选择年"
-          @change="getList"
-          value-format="yyyy"
-          :editable="false"
-        >
-        </el-date-picker>
-      </el-form-item>
-      <el-form-item>
-        <el-button size="btr" @click="resetQuery">重置</el-button>
-      </el-form-item>
-    </el-form> -->
     <div v-if="status == 1">
       <ul v-for="(item, i) in lieList" :key="i + ' '">
         <li v-for="(item1, i1) in item" :key="i1">
           <div class="names">{{ item1.deptName }}</div>
+          <div class="rens">{{item1.peopleNum}}人</div>
           <div class="btn">
             <el-button size="btJS" @click="chaKan(item1.deptId)"
               >查看</el-button
@@ -35,20 +14,9 @@
         </li>
       </ul>
     </div>
-    <!-- 搜索的时候列表 -->
-    <div v-if="status == 0">
-      <ul>
-        <li v-for="(item, i) in lieList" :key="i">
-          <div class="names">{{ item.deptName }}</div>
-          <div class="btn">
-            <el-button size="btJS" @click="chaKan(item.deptId)">查看</el-button>
-          </div>
-        </li>
-      </ul>
-    </div>
 
     <!-- 查看第一次 -->
-    <el-dialog
+    <!-- <el-dialog
       :visible.sync="tableStatus"
       :title="title"
       append-to-body
@@ -109,7 +77,6 @@
             />
           </template>
         </el-table-column>
-        <!-- <el-table-column label="等级" align="center" prop="gradeId" /> -->
         <el-table-column
           label="职务等级时间"
           align="center"
@@ -161,7 +128,7 @@
         :limit.sync="queryParams.pageSize"
         @pagination="chaKan1"
       />
-    </el-dialog>
+    </el-dialog> -->
 
     <div class="fff">
       <el-dialog
@@ -184,6 +151,7 @@
 
 <script>
 import personnelRoster from "@/components/look_word/personnelRoster.vue";
+import { listTypestatistics } from "@/api/peopleManage/typestatistics";
 import {
   listPeople,
   getPeople,
@@ -331,70 +299,26 @@ export default {
         this.deptOptions = res.data;
       }
     });
-    //性别
-    this.getDicts("sys_user_sex").then((response) => {
-      this.sexList = response.data;
-    });
-    //血型
-    this.getDicts("bloodType").then((response) => {
-      this.bloodType = response.data;
-    });
-    //政治面貌
-    this.getDicts("Caucus").then((response) => {
-      this.partyIds = response.data;
-    });
-    //健康情况
-    this.getDicts("healthy").then((response) => {
-      this.healthy = response.data;
-    });
-    //婚姻情况
-    this.getDicts("marryList").then((response) => {
-      this.marryList = response.data;
-    });
-    //学历
-    this.getDicts("Degree_level").then((response) => {
-      this.educationId = response.data;
-    });
-    //婚姻情况
-    this.getDicts("degree").then((response) => {
-      this.degree = response.data;
-    });
-    //是否编制
-    this.getDicts("sys_yes_no").then((response) => {
-      this.authorizedStrength = response.data;
-    });
-    //子女情况
-    this.getDicts("sys_yw").then((response) => {
-      this.childrenList = response.data;
-    });
-    //人员类别
-    this.getDicts("personnel_type").then((response) => {
-      this.classId = response.data;
-    });
-    //职务层级
-    this.getDicts("post_Level").then((response) => {
-      this.postIds = response.data;
-    });
-    //军衔
-    this.getDicts("sys_user_rank").then((response) => {
-      this.rankIds = response.data;
-    });
-    //民族
-    this.getDicts("sys_familyName").then((response) => {
-      this.nationIds = response.data;
-    });
   },
   methods: {
     chaKan(row) {
-      this.queryParams.unitId = row;
-      this.unitId = row;
-      getPersonnelRosterOnUnitList(this.queryParams).then((res) => {
-        this.bdglevenList = res.rows;
-        this.total = res.total;
+      this.opens = false;
+      const deptId = row;
+      getRenYuanXiangQing(deptId).then((response) => {
+        this.renshu = response.data[0];
+        this.wordInfo = response.data[1];
         this.title = "查看人员名册";
-        this.tableStatus = true;
-        this.loading = false;
+        this.menuRoleVisible = true;
       });
+      // this.queryParams.unitId = row;
+      // this.unitId = row;
+      // getPersonnelRosterOnUnitList(this.queryParams).then((res) => {
+      //   this.bdglevenList = res.rows;
+      //   this.total = res.total;
+      //   this.title = "查看人员名册";
+      //   this.tableStatus = true;
+      //   this.loading = false;
+      // });
     },
     chaKan1(row) {
       getMeetRecordOnUnitList(this.queryParams).then((res) => {
@@ -406,21 +330,13 @@ export default {
     },
     /** 查询人员管理列表 */
     getList() {
-      if (this.form.year == null || this.form.year == "") {
         getPersonnelRosterList().then((res) => {
           res.rows.forEach((item) => {
             this.status = 1;
           });
           this.lieList = res.rows;
+          console.log(res.rows);
         });
-      } else {
-        getPersonnelRosterList(this.form.year).then((res) => {
-          res.rows.forEach((item) => {
-            this.status = 0;
-          });
-          this.lieList = res.rows;
-        });
-      }
     },
 
     // 取消按钮
@@ -433,133 +349,18 @@ export default {
       this.form = {
         id: null,
         name: null,
-        sex: null,
-        age: null,
-        birthDate: null,
-        command: null,
-        duty: null,
-        postId: null,
-        gradeId: null,
-        postDate: null,
-        job: null,
-        skillId: null,
-        skillDate: null,
-        levelId: null,
-        levelDate: null,
-        military: null,
-        idcard: null,
-        enlistDate: null,
-        enlistaddress: null,
-        rankId: null,
-        rankDate: null,
-        nationId: null,
-        origin: null,
-        classId: null,
-        educationId: null,
-        degreeId: null,
-        graduationDate: null,
-        school: null,
-        partyId: null,
-        partyDate: null,
-        training: null,
-        readmeFile: null,
-        readmeFileName: null,
-        prize: null,
-        marryList: null,
-        childrenList: null,
-        unitId: null,
-        avatar: null,
-        address: null,
-        phone: null,
-        status: 0,
-        createtimes: null,
-        updatetimes: null,
-        reign: null,
-        jobTime: null,
-        healthy: null,
-        bloodType: null,
-        postTime: null,
-        major: null,
-        admissionTime: null,
-        mobilePhoneModel: null,
-        guaranteeCardNo: null,
-        payrollCardNo: null,
-        authorizedStrength: null,
-        aboral: null,
-        live: null,
-        deptId: null,
-        userId: null,
-        nowMilitaryRank: null,
-        treatmentLevel: null,
-        rankUpgradeTime: null,
-        phoneStandby: null,
-        deptName: null,
-        isBianzhi: null,
       };
       this.bdglPeopleList = [];
       this.resetForm("form");
     },
-    /** 搜索按钮操作 */
-    handleQuery() {
-      this.queryParams.pageNum = 1;
-      this.getList();
-    },
     /** 重置按钮操作 */
     resetQuery() {
       this.resetForm("queryForm");
       this.handleQuery();
     },
-    // 多选框选中数据
-    handleSelectionChange(selection) {
-      this.ids = selection.map((item) => item.id);
-      this.single = selection.length !== 1;
-      this.multiple = !selection.length;
-    },
-    /** 新增按钮操作 */
-    handleAdd() {
-      this.reset();
-      this.open = true;
-      this.title = "添加人员管理";
-    },
-    /** 修改按钮操作 */
-    handleUpdate(row) {
-      this.reset();
-      const id = row.id || this.ids;
-      getPeople(id).then((response) => {
-        this.form = response.data;
-        this.jtlist = response.data.familyInformation;
-        this.bdglPeopleList = response.data.bdglPeopleList;
-        this.open = true;
-        this.title = "修改人员管理";
-      });
-    },
-    /** 提交按钮 */
-    submitForm() {
-      this.$refs["form"].validate((valid) => {
-        if (valid) {
-          this.form.deptName = this.$refs["deptId"].selectedLabel;
-          this.form.bdglPeopleList = this.bdglPeopleList;
-          this.form.familyInformation = this.jtlist;
-          if (this.form.id != null) {
-            updatePeople(this.form).then((response) => {
-              this.$modal.msgSuccess("修改成功");
-              this.open = false;
-              this.getList();
-            });
-          } else {
-            this.form.familyInformation = this.jtlist;
-            this.form.deptName = this.$refs["deptId"].selectedLabel;
-            addPeople(this.form).then((response) => {
-              this.$modal.msgSuccess("新增成功");
-              this.open = false;
-              this.getList();
-            });
-          }
-        }
-      });
-    },
     //查看按钮操作
     handleChakan(row) {
+      console.log(row.deptId);
       // 是否隐藏按钮
       this.opens = false;
       const deptId = row.deptId;
@@ -570,104 +371,6 @@ export default {
         this.menuRoleVisible = true;
       });
     },
-    /** 删除按钮操作 */
-    handleDelete(row) {
-      const ids = row.id || this.ids;
-      this.$modal
-        .confirm("是否确认删除人员管理的数据项?")
-        .then(function () {
-          return delPeople(ids);
-        })
-        .then(() => {
-          this.getList();
-          this.$modal.msgSuccess("删除成功");
-        })
-        .catch(() => {});
-    },
-    /** 人员管理序号 */
-    rowBdglPeopleIndex({ row, rowIndex }) {
-      row.index = rowIndex + 1;
-    },
-    /** 人员管理添加按钮操作 */
-    handleAddBdglPeople() {
-      let obj = {};
-      obj.name = "";
-      obj.sex = "";
-      obj.age = "";
-      obj.birthDate = "";
-      obj.command = "";
-      obj.duty = "";
-      obj.postId = "";
-      obj.gradeId = "";
-      obj.postDate = "";
-      obj.job = "";
-      obj.skillId = "";
-      obj.skillDate = "";
-      obj.levelId = "";
-      obj.levelDate = "";
-      obj.military = "";
-      obj.idcard = "";
-      obj.enlistDate = "";
-      obj.enlistaddress = "";
-      obj.rankId = "";
-      obj.rankDate = "";
-      obj.nationId = "";
-      obj.origin = "";
-      obj.classId = "";
-      obj.educationId = "";
-      obj.degreeId = "";
-      obj.graduationDate = "";
-      obj.school = "";
-      obj.partyId = "";
-      obj.partyDate = "";
-      obj.training = "";
-      obj.readmeFile = "";
-      obj.readmeFileName = "";
-      obj.prize = "";
-      obj.marryList = "";
-      obj.childrenList = "";
-      obj.unitId = "";
-      obj.avatar = "";
-      obj.address = "";
-      obj.phone = "";
-      obj.status = "";
-      obj.createtimes = "";
-      obj.updatetimes = "";
-      obj.reign = "";
-      obj.jobTime = "";
-      obj.healthy = "";
-      obj.bloodType = "";
-      obj.postTime = "";
-      obj.major = "";
-      obj.admissionTime = "";
-      obj.mobilePhoneModel = "";
-      obj.guaranteeCardNo = "";
-      obj.payrollCardNo = "";
-      obj.authorizedStrength = "";
-      obj.aboral = "";
-      obj.live = "";
-      obj.userId = "";
-      obj.nowMilitaryRank = "";
-      obj.treatmentLevel = "";
-      obj.rankUpgradeTime = "";
-      this.bdglPeopleList.push(obj);
-    },
-    /** 人员管理删除按钮操作 */
-    handleDeleteBdglPeople() {
-      if (this.checkedBdglPeople.length == 0) {
-        this.$modal.msgError("请先选择要删除的人员管理数据");
-      } else {
-        const bdglPeopleList = this.bdglPeopleList;
-        const checkedBdglPeople = this.checkedBdglPeople;
-        this.bdglPeopleList = bdglPeopleList.filter(function (item) {
-          return checkedBdglPeople.indexOf(item.index) == -1;
-        });
-      }
-    },
-    /** 复选框选中数据 */
-    handleBdglPeopleSelectionChange(selection) {
-      this.checkedBdglPeople = selection.map((item) => item.index);
-    },
     /** 导出按钮操作 */
     handleExport() {
       const queryParams = this.queryParams;
@@ -683,55 +386,6 @@ export default {
         })
         .catch(() => {});
     },
-    //新增家庭成员
-    tiaddfun() {
-      this.jtlist.push({
-        name: null,
-        characterRelationship: null,
-        phoneNumber: null,
-        unitName: null,
-      });
-    },
-    //删除家庭成员
-    jtDelete(i) {
-      this.jtlist.splice(i, 1);
-    },
-    //身份证号
-    idcardfun() {
-      this.form.sex =
-        this.form.idcard.substr(this.form.idcard.length - 2, 1) % 2 == 1
-          ? "0"
-          : "1";
-      this.form.birthDate =
-        this.form.idcard.substr(6, 4) +
-        "-" +
-        this.form.idcard.substr(10, 2) +
-        "-" +
-        this.form.idcard.substr(10, 2);
-      var myDate = new Date();
-      this.form.age = myDate.getFullYear() - this.form.idcard.substr(6, 4);
-    },
-    // 筛选节点
-    filterNode(value, data) {
-      if (!value) return true;
-      return data.label.indexOf(value) !== -1;
-    },
-    // 节点单击事件
-    handleNodeClick(data) {
-      this.queryParams.deptId = data.id;
-      this.getList();
-    },
-    // 隔行变色
-    // changeColor() {
-    //   var content = document.getElementsByClassName("el-tree-node__content");
-    //   for (var i = 0; i < content.length; i++) {
-    //     if (i % 2 === 0) {
-    //       content[i].style.background = "#00365F ";
-    //     } else {
-    //       content[i].style.background = "#003C69";
-    //     }
-    //   }
-    // },
   },
 };
 </script>
@@ -784,6 +438,15 @@ li {
   padding: 26px 26px 38px 26px;
   letter-spacing: 1px;
 }
+.rens{
+  color: #fff;
+  font-size: 14px;
+  text-align: center;
+  position: relative;
+  left: 0%;
+  top: -12%;
+  letter-spacing: 1px;
+}
 
 .btn {
   text-align: center;

+ 350 - 0
src/views/monitoring/brigadecamera/index.vue

@@ -0,0 +1,350 @@
+<template>
+  <div class="app-container">
+    <el-form
+      :model="queryParams"
+      ref="queryForm"
+      size="small"
+      :inline="true"
+      v-show="showSearch"
+      label-width="68px"
+    >
+      <el-form-item label="名称" prop="cameraname">
+        <el-input
+          v-model="queryParams.cameraname"
+          placeholder="请输入名称"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="单位名称" prop="unitname">
+        <el-input
+          v-model="queryParams.unitname"
+          placeholder="请输入单位名称"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="单位地址" prop="cameraaddress">
+        <el-input
+          v-model="queryParams.cameraaddress"
+          placeholder="请输入单位地址"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="创建时间" prop="cretetime">
+        <el-date-picker
+          clearable
+          v-model="queryParams.cretetime"
+          type="date"
+          value-format="yyyy-MM-dd"
+          placeholder="请选择创建时间"
+        >
+        </el-date-picker>
+      </el-form-item>
+      <el-form-item>
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          size="mini"
+          @click="handleQuery"
+          >搜索</el-button
+        >
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
+          >重置</el-button
+        >
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['monitoring:brigadecamera:add']"
+          >新增</el-button
+        >
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['monitoring:brigadecamera:edit']"
+          >修改</el-button
+        >
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['monitoring:brigadecamera:remove']"
+          >删除</el-button
+        >
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['monitoring:brigadecamera:export']"
+          >导出</el-button
+        >
+      </el-col>
+      <right-toolbar
+        :showSearch.sync="showSearch"
+        @queryTable="getList"
+      ></right-toolbar>
+    </el-row>
+
+    <el-table
+      v-loading="loading"
+      :data="brigadecameraList"
+      @selection-change="handleSelectionChange"
+    >
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="${comment}" align="center" prop="id" />
+      <el-table-column label="名称" align="center" prop="cameraname" />
+      <el-table-column label="单位名称" align="center" prop="unitname" />
+      <el-table-column label="单位地址" align="center" prop="cameraaddress" />
+      <el-table-column
+        label="创建时间"
+        align="center"
+        prop="cretetime"
+        width="180"
+      >
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.cretetime, "{y}-{m}-{d}") }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column
+        label="操作"
+        align="center"
+        class-name="small-padding fixed-width"
+      >
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['monitoring:brigadecamera:edit']"
+            >修改</el-button
+          >
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['monitoring:brigadecamera:remove']"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <pagination
+      v-show="total > 0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改摄像头管理对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="名称" prop="cameraname">
+          <el-input v-model="form.cameraname" placeholder="请输入名称" />
+        </el-form-item>
+        <el-form-item label="单位名称" prop="unitname">
+          <el-input v-model="form.unitname" placeholder="请输入单位名称" />
+        </el-form-item>
+        <el-form-item label="单位地址" prop="cameraaddress">
+          <el-input v-model="form.cameraaddress" placeholder="请输入单位地址" />
+        </el-form-item>
+        <el-form-item label="创建时间" prop="cretetime">
+          <el-date-picker
+            clearable
+            v-model="form.cretetime"
+            type="date"
+            value-format="yyyy-MM-dd"
+            placeholder="请选择创建时间"
+          >
+          </el-date-picker>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import {
+  listBrigadecamera,
+  getBrigadecamera,
+  delBrigadecamera,
+  addBrigadecamera,
+  updateBrigadecamera,
+} from "@/api/monitoring/brigadecamera";
+
+export default {
+  name: "Brigadecamera",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 摄像头管理表格数据
+      brigadecameraList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        cameraname: null,
+        unitname: null,
+        cameraaddress: null,
+        cretetime: null,
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {},
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询摄像头管理列表 */
+    getList() {
+      this.loading = true;
+      listBrigadecamera(this.queryParams).then((response) => {
+        this.brigadecameraList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        cameraname: null,
+        unitname: null,
+        cameraaddress: null,
+        cretetime: null,
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map((item) => item.id);
+      this.single = selection.length !== 1;
+      this.multiple = !selection.length;
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加摄像头管理";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids;
+      getBrigadecamera(id).then((response) => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改摄像头管理";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate((valid) => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateBrigadecamera(this.form).then((response) => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addBrigadecamera(this.form).then((response) => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal
+        .confirm('是否确认删除摄像头管理编号为"' + ids + '"的数据项?')
+        .then(function () {
+          return delBrigadecamera(ids);
+        })
+        .then(() => {
+          this.getList();
+          this.$modal.msgSuccess("删除成功");
+        })
+        .catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download(
+        "monitoring/brigadecamera/export",
+        {
+          ...this.queryParams,
+        },
+        `brigadecamera_${new Date().getTime()}.xlsx`
+      );
+    },
+  },
+};
+</script>

+ 16 - 8
src/views/peopleChuRu/leaveOne/index.vue

@@ -282,7 +282,7 @@
           </el-date-picker>
         </el-form-item>
         <el-form-item label="请假人员" prop="peopleId">
-          <el-select
+          <!-- <el-select
            multiple
             v-model="form.peopleId"
             placeholder="请选择请假人员"
@@ -296,7 +296,21 @@
               :value="item.id"
             >
             </el-option>
-          </el-select>
+          </el-select> -->
+          <el-select
+           v-model="form.peopleId"
+           placeholder="请选择请假人员"
+           ref="headerSearchSelect"
+           clearable
+         >
+           <el-option
+             v-for="(item, i) in renYuan"
+             :key="i"
+             :label="item.name"
+             :value="item.id"
+           >
+           </el-option>
+         </el-select>
         </el-form-item>
         <!-- <el-form-item label="离队时间" prop="departureTime">
           <el-input v-model="form.departureTime" placeholder="请输入离队时间" />
@@ -622,17 +636,11 @@ export default {
               this.getList();
             });
           } else {
-            if (this.form.peopleId&&this.form.peopleId.length>0) {
-              this.form.peopleId = this.form.peopleId.join(",");
-            }
-            // console.log(this.form.peopleId.length>0);
-            if(this.form.peopleId.length>0){
               addLeaveOne(this.form).then((response) => {
               this.$modal.msgSuccess("新增成功");
               this.open = false;
               this.getList();
             });
-            }
           }
         }
       });

+ 671 - 0
src/views/peopleManage/typestatistics/index.vue

@@ -0,0 +1,671 @@
+<template>
+  <div class="app-container">
+    <!-- <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="单位id" prop="unitId">
+        <el-input
+          v-model="queryParams.unitId"
+          placeholder="请输入单位id"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="干部编制人数" prop="inpreparationGb">
+        <el-input
+          v-model="queryParams.inpreparationGb"
+          placeholder="请输入干部编制人数"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="士官编制人数" prop="inpreparationSg">
+        <el-input
+          v-model="queryParams.inpreparationSg"
+          placeholder="请输入士官编制人数"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="义务兵编制人数" prop="inpreparationYwb">
+        <el-input
+          v-model="queryParams.inpreparationYwb"
+          placeholder="请输入义务兵编制人数"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="干部在位人数" prop="incumbentsGb">
+        <el-input
+          v-model="queryParams.incumbentsGb"
+          placeholder="请输入干部在位人数"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="士官在位人数" prop="incumbentsSg">
+        <el-input
+          v-model="queryParams.incumbentsSg"
+          placeholder="请输入士官在位人数"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="义务兵在位人数" prop="incumbentsYwb">
+        <el-input
+          v-model="queryParams.incumbentsYwb"
+          placeholder="请输入义务兵在位人数"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="干部超" prop="outpreparationGb">
+        <el-input
+          v-model="queryParams.outpreparationGb"
+          placeholder="请输入干部超"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="士官超" prop="outpreparationSg">
+        <el-input
+          v-model="queryParams.outpreparationSg"
+          placeholder="请输入士官超"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="义务兵超" prop="outpreparationYwb">
+        <el-input
+          v-model="queryParams.outpreparationYwb"
+          placeholder="请输入义务兵超"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form> -->
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['peopleManage:typestatistics:add']"
+          >新增</el-button
+        >
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['peopleManage:typestatistics:edit']"
+          >修改</el-button
+        >
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['peopleManage:typestatistics:remove']"
+          >删除</el-button
+        >
+      </el-col>
+      <!-- <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['peopleManage:typestatistics:export']"
+          >导出</el-button
+        >
+      </el-col> -->
+      <right-toolbar
+        :showSearch.sync="showSearch"
+        @queryTable="getList"
+      ></right-toolbar>
+    </el-row>
+
+    <el-table
+      v-loading="loading"
+      :data="typestatisticsList"
+      @selection-change="handleSelectionChange"
+      :header-cell-style="{ background: '#003C69', color: 'white' }"
+    >
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="序号" type="index" width="50" align="center">
+        <template scope="scope">
+          <span>{{
+            (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
+          }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="单位" align="center" prop="unitName" />
+      <el-table-column
+        label="干部编制人数"
+        align="center"
+        prop="inpreparationGb"
+      />
+      <el-table-column
+        label="士官编制人数"
+        align="center"
+        prop="inpreparationSg"
+      />
+      <el-table-column
+        label="义务兵编制人数"
+        align="center"
+        prop="inpreparationYwb"
+      />
+      <el-table-column
+        label="干部在位人数"
+        align="center"
+        prop="incumbentsGb"
+      />
+      <el-table-column
+        label="士官在位人数"
+        align="center"
+        prop="incumbentsSg"
+      />
+      <el-table-column
+        label="义务兵在位人数"
+        align="center"
+        prop="incumbentsYwb"
+      />
+      <el-table-column label="干部超" align="center" prop="outpreparationGb" />
+      <el-table-column label="士官超" align="center" prop="outpreparationSg" />
+      <el-table-column
+        label="义务兵超"
+        align="center"
+        prop="outpreparationYwb"
+      />
+      <el-table-column
+        label="操作"
+        align="center"
+        class-name="small-padding fixed-width"
+      >
+        <template slot-scope="scope">
+          <el-button
+          size="btu"
+            type="text"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['peopleManage:typestatistics:edit']"
+            >修改</el-button
+          >
+          <el-button
+          size="btd"
+          type="text"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['peopleManage:typestatistics:remove']"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <pagination
+      v-show="total > 0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改人员类别数量对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+      <el-form
+        ref="form"
+        :model="form"
+        :rules="rules"
+        label-width="80px"
+        inline
+      >
+        <el-form-item label="单位" prop="unitId">
+          <treeselect
+            v-model="form.unitId"
+            :options="rese"
+            placeholder="选择单位"
+          />
+        </el-form-item>
+        <el-form-item label="干部编制人数" prop="inpreparationGb">
+          <el-input
+            v-model="form.inpreparationGb"
+            placeholder="请输入干部编制人数"
+          />
+        </el-form-item>
+        <el-form-item label="士官编制人数" prop="inpreparationSg">
+          <el-input
+            v-model="form.inpreparationSg"
+            placeholder="请输入士官编制人数"
+          />
+        </el-form-item>
+        <el-form-item label="义务兵编制人数" prop="inpreparationYwb">
+          <el-input
+            v-model="form.inpreparationYwb"
+            placeholder="请输入义务兵编制人数"
+          />
+        </el-form-item>
+        <el-form-item label="干部在位人数" prop="incumbentsGb">
+          <el-input
+            v-model="form.incumbentsGb"
+            placeholder="请输入干部在位人数"
+          />
+        </el-form-item>
+        <el-form-item label="士官在位人数" prop="incumbentsSg">
+          <el-input
+            v-model="form.incumbentsSg"
+            placeholder="请输入士官在位人数"
+          />
+        </el-form-item>
+        <el-form-item label="义务兵在位人数" prop="incumbentsYwb">
+          <el-input
+            v-model="form.incumbentsYwb"
+            placeholder="请输入义务兵在位人数"
+          />
+        </el-form-item>
+        <el-form-item label="干部超" prop="outpreparationGb">
+          <el-input
+            v-model="form.outpreparationGb"
+            placeholder="请输入干部超"
+          />
+        </el-form-item>
+        <el-form-item label="士官超" prop="outpreparationSg">
+          <el-input
+            v-model="form.outpreparationSg"
+            placeholder="请输入士官超"
+          />
+        </el-form-item>
+        <el-form-item label="义务兵超" prop="outpreparationYwb">
+          <el-input
+            v-model="form.outpreparationYwb"
+            placeholder="请输入义务兵超"
+          />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import {
+  listTypestatistics,
+  getTypestatistics,
+  delTypestatistics,
+  addTypestatistics,
+  updateTypestatistics,
+} from "@/api/peopleManage/typestatistics";
+// 导入树形结构
+import Treeselect from "@riophae/vue-treeselect";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+import { getDept } from "@/api/grassrootsregistration/bdgleven";
+
+export default {
+  components: { Treeselect },
+  name: "Typestatistics",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 人员类别数量表格数据
+      typestatisticsList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        unitId: null,
+        inpreparationGb: null,
+        inpreparationSg: null,
+        inpreparationYwb: null,
+        incumbentsGb: null,
+        incumbentsSg: null,
+        incumbentsYwb: null,
+        outpreparationGb: null,
+        outpreparationSg: null,
+        outpreparationYwb: null,
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        unitId: [
+          { required: true, message: "单位id不能为空", trigger: "blur" },
+        ],
+        createTime: [
+          { required: true, message: "创建时间不能为空", trigger: "blur" },
+        ],
+        createBy: [
+          { required: true, message: "创建者不能为空", trigger: "blur" },
+        ],
+      },
+      // 树形
+      rese: [],
+    };
+  },
+  created() {
+    this.getList();
+    this.getTreeselect()
+  },
+  methods: {
+    /** 查询部门下拉树结构 */
+    getTreeselect() {
+      getDept().then((response) => {
+        this.rese = response.data;
+        console.log(response.data);
+      });
+    },
+    /** 查询人员类别数量列表 */
+    getList() {
+      this.loading = true;
+      listTypestatistics(this.queryParams).then((response) => {
+        this.typestatisticsList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        unitId: null,
+        inpreparationGb: null,
+        inpreparationSg: null,
+        inpreparationYwb: null,
+        incumbentsGb: null,
+        incumbentsSg: null,
+        incumbentsYwb: null,
+        outpreparationGb: null,
+        outpreparationSg: null,
+        outpreparationYwb: null,
+        createTime: null,
+        createBy: null,
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map((item) => item.id);
+      this.single = selection.length !== 1;
+      this.multiple = !selection.length;
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加人员类别数量";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids;
+      getTypestatistics(id).then((response) => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改人员类别数量";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate((valid) => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateTypestatistics(this.form).then((response) => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addTypestatistics(this.form).then((response) => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal
+        .confirm('是否确认删除人员类别数量的数据项?')
+        .then(function () {
+          return delTypestatistics(ids);
+        })
+        .then(() => {
+          this.getList();
+          this.$modal.msgSuccess("删除成功");
+        })
+        .catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download(
+        "peopleManage/typestatistics/export",
+        {
+          ...this.queryParams,
+        },
+        `typestatistics_${new Date().getTime()}.xlsx`
+      );
+    },
+  },
+};
+</script>
+
+<style scoped>
+/* 对话框背景颜色 */
+::v-deep .el-dialog {
+  background: #004d86 !important;
+}
+::v-deep .el-textarea__inner {
+  width: 920px;
+  height: 104px;
+}
+::v-deep .el-dialog__header {
+  border-bottom: 1px solid #718a9d;
+}
+::v-deep .el-dialog__title {
+  color: #fff;
+  font: 18px;
+}
+::v-deep .el-dialog__headerbtn .el-dialog__close {
+  color: #fff;
+}
+::v-deep .el-form-item__label {
+  font: 16px;
+  color: #fff;
+  width: 100px !important;
+}
+::v-deep .el-input__inner {
+  /* width: 200px !important;
+  height: 36px; */
+  background: transparent;
+  color: #fff;
+  border-color: #fff !important;
+}
+/* 单位框背景颜色 */
+::v-deep .vue-treeselect__control {
+  background: #004d86 !important;
+}
+/* 基本信息背景 */
+.jiben {
+  width: 920px;
+  height: 32px;
+  background-image: url(../../../images/小标题底.png);
+  margin-bottom: 25px;
+  color: #fff;
+  padding-left: 16px;
+  line-height: 32px;
+}
+/*调整表单间距 */
+::v-deep .el-form-item__content {
+  width: 200px;
+}
+::v-deep .el-input__inner {
+  cursor: pointer !important;
+}
+/* 底部确定取消按钮 */
+::v-deep .el-dialog__footer {
+  padding: 30px 50px;
+}
+::v-deep .el-dialog__body {
+  margin: 10px 30px 20px 50px;
+  padding-top: 20px !important;
+  box-sizing: border-box;
+  /* padding: 30px 12px 30px 28px; */
+}
+.contents {
+  padding: 0px 40px !important;
+}
+/* 下拉菜单 */
+.el-dropdown-link {
+  cursor: pointer;
+  color: #409eff;
+}
+.el-icon-arrow-down {
+  font-size: 12px;
+}
+/* 刷新图标
+.el-icon-refresh {
+  width: 76px;
+  height: 36px;
+  color: #fff;
+  background-color: #1d96ff !important;
+  border-radius: 4px;
+  border: none;
+  margin-left: 20px;
+  font-size: 14px;
+} */
+/* 下拉菜单字体/背景颜色 */
+.el-select-dropdown__item.hover,
+.el-select-dropdown__item:hover {
+  background-color: #004d86;
+  color: #fff;
+}
+.el-select-dropdown__item {
+  color: #fff;
+}
+/* 时间选择 */
+::v-deep .el-input--small .el-input__inner {
+  width: 200px;
+  height: 36px;
+  line-height: 36px;
+}
+.el-date-editor.el-input {
+  width: 200px;
+  height: 36px;
+  line-height: 36px;
+}
+::v-deep .el-date-editor.el-input .el-input__inner {
+  height: 36px;
+  line-height: 36px;
+}
+
+/* 单位框背景颜色 */
+::v-deep .vue-treeselect__control {
+  background: #004d86 !important;
+  color: #fff;
+}
+/* 单位下拉菜单选中字体颜色 */
+::v-deep .vue-treeselect__single-value {
+  color: #fff !important;
+}
+/* 分页按钮 */
+::v-deep .el-pagination.is-background .el-pager li {
+  background-color: #004d86;
+  color: #fff;
+}
+::v-deep .el-pagination.is-background .btn-next {
+  background-color: #004d86;
+  color: #fff;
+}
+::v-deep .el-pagination.is-background .btn-prev,
+.el-pagination.is-background .btn-next,
+.el-pagination.is-background .el-pager li {
+  background: #004d86 !important;
+  color: #fff !important;
+}
+/* 计数器按钮 */
+::v-deep .el-input-number__increase {
+  background-color: transparent !important;
+  border: none;
+  color: #cccccc;
+  border-bottom: none !important;
+}
+::v-deep .el-input-number__decrease {
+  background-color: transparent !important;
+  border: none !important;
+  color: #cccccc;
+}
+/* 底部确定取消按钮 */
+::v-deep .el-dialog__footer {
+  padding: 18px 42px 30px 0px;
+  margin-right: 30px;
+}
+/* 增加按钮弹框 */
+::v-deep .el-dialog {
+  width: 760px !important;
+}
+::v-deep .el-dialog__body {
+  padding: none !important;
+}
+
+/* 调整输入框提示文字颜色 */
+::v-deep .vue-treeselect__placeholder {
+  color: #bdbdbd4f !important;
+}
+::v-deep input::-webkit-input-placeholder {
+  color: #bdbdbd4f !important;
+}
+::v-deep input:-moz-placeholder {
+  color: #bdbdbd4f !important;
+}
+#chakan /deep/ .el-dialog__body {
+  padding: 30px 0px 30px 5px;
+}
+</style>

+ 1749 - 0
src/views/regulations/fileinfo/a.vue

@@ -0,0 +1,1749 @@
+<template>
+    <div class="flexlayout guizhangzhidu">
+      <!-- 文件区域 左边-->
+      <div class="tablesfile">
+        <div class="jichu">文件</div>
+        <el-table
+          v-loading="loading1"
+          :data="fileinfoList"
+          @selection-change="handleSelectionChange"
+          :header-cell-style="{ background: '#003C69', color: 'white' }"
+        >
+          <el-table-column label="序号" type="index" width="80">
+          </el-table-column>
+          <el-table-column
+            label="文件"
+            align="center"
+            width="650"
+            prop="directory"
+            class="fileNAME"
+          >
+            <template slot-scope="scope">
+              <div style="display: flex; flex-warp: warp; margin-top: 10px">
+                <div
+                  style="padding-right: 12vh; width: 40px; height: 52px"
+                  class="uploadPeople"
+                >
+                  <!-- 根据后缀名控制图片显示doc还是pdf形式 -->
+                  <img
+                    v-if="scope.row.parentDirId == '.pdf'"
+                    src="../../../images/PDF.png"
+                    alt=""
+                  />
+                  <img
+                    v-else-if="
+                      scope.row.parentDirId == '.doc' ||
+                      scope.row.parentDirId == '.docx'
+                    "
+                    src="../../../images/doc.png"
+                    alt=""
+                  />
+                  <img
+                    v-else-if="
+                      scope.row.parentDirId == '.ppt' ||
+                      scope.row.parentDirId == '.pptx'
+                    "
+                    src="../../../images/ppt.png"
+                    alt=""
+                  />
+                </div>
+                <!-- 文件名称 fileName -->
+                <div>
+                  <div style="text-align: start; width: 100%">
+                    {{ scope.row.fileName }}
+                  </div>
+                  <!-- 上传人 createUser -->
+                  <!-- 页数 theNumberPages-->
+                  <!-- 时间 createTime -->
+                  <!-- 阅读量 readVolume -->
+                  <div style="display: flex">
+                    <!-- <span
+                      style="
+                        font-size: 14px;
+                        color: rgba(204, 204, 204, 1);
+  
+                        width: 100px;
+                        margin-left: 30px;
+                        display: block;
+                        text-align: start;
+                      "
+                      >上传人:{{ scope.row.createUser }}</span
+                    > -->
+                    <span
+                      style="
+                        font-size: 14px;
+                        color: rgba(204, 204, 204, 1);
+  
+                        width: 80px;
+                        display: block;
+                        text-align: start;
+                      "
+                      >页数:{{ scope.row.theNumberPages }}</span
+                    >
+                    <span
+                      style="
+                        font-size: 14px;
+                        color: rgba(204, 204, 204, 1);
+                        width: 180px;
+                        display: block;
+                        text-align: start;
+                      "
+                      >时间:{{ scope.row.createTime }}</span
+                    >
+                    <span
+                      style="
+                        font-size: 14px;
+                        color: rgba(204, 204, 204, 1);
+                        width: 80px;
+                        display: block;
+                      "
+                      >阅读量:{{ scope.row.readVolume }}</span
+                    >
+                    <!-- <span
+                      style="
+                        font-size: 14px;
+                        color: rgba(204, 204, 204, 1);
+                        width: 100px;
+                        display: block;
+                      "
+                      >分类:{{ scope.row.directoryName }}</span
+                    > -->
+                  </div>
+                </div>
+              </div>
+            </template>
+          </el-table-column>
+          <!-- <el-table-column
+            label="文件"
+            align="center"
+            class-name="small-padding fixed-width"
+            label-width="30px"
+          >
+            <template slot-scope="scope">
+              {{scope.row.directoryName}}
+            </template>
+          </el-table-column> -->
+          <el-table-column
+            label="操作"
+            align="center"
+            class-name="small-padding fixed-width"
+            label-width="180px"
+          >
+            <template slot-scope="scope">
+              <el-button
+                size="read"
+                type="text"
+                @click.native="ViewRead(scope.row)"
+              >
+                <span>
+                  <!-- <iframe :src="'http://192.168.5.177:8080'+scope.row.parentDirName" target="_blank">阅读</iframe> -->
+                  <!-- :href="'http://192.168.2.250:8089' + scope.row.parentDirName" -->
+                  <a target="_blank">阅读</a>
+                </span>
+              </el-button>
+              <el-button size="read" type="text" @click="handleupLoad(scope.row)">
+                <span class="chakan1">
+                  <a
+                    :href="downurl + scope.row.parentDirName"
+                    :download="scope.row.fileName"
+                    >下载</a
+                  >
+                </span>
+              </el-button>
+              <el-button size="dels" type="text" @click="handledels(scope.row)">
+                <span> 删除 </span>
+              </el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+        <!-- <el-pagination
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page="queryParams.pageNum"
+          :page-sizes="[2, 5, 8, 10]"
+          :page-size="queryParams.pageSize"
+          layout="total, sizes, prev, pager, next, jumper"
+          :total="total"
+        >
+        </el-pagination> -->
+        <pagination
+          v-if="nunms == 0"
+          :total="total"
+          :page.sync="queryParams.pageNum"
+          :limit.sync="queryParams.pageSize"
+          @pagination="handleCurrentChange"
+        />
+        <pagination
+          v-if="nunms == 1"
+          :total="total"
+          :page.sync="queryParams.pageNum"
+          :limit.sync="queryParams.pageSize"
+          @pagination="handleCurrentChanges"
+        />
+        <pagination
+          v-if="nunms == 2"
+          :total="total"
+          :page.sync="queryParams.pageNum"
+          :limit.sync="queryParams.pageSize"
+          @pagination="handleCurrentChangess"
+        />
+      </div>
+  
+      <!-- 右边 -->
+      <div class="rights">
+        <!-- 目录 -->
+        <div class="catalog">
+          <div class="jichu">
+            目录
+            <el-button class="turnback" @click="turnback" v-if="addbtn == 0"
+              >返回上级</el-button
+            >
+            <el-button
+              class="uploadfilesbtn"
+              :class="addbtn ? 'margins' : ''"
+              @click="upload"
+              v-if="addbtn != 0"
+              >上传文件</el-button
+            ><el-button class="manage" @click="mange" v-if="addbtn != 0"
+              >目录管理</el-button
+            >
+          </div>
+          <el-table
+            v-loading="loading"
+            :data="directory"
+            @selection-change="handleSelectionChange"
+            :header-cell-style="{ background: '#003C69', color: 'white' }"
+          >
+            <el-table-column label="序号" type="index" width="50">
+            </el-table-column>
+            <el-table-column label="目录" align="center" prop="directory">
+              <template slot-scope="scope">
+                <div
+                  @click="mulus(scope.row)"
+                  :class="scope.row.subclassification == 0 ? '' : 'undeline'"
+                  style="position: relative; cursor: pointer"
+                >
+                  <img
+                    v-if="addbtn != 0"
+                    src="../../../images/文件夹.png"
+                    alt=""
+                    style="
+                      margin-right: 5px;
+                      position: absolute;
+                      left: 20px;
+                      top: 2px;
+                    "
+                  />
+                  <!-- 分类图片 -->
+                  <img
+                    v-if="addbtn == 0"
+                    src="../../../images/分类icon.png"
+                    alt=""
+                    style="
+                      margin-right: 5px;
+                      position: absolute;
+                      left: 25px;
+                      top: 2px;
+                    "
+                  />
+                  <span style="margin-left: 25px">
+                    {{ scope.row.directory }}</span
+                  >
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column
+              label="子分类"
+              align="center"
+              prop="subclassification"
+            />
+            <el-table-column label="文件" align="center" prop="documentsNumber" />
+            <el-table-column
+              label="操作"
+              align="center"
+              class-name="small-padding fixed-width"
+            >
+              <template slot-scope="scope">
+                <el-button
+                  size="add"
+                  type="text"
+                  @click="ViewProgress(scope.row)"
+                  v-if="addbtn == true"
+                >
+                  <span>添加</span>
+                </el-button>
+                <el-button
+                  size="dels"
+                  type="text"
+                  @click="handleDelete(scope.row)"
+                >
+                  <span class="chakan">删除</span>
+                </el-button>
+              </template>
+            </el-table-column>
+          </el-table>
+          <!-- <pagination
+            class="pagination"
+            v-show="total1 > 0"
+            :total="total1"
+            :page.sync="queryParams1.pageNum"
+            :limit.sync="queryParams1.pageSize"
+            @pagination="ListDirectoryinfo"
+          /> -->
+          <el-pagination
+            class="pagination"
+            @size-change="handleSizeChange"
+            @current-change="handleCurrentChange1"
+            :current-page="queryParams1.pageNum"
+            :page-sizes="[2, 5, 8, 10]"
+            :page-size="queryParams1.pageSize"
+            layout="total, sizes, prev, pager, next, jumper"
+            :total="total1"
+          >
+          </el-pagination>
+        </div>
+        <!-- 排行 -->
+        <div class="Ranking">
+          <div class="jichu">排行</div>
+          <table style="color: white">
+            <tr
+              class="borderBottom"
+              v-for="(item, index) in Ranking"
+              :key="item.directory_id"
+            >
+              <!-- 作战类 documentCategory -->
+              <!-- 上月阅读量 readnumber1 -->
+              <!-- 本月阅读量 readnumber2 -->
+              <!-- 排序 -->
+              <td class="numbers">{{ index + 1 }}</td>
+              <!-- 作战类类别 -->
+              <td class="find">{{ item.documentCategory }}</td>
+              <!-- 上周阅读量 -->
+              <td class="readnumber">
+                上月阅读量
+                <span style="margin-left: 5px">{{ item.readnumber2 }}</span>
+              </td>
+              <!-- 本周阅读量 -->
+              <td class="thisweek" style="position: relative">
+                <!-- <img src="../../../images/upRow.png" alt="" style="position:absolute;top:18px;right:158px" > -->
+                <!-- <img src="../../../images/downRow.png" alt=""  style="position:absolute;top:17px;right:158px"> -->
+                本月阅读量
+                <span
+                  style="margin-left: 5px"
+                  :class="index < 3 ? 'green' : 'red'"
+                  >{{ item.readnumber1 }}</span
+                >
+              </td>
+            </tr>
+          </table>
+          <!-- <el-table
+            v-loading="loading"
+            :data="list"
+            @selection-change="handleSelectionChange"
+            :header-cell-style="{ background: '#003C69', color: 'white' }"
+            class="RankingTables"
+          >
+            <el-table-column label="排名" type="index" width="50">
+            </el-table-column>
+            <el-table-column label="类别" align="center" prop="directory">
+              <template slot-scope="scope">
+                <div
+                  @click="mulus(scope.row)"
+                  :class="scope.row.subclassification == 0 ? '' : 'undeline'"
+                >
+                  {{ scope.row.directory }}
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column
+              label="上周阅读量"
+              align="center"
+              prop="subclassification"
+            />
+            <el-table-column
+              label="本周阅读量"
+              align="center"
+              class-name="small-padding fixed-width"
+            >
+            <template slot-scope="scope">
+              <div style="position:relative"> -->
+          <!-- 阅读量增长箭头 -->
+          <!-- <img src="../../../images/upRow.png" alt="" style="position:absolute;top:5px;right:130px" >
+              阅读量下降箭头
+              <img src="../../../images/downRow.png" alt=""  style="position:absolute;top:5px;right:130px"> -->
+          <!-- 本周阅读量
+              {{scope.row.read}}
+              </div>
+            </template>
+            </el-table-column>
+          </el-table> -->
+        </div>
+        <!-- 上传文件弹框 -->
+        <div class="big">
+          <el-dialog
+            style="color: pink"
+            :title="title"
+            :visible.sync="open"
+            width="520px"
+            append-to-body
+            class="el-dialog__header"
+            :close-on-click-modal="false"
+          >
+            <el-form
+              ref="form"
+              :model="form"
+              :rules="rules"
+              label-width="130px"
+              :inline="true"
+            >
+              <el-form-item
+                label-width="100px"
+                prop="directory"
+                class="change_plan_type"
+              >
+                <el-select
+                  v-model="form.directory"
+                  placeholder="请选择目录"
+                  clearable
+                  size="small"
+                  class="choose"
+                >
+                  <el-option
+                    v-for="item in directory"
+                    :key="item.id"
+                    :label="item.directory"
+                    :value="item.directory"
+                    @click.native="chooseDirect(item.id)"
+                  ></el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item
+                prop="subclassification"
+                class="change_plan_type"
+                id="son"
+              >
+                <el-select
+                  v-model="form.subclassification"
+                  placeholder="请选择子分类"
+                  ref="dict"
+                  clearable
+                  size="small"
+                >
+                  <el-option
+                    v-for="item in subclassification"
+                    :key="item.id"
+                    :label="item.directory"
+                    :value="item.directory"
+                    @click.native="soncategory(item.id)"
+                  ></el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item style="margin-left: 30px; margin-top: 30px">
+                <FileUpload v-model="moreFile" />
+              </el-form-item>
+            </el-form>
+            <div slot="footer" class="dialog-footer">
+              <el-button type="primary" @click="submitForm">确 定</el-button>
+              <el-button @click="cancel" size="btn">取 消</el-button>
+            </div>
+          </el-dialog>
+        </div>
+        <!-- 新建分类弹框 -->
+        <el-dialog
+          style="color: pink"
+          :title="title1"
+          :visible.sync="open1"
+          width="316px"
+          append-to-body
+          class="el-dialog__header"
+          :close-on-click-modal="false"
+        >
+          <el-form
+            ref="form1"
+            :model="form1"
+            :rules="rules"
+            label-width="130px"
+            :inline="true"
+          >
+            <el-form-item prop="directory">
+              <el-input
+                v-model="form1.directory"
+                placeholder="请输入目录名称"
+                class="filename"
+              />
+            </el-form-item>
+          </el-form>
+          <div slot="footer" class="dialog-footer">
+            <el-button type="primary" @click="submitForm1">确 定</el-button>
+            <el-button @click="cancel" size="btn">取 消</el-button>
+          </div>
+        </el-dialog>
+        <!-- 添加子分类弹框 -->
+        <el-dialog
+          style="color: pink"
+          :title="title2"
+          :visible.sync="open2"
+          width="316px"
+          append-to-body
+          class="el-dialog__header"
+          :close-on-click-modal="false"
+        >
+          <el-form
+            ref="form2"
+            :model="form2"
+            :rules="rules"
+            label-width="130px"
+            :inline="true"
+          >
+            <el-form-item prop="directory">
+              <el-input
+                v-model="form2.directory"
+                placeholder="请输入子分类名称"
+                class="filename"
+              />
+            </el-form-item>
+          </el-form>
+          <div slot="footer" class="dialog-footer">
+            <el-button type="primary" @click="submitForm2">确 定</el-button>
+            <el-button @click="cancel" size="" class="aa1"> 取 消</el-button>
+          </div>
+        </el-dialog>
+        <!-- 添加预览doc文件弹框 -->
+        <el-dialog
+          style="color: pink"
+          :title="title3"
+          :visible.sync="open33"
+          width="850px"
+          append-to-body
+          id="fileinfodocx"
+          class="el-dialog__header"
+          :close-on-click-modal="false"
+        >
+          <div ref="file"></div>
+          <div slot="footer" class="dialog-footer">
+            <el-button type="primary" @click="open33 = false">关 闭</el-button>
+            <!-- <el-button type="primary" @click="open33 = false">
+            关 闭</el-button
+            > -->
+          </div>
+        </el-dialog>
+        <!-- 预览PDF文件弹框 -->
+        <el-dialog
+          :title="title3"
+          :visible.sync="previewDialog"
+          width="850px"
+          append-to-body
+          id="fileinfopdf"
+          class="el-dialog__header"
+          :close-on-click-modal="false"
+        >
+          <template>
+            <!-- <div style="margin-bottom:20px"> -->
+            <div style="display: flex">
+              <el-button
+                :class="gopage == true ? 'bg' : ''"
+                class="gopage"
+                :theme="'default'"
+                type="submit"
+                :title="'上一页'"
+                @click.native="prePage"
+              >
+                上一页</el-button
+              >
+              <div
+                style="
+                  width: 50px;
+                  height: 28px;
+                  background: #f4f4f4;
+                  text-align: center;
+                  line-height: 28px;
+                "
+              >
+                {{ pageNum }}/{{ pageTotalNum }}
+              </div>
+              <el-button
+                :class="gopage == false ? 'bg' : ''"
+                :theme="'default'"
+                class="downpage"
+                type="submit"
+                :title="'下一页'"
+                @click.native="nextPage"
+              >
+                下一页</el-button
+              >
+              <!-- <el-button :theme="'default'" type="submit" :title="'顺时针旋转'" @click.native="clock" > 顺时针旋转</el-button>
+              <el-button :theme="'default'" type="submit" :title="'逆时针旋转'" @click.native="counterClock" > 逆时针旋转</el-button>
+             <el-button :theme="'default'" type="submit" :title="'打印'" @click.native="pdfPrintAll"> 打印</el-button> -->
+            </div>
+            <PDF
+              ref="pdf"
+              :src="pdfurl"
+              :page="pageNum"
+              :rotate="pageRotate"
+              @progress="loadedRatio = $event"
+              @page-loaded="pageLoaded($event)"
+              @num-pages="pageTotalNum = $event"
+              @error="pdfError($event)"
+              @link-clicked="page = $event"
+            ></PDF>
+            <!-- </div> -->
+            <!-- <div class="el-dialog__footer"> -->
+            <div slot="footer" class="dialog-footer">
+              <el-button type="primary" @click="previewDialog = false"
+                >关 闭</el-button
+              >
+              <!-- <el-button @click="previewDialog = false" size="" class="aa1"
+                >取 消</el-button
+              > -->
+            </div>
+            <!-- </div> -->
+          </template>
+        </el-dialog>
+      </div>
+    </div>
+  </template>
+  
+  <script>
+  import axios from "axios";
+  import PDF from "vue-pdf";
+  const docx = require("docx-preview");
+  window.JSZip = require("jszip");
+  import {
+    // 获取文件列表接口
+    listFileinfo,
+    // 修改文件列表接口
+    getFileinfo,
+    // 删除文件列表接口
+    delFileinfo,
+    // 上传文件
+    addFileinfo,
+    // 修改文件列表接口
+    updateFileinfo,
+    // 导出文件列表接口
+    exportFileinfo,
+    // 获取排行接口
+    rankList,
+    listParents,
+  } from "@/api/regulations/fileinfo";
+  import {
+    // 查询目录列表接口
+    listDirectoryinfo,
+    // 添加目录列表接口
+    addDirectoryinfo,
+    // 删除目录列表接口
+    delDirectoryinfo,
+  } from "@/api/regulations/directoryinfo";
+  export default {
+    name: "Fileinfo",
+    data() {
+      return {
+        list: [
+          {
+            id: 1,
+            file: "文件",
+          },
+          {
+            id: 2,
+            file: "文件",
+          },
+          {
+            id: 3,
+            file: "文件",
+          },
+        ],
+        // 分页器1
+        total: 0,
+        // 分页器2
+        total1: 0,
+        queryParams: {
+          pageNum: 1,
+          pageSize: 8,
+          catalog: "",
+          category: "",
+          fileName: null,
+          readVolume: null,
+          theNumberPages: null,
+          createUser: null,
+          createUserid: null,
+          directoryId: null,
+          directoryName: null,
+          parentDirId: null,
+          parentDirName: null,
+          fileSize: null,
+        },
+        queryParams1: {
+          pageNum: 1,
+          pageSize: 5,
+          catalog: "",
+          category: "",
+          fileName: null,
+          readVolume: null,
+          theNumberPages: null,
+          createUser: null,
+          createUserid: null,
+          directoryId: null,
+          directoryName: null,
+          parentDirId: null,
+          parentDirName: null,
+          fileSize: null,
+        },
+        // 上传文件
+        open: false,
+        // 新建分类
+        open1: false,
+        // 添加子分类
+        open2: false,
+        // 表单参数
+        form: {},
+        // 新建目录
+        form1: {},
+        // 新建子分类
+        form2: {},
+        // 规章制度文件记录表格数据
+        fileinfoList: [],
+        // 表单校验
+        rules: {},
+        // 目录
+        directory: [],
+        // 父节点id
+        parentId: "",
+        // 遮罩层
+        loading: true,
+        // 导出遮罩层
+        exportLoading: false,
+        // 子分类
+        subclassification: [],
+        // 刷新
+        loading1: false,
+        // 文件
+        file: {},
+        //文件类型判断
+        fileType: 1,
+        // 添加子分类名称
+        title2: "",
+        // 添加新建分类名称
+        title1: "",
+        // 添加上传文件名称
+        title: "",
+        // 排行数据
+        Ranking: [],
+        // 添加按钮
+        addbtn: true,
+        // 虚拟字段
+        fid: "",
+        open33: false,
+        title3: "预览文件",
+        // 下载文件路径
+        downurl: process.env.VUE_APP_BASE_API,
+        // pdf文件
+        previewDialog: false,
+        pdfurl: "",
+        pageNum: 1,
+        pageTotalNum: 1,
+        pageRotate: 0,
+        // 加载进度
+        loadedRatio: 0,
+        curPageNum: 0,
+        gopage: true,
+        // 多文件上传列表
+        moreFile: [],
+        nunms: 0,
+        // 点击右侧一级分类进去
+        Ids: null,
+        last: null,
+      };
+    },
+  
+    created() {
+      this.getList();
+      // 获取目录接口
+      this.ListDirectoryinfo();
+      // 获取排行目录接口
+      // rankList().then((res) => {
+      //   console.log(res);
+      //   this.Ranking = res.data;
+      // });
+      this.RankList();
+      $(".app-wrapper").removeClass("openSidebar");
+  
+      $(".app-wrapper").addClass("hideSidebar");
+      $(".sidebar-logo-container").removeClass("collapse");
+    },
+    components: {
+      PDF,
+    },
+    methods: {
+      /**
+       * 预览PDF
+       */
+      previewPDF(row, index) {
+        this.previewDialog = true;
+      },
+      // 上一页函数,
+      prePage() {
+        this.gopage = true;
+        var page = this.pageNum;
+        page = page > 1 ? page - 1 : this.pageTotalNum;
+        this.pageNum = page;
+      },
+      // 下一页函数
+      nextPage() {
+        this.gopage = false;
+        var page = this.pageNum;
+        page = page < this.pageTotalNum ? page + 1 : 1;
+        this.pageNum = page;
+      },
+      // 页面顺时针翻转90度。
+      clock() {
+        this.pageRotate += 90;
+      },
+      // 页面逆时针翻转90度。
+      counterClock() {
+        this.pageRotate -= 90;
+      },
+      // 页面加载回调函数,其中e为当前页数
+      pageLoaded(e) {
+        this.curPageNum = e;
+      },
+      // 错误时回调函数。
+      pdfError(error) {
+        console.error(error);
+      },
+      // 打印全部
+      pdfPrintAll() {
+        /**
+         * 打印界面字符乱码是因为你pdf中使用了自定义字体导致的,谷歌浏览器打印的时候预览界面真的变成了真·方块字 ,解决方案如下:
+         * 用文章最后的pdfjsWrapper.js在替换掉node_modules/vue-pdf/src/pdfjsWrapper.js
+         */
+  
+        this.$refs.pdf.print();
+      },
+      // 预览弹框
+      submitForm3() {
+        this.open33 = false;
+      },
+      RankList() {
+        rankList().then((res) => {
+          this.Ranking = res.data;
+        });
+      },
+      handleSizeChange(val) {},
+      handleCurrentChange(val) {
+        // 1
+        this.nunms = 0;
+        listFileinfo(this.queryParams).then((res) => {
+          this.fileinfoList = res.rows;
+          this.total = res.total;
+        });
+      },
+      // 2
+      handleCurrentChanges() {
+        this.queryParams.parentid=this.Ids;
+        listParents(this.queryParams).then((res) => {
+          this.fileinfoList = res.rows;
+          this.total = res.total;
+        });
+      },
+      handleCurrentChangess(){
+          listFileinfo({
+            directoryId: this.last,
+            pageNum: this.queryParams.pageNum,
+            pageSize: this.queryParams.pageSize,
+          }).then((res) => {
+            this.nunms = 2;
+            this.fileinfoList = res.rows;
+            this.total = res.total;
+          });
+      },
+      handleCurrentChange1(val) {
+        this.queryParams1.pageNum = val;
+        // this.queryParams.common = "1";
+        if (this.parentId) {
+          this.queryParams1.common = null;
+        } else {
+          this.queryParams1.common = "1";
+        }
+        listDirectoryinfo({
+          parentId: this.parentId,
+          pageNum: this.queryParams1.pageNum,
+          pageSize: this.queryParams1.pageSize,
+          common: this.queryParams1.common,
+        }).then((res) => {
+          this.directory = res.rows;
+  
+          this.directory.map((item) => {
+            if (item.subclassification != 0) {
+              // this.queryParams1.pageNum=1
+              this.addbtn = true;
+            }
+          });
+          // this.addbtn=true
+          this.total1 = res.total;
+          this.loading = false;
+        });
+      },
+      // 文件删除按钮操作
+      handledels(row) {
+        this.$modal
+          .confirm("是否确认删除该文件")
+          .then(function () {
+            return delFileinfo(row.id);
+          })
+          .then(() => {
+            this.ListDirectoryinfo();
+            this.RankList();
+            this.getList();
+  
+            this.$modal.msgSuccess("删除成功");
+          })
+          .catch(() => {});
+      },
+      // 子分类id
+      soncategory(id) {
+        this.form.directoryId = id;
+      },
+      // 获取目录列表
+      ListDirectoryinfo() {
+        this.loading = true;
+        this.queryParams.common = "1";
+        this.queryParams1.common = "1";
+        listDirectoryinfo(this.queryParams1).then((res) => {
+          this.directory = res.rows;
+          this.total1 = res.total;
+          this.loading = false;
+        });
+      },
+      // 点击目录根据子目录的数量控制他是否可以点进去进行渲染
+      mulus(row) {
+        console.log(row, 1);
+        if (row.parentId == 0) {
+          this.parentId = row.id;
+          this.Ids = row.id;
+          this.queryParams.pageNum=1;
+        } else {
+          this.parentId = row.parentId;
+        }
+        if (row.parentId == 0) {
+          listParents({
+            parentid: row.id,
+            pageNum: this.queryParams.pageNum,
+            pageSize: this.queryParams.pageSize,
+          }).then((res) => {
+            this.nunms = 1;
+            this.fileinfoList = res.rows;
+            this.total = res.total;
+          });
+        } else {
+          this.last = row.id;
+          // 文件
+          
+        this.queryParams.pageNum = 1,
+          this.handleCurrentChangess()
+        }
+        // if (row.subclassification == 0) {
+        //   this.parentId = "";
+        //   return;
+        // }
+        // this.queryParams1.pageNum=1;
+        // 目录
+        listDirectoryinfo({
+          parentId: this.parentId,
+          pageNum: this.queryParams1.pageNum,
+          pageSize: this.queryParams1.pageSize,
+        }).then((res) => {
+          res.rows.forEach((item) => {
+            if (item.subclassification == 0) {
+              this.directory = res.rows;
+              this.total1 = res.total;
+              this.addbtn = false;
+            } else {
+              // this.addbtn = true;
+              this.queryParams1.pageNum = 1;
+              return;
+            }
+          });
+        });
+        // 绑定的数据 directory
+      },
+      // 返回目录
+      turnback() {
+        this.parentId = "";
+        this.addbtn = true;
+        this.queryParams.pageNum = 1;
+        this.nunms=0;
+        this.getList();
+        this.ListDirectoryinfo();
+      },
+      // 选中父目录之后
+      chooseDirect(id) {
+        this.subclassification = [];
+        this.parentId = id;
+        // 获取到父目录id了
+        listDirectoryinfo({ parentId: this.parentId }).then((res) => {
+          this.subclassification = res.rows;
+        });
+      },
+      /** 查询规章制度文件记录列表 */
+      getList() {
+        this.loading = true;
+        listFileinfo(this.queryParams).then((response) => {
+          this.fileinfoList = response.rows;
+          this.total = response.total;
+          this.loading = false;
+        });
+      },
+      // 取消按钮
+      cancel() {
+        this.open = false;
+        this.reset();
+      },
+      // 表单重置
+      reset() {
+        this.form = {
+          id: null,
+          fileName: null,
+          readVolume: null,
+          theNumberPages: null,
+          createUser: null,
+          createUserid: null,
+          createTime: null,
+          directoryId: null,
+          directoryName: null,
+          parentDirId: null,
+          parentDirName: null,
+          fileSize: null,
+        };
+        this.resetForm("form");
+      },
+      /** 搜索按钮操作 */
+      handleQuery() {
+        this.queryParams.pageNum = 1;
+        this.getList();
+      },
+      /** 重置按钮操作 */
+      resetQuery() {
+        this.resetForm("queryForm");
+        this.handleQuery();
+      },
+      // 多选框选中数据
+      handleSelectionChange(selection) {
+        this.ids = selection.map((item) => item.id);
+        this.single = selection.length !== 1;
+        this.multiple = !selection.length;
+      },
+      /** 新增按钮操作 */
+      handleAdd() {
+        this.reset();
+        this.open = true;
+        this.title = "添加规章制度文件记录";
+      },
+      /** 修改按钮操作 */
+      handleUpdate(row) {
+        this.reset();
+        const id = row.id || this.ids;
+        getFileinfo(id).then((response) => {
+          this.form = response.data;
+          this.open = true;
+          this.title = "修改规章制度文件记录";
+        });
+      },
+      /** 上传文件提交按钮 */
+      submitForm() {
+        this.$refs["form"].validate((valid) => {
+          if (valid) {
+            // 文件名
+            // this.form.fileName = this.form.file[0].name;
+            // // 路径
+            // this.form.parentDirName = this.form.file[0].url;
+            // // 后缀
+            // this.form.parentDirId = this.form.file[0].houZUI;
+            // // 页数
+            // this.form.theNumberPages = this.form.file[0].pageCount;
+            // // 文件大小
+            // this.form.fileSize = this.form.file[0].fileLength;
+            // // 目录名称
+            this.form.directoryName = this.form.subclassification;
+            this.form.bdglFileInfos = this.moreFile;
+            this.form.bdglFileInfos.forEach((item) => {
+              // 文件大小
+              item.fileSize = item.fileLength;
+              // 文件路径
+              item.parentDirName = item.url;
+              // 文件后缀
+              item.parentDirId = item.houZUI;
+              // 页数
+              item.theNumberPages = item.pageCount;
+              // 文件大小
+              item.fileName = item.name;
+            });
+            // this.form.bdglFileInfo[0].directory=this.form.directoryId
+            // this.form.bdglFileInfo[0].directoryName=this.form.directoryName
+            //输出结果
+  
+            // 上传文件接口
+            addFileinfo(this.form).then((response) => {
+              this.ListDirectoryinfo();
+              this.$modal.msgSuccess("上传成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        });
+      },
+      // 新建分类
+      submitForm1() {
+        // 新建分类接口
+        // addDirectoryinfo
+        this.$refs["form1"].validate((valid) => {
+          if (valid) {
+            addDirectoryinfo(this.form1).then((response) => {
+              this.$modal.msgSuccess("新增成功");
+              this.ListDirectoryinfo();
+              this.open1 = false;
+              this.form1 = {};
+              //  this.reset()
+            });
+          }
+        });
+      },
+      // 添加子分类
+      submitForm2() {
+        this.$refs["form2"].validate((valid) => {
+          if (valid) {
+            addDirectoryinfo(this.form2).then((response) => {
+              this.$modal.msgSuccess("上传子分类成功");
+              this.open2 = false;
+              this.form2 = {};
+              this.ListDirectoryinfo();
+            });
+          }
+        });
+      },
+      /** 删除按钮操作 */
+      handleDelete(row) {
+        const ids = row.id;
+        this.parentId = row.parentId;
+  
+        this.$modal
+          .confirm("是否确认删除该文件?")
+          .then(function () {
+            return delDirectoryinfo(ids);
+          })
+          .then(() => {
+            // this.parentId=""
+            this.getList();
+            // this.ListDirectoryinfo();
+            listDirectoryinfo({
+              parentId: this.parentId,
+              pageNum: this.queryParams1.pageNum,
+              pageSize: this.queryParams1.pageSize,
+              //  common: this.queryParams1.common,
+            }).then((res) => {
+              this.directory = res.rows;
+              this.total1 = res.total;
+  
+              if (this.parentId == 0) {
+                this.addbtn = true;
+                this.RankList();
+  
+                this.loading = false;
+                this.loading1 = false;
+                this.$modal.msgSuccess("删除成功");
+              } else {
+                this.addbtn = false;
+                this.RankList();
+  
+                this.loading = false;
+                this.loading1 = false;
+                this.$modal.msgSuccess("删除成功");
+              }
+            });
+          })
+          .catch(() => {});
+      },
+      /** 导出按钮操作 */
+      handleExport() {
+        const queryParams = this.queryParams;
+        this.$modal
+          .confirm("是否确认导出所有规章制度文件记录数据项?")
+          .then(() => {
+            this.exportLoading = true;
+            return exportFileinfo(queryParams);
+          })
+          .then((response) => {
+            this.$download.name(response.msg);
+            this.exportLoading = false;
+          })
+          .catch(() => {});
+      },
+      // 上传
+      upload() {
+        // this.getList()
+        this.reset();
+        this.open = true;
+        this.title = "上传文件";
+        this.moreFile = "";
+        this.ListDirectoryinfo();
+      },
+      // 目录管理
+      mange() {
+        this.open1 = true;
+        this.title1 = "新建分类";
+      },
+      // 添加
+      ViewProgress(row) {
+        // 传入父亲目录id
+        this.form2.parentId = row.id;
+  
+        this.open2 = true;
+        this.title2 = "请输入子分类名称";
+      },
+      // 取消按钮
+      cancel() {
+        this.open = false;
+        this.open1 = false;
+        this.open2 = false;
+        this.comstatus = 0;
+        this.reset();
+      },
+      // 阅读按钮操作
+      ViewRead(row) {
+        if (row.parentDirId == ".docx" || row.parentDirId == ".doc") {
+          this.open33 = true;
+          axios({
+            method: "get",
+            responseType: "blob", // 设置响应文件格式
+            url: process.env.VUE_APP_BASE_API + row.parentDirName,
+          }).then(({ data }) => {
+            $(".docx").attr("id", "printArea");
+  
+            docx.renderAsync(data, this.$refs.file); // 渲染到页面预览
+          });
+        } else if (row.parentDirId == ".pdf") {
+          this.previewDialog = true;
+          this.pdfurl = process.env.VUE_APP_BASE_API + row.parentDirName;
+          this.pageNum = 1;
+        } else {
+          this.$message.error("只能阅读Word跟pdf文件");
+        }
+        row.common = "1";
+        updateFileinfo(row).then((res) => {
+          this.getList();
+          rankList().then((res) => {
+            this.Ranking = res.data;
+          });
+        });
+        // window.open("www.baidu.com","_self");
+      },
+      // 下载按钮操作
+      handleupLoad(row) {},
+    },
+  };
+  </script>
+  
+  <style scoped>
+  .red {
+    color: #ff4949;
+  }
+  .green {
+    color: #13ce66;
+  }
+  /* ::v-deep .el-dialog__body{
+    overflow: auto !important;
+    height: 600px !important;
+  } */
+  /* doc文件样式修改 */
+  ::v-deep .docx {
+    padding: 0 !important;
+  }
+  ::v-deep .docx-wrapper > section.docx {
+    /* padding: 0 !important; */
+    margin-bottom: 0px !important;
+    box-shadow: none;
+  }
+  /* 预览弹框背景去除 */
+  ::v-deep .docx-wrapper {
+    padding: 0 !important;
+    background: none !important;
+  }
+  ::v-deep .docx {
+    width: 100% !important;
+  }
+  ::v-deep .vue-treeselect__placeholder {
+    color: #bdbdbd4f !important;
+  }
+  ::v-deep .el-table__row .el-table__cell {
+    text-align: center !important;
+  }
+  .jichu {
+    color: white;
+    width: 100%;
+    height: 40px;
+    line-height: 40px;
+    border-left: 4px solid rgba(29, 150, 255, 1);
+    text-indent: 1em;
+  }
+  /* 文件表格 */
+  .tablesfile {
+    /* height: 87vh; */
+    background: #00365f;
+    width: calc(100% - 695px);
+    position: absolute;
+    left: 10px;
+    top: 10px;
+    bottom: 10px;
+  }
+  /* 弹性布局 */
+  .flexlayout {
+    display: flex;
+    justify-content: space-around;
+    align-items: flex-start;
+    height: 100%;
+    display: flex;
+    width: 100%;
+    margin: 20px 20px 20px;
+  }
+  /* 目录 */
+  .catalog {
+    width: 100%;
+    height: 50%;
+    position: relative;
+    background-color: #00365f;
+  }
+  /* 弹框按钮 */
+  .dialog-footer .el-button {
+    width: 60px;
+    height: 30px;
+  }
+  /* 分页器样式 */
+  .pagination {
+    position: absolute;
+    bottom: 20px;
+    right: 10px;
+  }
+  /* 排行 */
+  .Ranking {
+    width: 100%;
+    height: 48.8%;
+    right: 12%;
+    top: 45%;
+    background-color: #00365f;
+    margin-top: 10px;
+    /* margin-bottom: 20px; */
+  }
+  /* 右边栏样式 */
+  .rights {
+    /* height: 100vh; */
+    /* height: 85vh; */
+    width: 665px;
+    float: right;
+    position: absolute;
+    top: 10px;
+    right: 10px;
+    bottom: 10px;
+    margin-left: 10px;
+  }
+  
+  /* 阅读 */
+  .el-button--read {
+    color: #ffffff;
+    width: 50px;
+    height: 30px;
+    background-color: #1d96ff;
+    border-radius: 4px;
+    font-size: 14px;
+    line-height: 5px;
+    margin-right: 10px;
+  }
+  /* 阅读按钮1样式 */
+  .el-button--reads {
+    color: #ffffff;
+    width: 50px;
+    height: 30px;
+    background-color: #1d96ff;
+    border-radius: 4px;
+    font-size: 14px;
+    /* background-image: url("../../../images/uploads.png"); */
+    background-repeat: no-repeat;
+    background-position: 8px 6px;
+    /* text-align: center; */
+    line-height: 30px;
+    margin-right: 10px;
+  }
+  /* 删除按钮样式 */
+  .el-button--dels {
+    color: #ffffff;
+    width: 50px;
+    height: 30px;
+    background-color: #ff4949;
+    border-radius: 4px;
+    font-size: 14px;
+    background-repeat: no-repeat;
+    background-position: 8px 6px;
+    /* text-align: center; */
+    line-height: 5px;
+    margin-right: 10px;
+  }
+  /* 查看按钮样式 */
+  .el-button--reads .chakan {
+    margin-left: 7px;
+  }
+  /* 阅读按钮样式 */
+  .el-button--reads .chakan1 {
+    padding-top: 2px;
+    /* margin-left: 7px; */
+  }
+  /* 表格 */
+  .tdfirst {
+    width: 60px;
+    text-align: center;
+  }
+  .tdsecound {
+    width: 880px;
+  }
+  .tdthird {
+    width: 70px;
+  }
+  .tdfourth {
+    width: 70px;
+  }
+  tr {
+    width: 100%;
+    height: 50px;
+  }
+  .lefttable tr:nth-child(even) {
+    background-color: #00365f;
+  }
+  .lefttable tr:nth-child(odd) {
+    background-color: rgb(0, 60, 105);
+  }
+  /* 表格 */
+  .numbers {
+    width: 50px;
+    text-align: center;
+    /* background: pink; */
+    /* margin-left: 10px; */
+  }
+  .find {
+    /* background-color: skyblue; */
+    font-size: 14px;
+    width: 200px;
+    text-align: center;
+  }
+  .readnumber {
+    font-size: 14px;
+    width: 220px;
+    text-align: center;
+  }
+  .thisweek {
+    font-size: 14px;
+    width: 210px;
+    text-align: center;
+  }
+  .borderBottom {
+    width: 100%;
+    height: 50px;
+    border-bottom: 1px solid #718a9dff;
+  }
+  table {
+    border-collapse: collapse;
+    width: 100%;
+  }
+  /* 左边表格 */
+  .lefttable tr {
+    width: 100%;
+    height: 60px;
+    background-color: pink;
+  }
+  /* 上传文件 */
+  .uploadfilesbtn {
+    width: 80px;
+    height: 33px;
+    line-height: 33px;
+    background-color: #1d96ff;
+    color: white;
+    border-radius: 4px;
+    font-size: 14px;
+    text-align: center;
+  }
+  .margins {
+    margin-left: 420px;
+  }
+  /* 返回目录按钮 */
+  .turnback {
+    width: 86px;
+    height: 33px;
+    border: 1px solid #ccc;
+    border-radius: 4px;
+    font-size: 14px;
+    line-height: 33px;
+    margin-left: 30px;
+    text-align: center;
+    margin-left: 480px;
+    color: #ccc;
+    background: #00365f;
+  }
+  /* 目录管理 */
+  .manage {
+    /* display: inline-block; */
+    width: 80px;
+    height: 33px;
+    line-height: 33px;
+    background-color: #1d96ff;
+    color: white;
+    font-size: 14px;
+    border-radius: 4px;
+    margin-left: 10px;
+  }
+  .pagination-container {
+    background: #fff;
+    padding: 32px 16px;
+  }
+  .pagination-container.hidden {
+    display: none;
+  }
+  /* 弹框样式修改 */
+  ::v-deep .el-dialog {
+    background-color: #004d86 !important;
+  }
+  
+  ::v-deep .el-dialog__title {
+    color: white;
+  }
+  ::v-deep .el-dialog__header {
+    border-bottom: 1px solid #718a9dff;
+  }
+  
+  ::v-deep .select_file {
+    margin-left: -30px;
+  }
+  /* 计划附件 */
+  ::v-deep .el-upload__tip {
+    color: white;
+    position: absolute;
+    top: -5px;
+    width: 500px;
+    left: 80px;
+    color: white;
+  }
+  ::v-deep .el-form-item__content {
+    width: 230px;
+  }
+  /* 选取附件 */
+  ::v-deep .el-upload-list__item {
+    width: 400px;
+  }
+  ::v-deep .el-upload-list__item a {
+    color: white;
+    text-indent: 0.5em;
+  }
+  ::v-deep .el-select-dropdown__item {
+    color: white;
+  }
+  /* 输入框背景 */
+  ::v-deep .el-input__inner {
+    background-color: #004d86;
+    border: 1px solid white !important;
+    /* width: 270px; */
+  }
+  ::v-deep .filename .el-input__inner {
+    width: 270px;
+    color: white;
+  }
+  ::v-deep .el-select-dropdown__wrap {
+    background-color: white !important;
+  }
+  .el-select-dropdown__item {
+    text-indent: 1em;
+    color: white;
+    border: none !important;
+  }
+  ::v-deep .el-select-dropdown__wrap .el-scrollbar__view {
+    background-color: white !important;
+  }
+  ::v-deep .pagination-container {
+    display: block !important;
+  }
+  
+  /* 添加按钮 */
+  .el-button--add {
+    width: 55px !important;
+    border: 1px solid transparent;
+    padding: 3px 8px;
+    font-size: 14px;
+    line-height: 1.5;
+    border-radius: 3px;
+    color: #fff;
+    background-color: #13ce66;
+  }
+  /* 删除按钮 */
+  .el-button--del {
+    width: 46px !important;
+    border: 1px solid transparent;
+    padding: 3px 8px;
+    font-size: 14px;
+    line-height: 1.5;
+    border-radius: 3px;
+    color: #fff;
+    background-color: #ff4949;
+  }
+  /* 下划线 */
+  .undeline {
+    /* text-decoration: underline; */
+    /* text-align: start; */
+    color: #00f0ff;
+    cursor: pointer;
+  }
+  /* 序号居中 */
+  ::v-deep .el-table_1_column_1,
+  .el-table_3_column_9 {
+    text-align: center;
+  }
+  ::v-deep .el-table_2_column_4 {
+    text-align: center;
+  }
+  /* 导入按钮 */
+  .imports {
+    color: skyblue;
+    display: inline-block;
+    margin-top: 30px;
+    margin-right: 150px;
+    /* padding-top: 10px; */
+  }
+  .is-ready li {
+    width: 300px !important;
+  }
+  .cursor {
+    cursor: pointer;
+    color: #409eff;
+    font-size: 16px;
+  }
+  * {
+    padding: 0;
+    margin: 0;
+  }
+  html,
+  body,
+  #app {
+    height: 100%;
+    margin: 0;
+    padding: 0;
+  }
+  /* .el-table td.el-table__cell div {
+    margin: auto;
+  } */
+  /* 下拉框样式 */
+  ::v-deep
+    .guizhangzhidu
+    .el-select-dropdown
+    .el-select-dropdown__wrap
+    .el-scrollbar__view {
+    background-color: transparent !important;
+    text-indent: 1em !important;
+  }
+  ::v-deep .guizhangzhidu .el-select-dropdown__list {
+    background: white !important;
+  }
+  ::v-deep .el-table_2_column_13 .cell {
+    text-align: center !important;
+  }
+  .el-select-dropdown__item {
+    color: black !important;
+  }
+  ::v-deep .el-form-item__content .el-input__inner {
+    color: white !important;
+  }
+  ::v-deep .el-pagination {
+    margin-top: 10px;
+    position: absolute;
+    right: 5px;
+  }
+  ::v-deep .el-pager li.active {
+    background-color: #1d96ff;
+    color: white;
+  }
+  ::v-deep .el-pager .number {
+    background-color: #196299;
+    color: white;
+  }
+  ::v-deep .el-pagination .el-select .el-input .el-input__inner {
+    background-color: #196299 !important ;
+  }
+  ::v-deep .el-pagination__editor.el-input .el-input__inner {
+    background-color: #196299 !important ;
+  }
+  ::v-deep .btn-prev {
+    background-color: transparent;
+    color: white;
+  }
+  ::v-deep .btn-next {
+    background-color: transparent;
+    color: white;
+  }
+  .pagination-container {
+    background: #fff;
+    padding: 32px 16px;
+  }
+  .pagination-container.hidden {
+    display: none;
+  }
+  /* 调整输入框提示文字颜色 */
+  ::v-deep .vue-treeselect__placeholder {
+    color: #bdbdbd4f !important;
+  }
+  ::v-deep input::-webkit-input-placeholder {
+    color: #bdbdbd4f !important;
+  }
+  ::v-deep input:-moz-placeholder {
+    color: #bdbdbd4f !important;
+  }
+  .aa1 {
+    background-color: #1263aa !important;
+    color: #fff !important;
+  }
+  ::v-deep .el-dialog__footer .dialog-footer .el-button--btn {
+    padding-top: 00px !important;
+  }
+  /* .userAgree{
+    height: 600px;
+    overflow: auto;
+  } */
+  /*定义滚动条宽高及背景,宽高分别对应横竖滚动条的尺寸*/
+  .el-dialog__body::-webkit-scrollbar {
+    width: 14px;
+    /* height: 2px !important; */
+    background: #3d83b8;
+  }
+  
+  /*定义滑块,内阴影及圆角*/
+  .el-dialog__body::-webkit-scrollbar-thumb {
+    /* border-radius: 20px; */
+    /* height: 1px;
+    width: 3px; */
+    background: rgba(144, 206, 252, 1);
+  }
+  /* 上一页样式 */
+  .gopage {
+    width: 60px;
+    height: 28px;
+    background: #f4f4f4;
+    color: #60627d;
+    border-radius: 14px 0px 0px 14px;
+  }
+  /* 下一页样式 */
+  .downpage {
+    width: 60px;
+    height: 28px;
+    background: #f4f4f4;
+    border-radius: 0px 14px 14px 0px;
+  }
+  .bg {
+    background: #1d96ff;
+    color: white;
+  }
+  
+  ::v-deep .el-pagination__sizes  .el-select--mini{
+    display: none;
+  }
+  </style>
+