zxr пре 2 година
родитељ
комит
337228224b
2 измењених фајлова са 121 додато и 127 уклоњено
  1. 8 0
      src/api/bdglSecret/secretaccount.js
  2. 113 127
      src/views/bdglSecret/secretaccount/index.vue

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

@@ -42,3 +42,11 @@ export function delSecretaccount(id) {
     method: 'delete'
   })
 }
+
+// 查询统计
+export function getNumber() {
+  return request({
+    url: '/bdglSecret/secretaccount/getNumber',
+    method: 'get'
+  })
+}

+ 113 - 127
src/views/bdglSecret/secretaccount/index.vue

@@ -8,7 +8,7 @@
       v-show="showSearch"
       label-width="68px"
     >
-      <el-form-item label="" prop="unitname">
+      <el-form-item label prop="unitname">
         <el-input
           v-model="queryParams.unitname"
           placeholder="请输入单位"
@@ -16,7 +16,7 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="" prop="model">
+      <el-form-item label prop="model">
         <el-input
           v-model="queryParams.model"
           placeholder="请输入型号"
@@ -24,25 +24,19 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="" prop="confidentialitylevel">
-        <el-select
-        v-model="queryParams.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 label prop="confidentialitylevel">
+        <el-select v-model="queryParams.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>
-        <el-button type="primary" size="btr" @click="handleQuery"
-          >搜索</el-button
-        >
+        <el-button type="primary" size="btr" @click="handleQuery">搜索</el-button>
         <el-button size="btr" @click="resetQuery">重置</el-button>
       </el-form-item>
     </el-form>
@@ -56,8 +50,7 @@
           size="mini"
           @click="handleAdd"
           v-hasPermi="['bdglSecret:secretaccount:add']"
-          >新增</el-button
-        >
+        >新增</el-button>
       </el-col>
       <!-- <el-col :span="1.5">
         <el-button
@@ -70,7 +63,7 @@
           v-hasPermi="['bdglSecret:secretaccount:edit']"
           >修改</el-button
         >
-      </el-col> -->
+      </el-col>-->
       <el-col :span="1.5">
         <el-button
           type="danger"
@@ -80,8 +73,7 @@
           :disabled="multiple"
           @click="handleDelete"
           v-hasPermi="['bdglSecret:secretaccount:remove']"
-          >删除</el-button
-        >
+        >删除</el-button>
       </el-col>
       <el-col :span="1.5">
         <el-button
@@ -91,11 +83,37 @@
           size="mini"
           @click="handleExport"
           v-hasPermi="['bdglSecret:secretaccount:export']"
-          >导出</el-button
-        >
+        >导出</el-button>
       </el-col>
     </el-row>
-
+    <div class="hezi">
+      <div class="tji">涉密物品统计</div>
+      <div style="display: flex;flex-wrap: wrap;  padding: 41px 20px">
+        <div
+          style="
+            width: 25%;
+            display: flex;
+            align-items: center;
+            height: 100px;
+          "
+          v-for="item in tongJiList"
+          :key="item.name"
+        >
+          <div class="div-l" style="flex:2;text-align:right;margin-right:30px;">
+            <span>{{item.name}}</span>
+          </div>
+          <div class="div-r" style="flex:1;text-align:right;margin-right:120px;">
+            <span>
+              <span style="font-size: 25px; margin-right: 18px">
+                {{
+                item.num
+                }}
+              </span>台
+            </span>
+          </div>
+        </div>
+      </div>
+    </div>
     <el-table
       v-loading="loading"
       :data="secretaccountList"
@@ -106,65 +124,42 @@
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="序号" type="index" width="50" align="center">
         <template scope="scope">
-          <span>{{
+          <span>
+            {{
             (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
-          }}</span>
+            }}
+          </span>
         </template>
       </el-table-column>
       <el-table-column label="单位" align="center" prop="unitname" />
-      <el-table-column
-        label="类型"
-        align="center"
-        prop="stype"
-        :formatter="stypeFn"
-      />
+      <el-table-column label="类型" align="center" prop="stype" :formatter="stypeFn" />
       <el-table-column
         label="密级"
         align="center"
         prop="confidentialitylevel"
         :formatter="confidentialitylevelFn"
-      >
-      </el-table-column>
+      ></el-table-column>
       <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="harddisknumber" />
+      <el-table-column label="MAC地址/物理地" align="center" prop="macaddress" />
       <el-table-column label="保密编码" align="center" prop="levelnumber" />
-      <el-table-column
-        label="责任人"
-        align="center"
-        prop="persoeliable"
-        :formatter="persoeliableFn"
-      />
+      <el-table-column label="责任人" align="center" prop="persoeliable" :formatter="persoeliableFn" />
       <el-table-column label="备注" align="center" prop="remarks" />
-      <el-table-column
-        label="操作"
-        align="center"
-        class-name="small-padding fixed-width"
-      >
+      <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="['bdglSecret:secretaccount:edit']"
-            >修改</el-button
-          >
+          >修改</el-button>
           <el-button
             size="btd"
             type="text"
             @click="handleDelete(scope.row)"
             v-hasPermi="['bdglSecret:secretaccount:remove']"
-            >删除</el-button
-          >
+          >删除</el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -179,13 +174,7 @@
 
     <!-- 添加或修改涉密计算机台账对话框 -->
     <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 ref="form" :model="form" :rules="rules" label-width="80px" inline>
         <el-form-item label="单位" prop="unitname">
           <treeselect
             v-model="form.unitid"
@@ -195,27 +184,18 @@
           />
         </el-form-item>
         <el-form-item label="密级" prop="confidentialitylevel">
-          <el-select
-            v-model="form.confidentialitylevel"
-            placeholder="请选择密级"
-          >
+          <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-option>
           </el-select>
         </el-form-item>
         <el-form-item label="类型" prop="stype">
-          <el-select
-            v-model="form.stype"
-            placeholder="请选择类型"
-            clearable
-            size="small"
-          >
+          <el-select v-model="form.stype" placeholder="请选择类型" clearable size="small">
             <el-option
               v-for="item in stypeList"
               :key="item.dictValue"
@@ -236,36 +216,25 @@
               :label="item.name"
               :value="item.id"
               class="input_xiala"
-            >
-            </el-option>
+            ></el-option>
           </el-select>
         </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-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-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 label prop="remarks">
+          <el-input v-model="form.remarks" type="textarea" placeholder="请输入备注" />
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -283,11 +252,12 @@ import {
   delSecretaccount,
   addSecretaccount,
   updateSecretaccount,
+  getNumber
 } from "@/api/bdglSecret/secretaccount";
 // 单位
 import {
   getZhuChiRen,
-  getDept,
+  getDept
 } from "@/api/grassrootsregistration/bdglmeeting";
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
@@ -332,7 +302,7 @@ export default {
 
         persoeliable: null,
         remarks: null,
-        unitid: null,
+        unitid: null
       },
       // 表单参数
       form: {},
@@ -346,7 +316,9 @@ export default {
       ziDian: [],
       // 类型
       stypeList: [],
-      suoyouLiit:[]
+      suoyouLiit: [],
+      //获取统计数据
+      tongJiList: []
     };
   },
   created() {
@@ -354,27 +326,42 @@ export default {
     this.getTreeselect();
     this.getdict();
     this.getdicts();
-    this.getSuoYou()
+    this.getSuoYou();
+    this.gettongji();
   },
   methods: {
+    //获取涉密物品统计
+    gettongji() {
+      getNumber().then(res => {
+        console.log(res.data, 123);
+        if (res.code == 200) {
+          this.tongJiList = res.data;
+        } else {
+          this.tongJiList = [];
+        }
+      });
+      // Object.keys(obj).forEach(key => {
+      //   console.log(obj[key]); // foo
+      // });
+    },
     // 获取所有人员
     getSuoYou() {
-      getAll().then((response) => {
+      getAll().then(response => {
         this.suoyouLiit = response.data;
       });
     },
     persoeliableFn(row) {
-      var name =""
-      this.suoyouLiit.map(item=>{
-        if(item.id==row.persoeliable){
-          name=item.name
+      var name = "";
+      this.suoyouLiit.map(item => {
+        if (item.id == row.persoeliable) {
+          name = item.name;
         }
-      })
-      return name
+      });
+      return name;
     },
     confidentialitylevelFn(row) {
       var name = null;
-      this.ziDian.map((item) => {
+      this.ziDian.map(item => {
         if (row.confidentialitylevel == item.dictValue) {
           name = item.dictLabel;
         }
@@ -383,7 +370,7 @@ export default {
     },
     stypeFn(row) {
       var name = null;
-      this.stypeList.map((item) => {
+      this.stypeList.map(item => {
         if (row.stype == item.dictValue) {
           name = item.dictLabel;
         }
@@ -392,19 +379,19 @@ export default {
     },
     // 查询电子产品
     getdicts() {
-      getDicts("electronic").then((res) => {
+      getDicts("electronic").then(res => {
         this.stypeList = res.data;
       });
     },
     // 查询密级
     getdict() {
-      getDicts("brigade_secret").then((res) => {
+      getDicts("brigade_secret").then(res => {
         this.ziDian = res.data;
       });
     },
     /** 查询部门下拉树结构 */
     getTreeselect() {
-      getDept().then((response) => {
+      getDept().then(response => {
         this.deptOptions = response.data;
       });
     },
@@ -424,14 +411,14 @@ export default {
     // 获取主持人
     getZhuChi(id) {
       console.log(id);
-      getZhuChiRen(id).then((res) => {
+      getZhuChiRen(id).then(res => {
         this.renYuan = res.data;
       });
     },
     /** 查询涉密计算机台账列表 */
     getList() {
       this.loading = true;
-      listSecretaccount(this.queryParams).then((response) => {
+      listSecretaccount(this.queryParams).then(response => {
         this.secretaccountList = response.rows;
         this.total = response.total;
         this.loading = false;
@@ -457,7 +444,7 @@ export default {
 
         persoeliable: null,
         remarks: null,
-        unitid: null,
+        unitid: null
       };
       this.resetForm("form");
     },
@@ -473,7 +460,7 @@ export default {
     },
     // 多选框选中数据
     handleSelectionChange(selection) {
-      this.ids = selection.map((item) => item.id);
+      this.ids = selection.map(item => item.id);
       this.single = selection.length !== 1;
       this.multiple = !selection.length;
     },
@@ -487,7 +474,7 @@ export default {
     handleUpdate(row) {
       this.reset();
       const id = row.id || this.ids;
-      getSecretaccount(id).then((response) => {
+      getSecretaccount(id).then(response => {
         this.form = response.data;
         this.form.persoeliable = response.data.persoeliable * 1;
         this.open = true;
@@ -497,16 +484,16 @@ export default {
     },
     /** 提交按钮 */
     submitForm() {
-      this.$refs["form"].validate((valid) => {
+      this.$refs["form"].validate(valid => {
         if (valid) {
           if (this.form.id != null) {
-            updateSecretaccount(this.form).then((response) => {
+            updateSecretaccount(this.form).then(response => {
               this.$modal.msgSuccess("修改成功");
               this.open = false;
               this.getList();
             });
           } else {
-            addSecretaccount(this.form).then((response) => {
+            addSecretaccount(this.form).then(response => {
               this.$modal.msgSuccess("新增成功");
               this.open = false;
               this.getList();
@@ -520,7 +507,7 @@ export default {
       const ids = row.id || this.ids;
       this.$modal
         .confirm("是否确认删除涉密计算机台账的数据项?")
-        .then(function () {
+        .then(function() {
           return delSecretaccount(ids);
         })
         .then(() => {
@@ -534,12 +521,12 @@ export default {
       this.download(
         "bdglSecret/secretaccount/export",
         {
-          ...this.queryParams,
+          ...this.queryParams
         },
         `secretaccount_${new Date().getTime()}.xlsx`
       );
-    },
-  },
+    }
+  }
 };
 </script>
 <style scoped>
@@ -719,7 +706,6 @@ export default {
 }
 
 .hezi {
-  height: 100px;
   margin-bottom: 13px;
   margin-top: 15px;
   position: relative;
@@ -742,4 +728,4 @@ export default {
   font-weight: 600;
   background: #004d86;
 }
-</style>
+</style>