LinHGL 5 jaren geleden
bovenliggende
commit
dddcb50c48
6 gewijzigde bestanden met toevoegingen van 210 en 60 verwijderingen
  1. 2 0
      src/components/SideBar.vue
  2. 10 0
      src/router.js
  3. 19 0
      src/views/audit/behavior .vue
  4. 1 1
      src/views/certificate/index.vue
  5. 139 0
      src/views/duty/duty.vue
  6. 39 59
      src/views/role/resources.vue

+ 2 - 0
src/components/SideBar.vue

@@ -10,6 +10,8 @@
       <el-menu-item index="/views/certificate/index">凭证管理</el-menu-item>
       <el-menu-item index="/views/account/register">账号管理</el-menu-item>
       <el-menu-item index="/strM">策略管理</el-menu-item>
+      <el-menu-item index="/views/duty/duty">责任认定</el-menu-item>
+      <el-menu-item index="/views/audit/behavior">行为审计</el-menu-item>
       <el-submenu index="">
         <template #title>
           权限管理

+ 10 - 0
src/router.js

@@ -37,6 +37,11 @@ export default new Router({
           name: 'register',
           component: () => import('./views/account/register.vue'),
         },
+        {
+          path: '/views/audit/behavior',
+          name: 'behavior',
+          component: () => import('./views/audit/behavior .vue'),
+        },
         {
           path: '/group',
           name: 'group',
@@ -67,6 +72,11 @@ export default new Router({
           name: 'str',
           component: () => import('./views/StrMana/strM.vue'),
         },
+        {
+          path: '/views/duty/duty',
+          name: 'duty',
+          component: () => import('./views/duty/duty.vue'),
+        },
       ],
     },
   ],

+ 19 - 0
src/views/audit/behavior .vue

@@ -0,0 +1,19 @@
+<template lang="html">
+  <div id="behavior ">
+    <p>behavior</p>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'behavior ',
+  props: {},
+  components: {},
+  data: () => ({}),
+  created() {},
+  computed: {},
+  methods: {},
+};
+</script>
+
+<style lang="scss" scoped></style>

+ 1 - 1
src/views/certificate/index.vue

@@ -1,4 +1,4 @@
-<template lang="html">
+<template>
   <div id="certificate">
     <el-row class="register">
       <el-col :span="24" class="btn">

+ 139 - 0
src/views/duty/duty.vue

@@ -0,0 +1,139 @@
+<template>
+  <div id="duty">
+    <el-row class="register">
+      <el-col :span="24" class="btn">
+        <el-col :span="20"><h3>责任认定</h3></el-col>
+      </el-col>
+      <el-col :span="24" class="search">
+        <el-col :span="3" class="searchSel">
+          <el-select v-model="value" placeholder="请选择">
+            <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> </el-option>
+          </el-select>
+        </el-col>
+        <el-col :span="5" class="searchInp"><el-input v-model="input" placeholder="输入用户信息"></el-input></el-col>
+        <el-col :span="13" class="searchBtn"><el-button icon="el-icon-search"></el-button></el-col>
+        <el-col :span="1"><el-button type="success" icon="el-icon-plus">认证报告批量导出</el-button></el-col>
+      </el-col>
+      <el-col>
+        <el-table :data="tableData" style="width: 100%" border type="selection">
+          <el-table-column align="center" type="selection" width="40"> </el-table-column>
+          <el-table-column align="center" prop="user" label="用户" width="200"> </el-table-column>
+          <el-table-column align="center" prop="behavior" label="行为"> </el-table-column>
+          <el-table-column align="center" prop="type" label="类型"> </el-table-column>
+          <el-table-column align="center" label="操作">
+            <el-button type="text" @click="dialogTableVisible = true">查看日志</el-button>
+            <el-button type="text">定位失信行为</el-button>
+            <el-button type="text">警告</el-button>
+            <el-button type="text">生成报告 </el-button>
+          </el-table-column>
+        </el-table>
+        <el-col class="paging">
+          <el-pagination background layout="prev, pager, next" :total="1000"></el-pagination>
+        </el-col>
+      </el-col>
+    </el-row>
+    <el-dialog title="查看日志详情" fullscreen :visible.sync="dialogTableVisible">
+      <el-table :data="dialogData">
+        <el-table-column align="center" property="time" label="时间"></el-table-column>
+        <el-table-column align="center" property="place" label="地点"></el-table-column>
+      </el-table>
+      <div slot="footer" align="center" class="dialog-footer">
+        <el-button type="primary" @click="dialogTableVisible = false">返回</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { log } from 'util';
+export default {
+  name: 'duty',
+  props: {},
+  components: {},
+  data: () => ({
+    options: [
+      {
+        value: '选项1',
+        label: '行为',
+      },
+      {
+        value: '选项2',
+        label: '类型',
+      },
+    ],
+    tableData: [
+      {
+        user: 'Zedc',
+        behavior: '登录',
+        type: '普通行为',
+      },
+      {
+        user: 'Abc',
+        behavior: '修改',
+        type: '普通行为',
+      },
+      {
+        user: 'aBc',
+        behavior: '删除',
+        type: '关键行为',
+      },
+      {
+        user: 'abC',
+        behavior: '登录',
+        type: '关键行为',
+      },
+    ],
+    dialogData: [
+      { time: '时间:2018年9月1日上午9:40', place: '长春' },
+      { time: '时间:2018年12月3日下午5:23', place: '北京' },
+      { time: '时间:2019年3月28日下午9:52', place: '深圳' },
+      { time: '时间:2019年6月17日上午11:20', place: '上海' },
+    ],
+    input: '',
+    dialogTableVisible: false,
+  }),
+  created() {},
+  computed: {},
+  methods: {},
+};
+</script>
+
+<style lang="scss" scoped>
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+  margin: 0;
+  padding: 0;
+}
+.register {
+  width: 100%;
+  padding: 20px;
+}
+.btn {
+  width: 100%;
+  height: 40px;
+  line-height: 40px;
+  margin: 20px 0;
+}
+.search {
+  height: 40px;
+  line-height: 40px;
+  margin: 0 0 20px 0;
+}
+.searchSel .el-select {
+  border-radius: 0;
+}
+/deep/.searchInp .el-input__inner {
+  border-radius: 0;
+}
+.searchBtn .el-button {
+  border-radius: 0;
+}
+.paging {
+  text-align: right;
+  margin: 10px 0;
+}
+</style>

+ 39 - 59
src/views/role/resources.vue

@@ -1,4 +1,4 @@
-<template lang="html">
+<template>
   <div id="resources">
     <el-row class="register">
       <el-col :span="24" class="btn">
@@ -13,47 +13,31 @@
         <el-col :span="2" class="searchBtn"><el-button icon="el-icon-search"></el-button></el-col>
       </el-col>
       <el-col :span="24" class="list" style="padding:0 2rem;">
-        <el-collapse v-model="activeNames">
-          <el-collapse-item v-for="(data, index) in tableData" :key="index" :name="`${index}`" style="margin-bottom:1rem;">
-            <template #title>
-              <span style="padding-left:1.5rem;font-size:1rem;">{{ data.name }}</span>
+        <el-table :data="tableData" style="width: 100%" border stripe>
+          <el-table-column prop="name" align="center" label="群组名称"> </el-table-column>
+          <el-table-column prop="charge" align="center" label="状态">
+            <template v-slot="scoped">
+              {{ scoped.row.state === '0' ? '停用' : '启用' }}
             </template>
-            <el-row style="padding:0.5rem;">
-              <el-popover v-for="(item, itemIndex) in data.children" :key="itemIndex" placement="bottom" trigger="click" @hide="form = {}">
-                <el-row type="flex" align="middle" justify="center">
-                  <el-col :span="8">
-                    <el-button size="mini" type="success" @click="handleEdit">修改</el-button>
-                  </el-col>
-                  <el-col :span="6">
-                    <el-button size="mini" :type="`${item.state === '0' ? 'danger' : 'success'}`" @click="changeState(index, itemIndex)">
-                      {{ item.state === '0' ? '停用' : '启用' }}
-                    </el-button>
-                  </el-col>
-                </el-row>
-                <el-row>
-                  <el-form :model="form">
-                    <el-row>
-                      <el-col :span="24">
-                        <el-form-item label="资源名称">
-                          <el-input v-model="form.name" clearable></el-input>
-                        </el-form-item>
-                      </el-col>
-                    </el-row>
-                  </el-form>
-                </el-row>
-                <el-button
-                  slot="reference"
-                  size="mini"
-                  :type="`${item.state === '0' ? 'success' : ''}`"
-                  style="margin-right:1rem; margin-bottom:0.5rem;"
-                  @click="openDialog(index, itemIndex)"
-                >
-                  {{ item.name }}
-                </el-button>
-              </el-popover>
-            </el-row>
-          </el-collapse-item>
-        </el-collapse>
+          </el-table-column>
+          <el-table-column label="操作" align="center">
+            <template v-slot="scoped">
+              <el-row type="flex" justify="center">
+                <el-col :span="6">
+                  <el-button size="mini" type="primary" @click="openDialog(scoped.$index, 'update')">修改</el-button>
+                </el-col>
+                <el-col :span="6">
+                  <el-button size="mini" :type="`${scoped.row.state === '0' ? 'danger' : 'success'}`" @click="changeState(scoped.$index)">
+                    {{ scoped.row.state === '0' ? '停用' : '启用' }}
+                  </el-button>
+                </el-col>
+              </el-row>
+            </template>
+          </el-table-column>
+        </el-table>
+        <el-col class="paging">
+          <el-pagination background layout="prev, pager, next" :total="1000"></el-pagination>
+        </el-col>
       </el-col>
     </el-row>
     <el-dialog title="资源编辑" :visible.sync="dialog">
@@ -90,18 +74,14 @@ export default {
     input: '',
     textarea: '',
     tableData: [
-      {
-        name: '文档',
-        children: [{ name: '文档1', state: '0' }, { name: '文档2', state: '1' }],
-      },
-      {
-        name: '应用',
-        children: [{ name: '应用1', state: '0' }, { name: '应用2', state: '0' }, { name: '应用3', state: '0' }],
-      },
-      {
-        name: '数据',
-        children: [{ name: '数据1', state: '0' }, { name: '数据2', state: '0' }, { name: '数据3', state: '0' }],
-      },
+      { name: '文档1', state: '0' },
+      { name: '文档2', state: '1' },
+      { name: '应用1', state: '0' },
+      { name: '应用2', state: '0' },
+      { name: '应用3', state: '0' },
+      { name: '数据1', state: '0' },
+      { name: '数据2', state: '0' },
+      { name: '数据3', state: '0' },
     ],
     personList: [],
     value: '',
@@ -140,17 +120,17 @@ export default {
       this.form = {};
       this.dialog = false;
     },
-    openDialog(index, itemIndex) {
-      let data = JSON.parse(JSON.stringify(this.tableData[index].children[itemIndex]));
+    openDialog(index) {
+      let data = JSON.parse(JSON.stringify(this.tableData[index]));
       data[`index`] = index;
-      data[`itemIndex`] = itemIndex;
       this.$set(this, `form`, data);
+      this.dialog = true;
     },
-    changeState(index, itemIndex) {
-      let data = this.tableData[index].children[itemIndex];
+    changeState(index) {
+      let data = this.tableData[index];
       data.state = data.state === '0' ? '1' : '0';
       this.$set(this.form, `state`, data.state);
-      this.$set(this.tableData[index].children[itemIndex], `state`, data.state);
+      this.$set(this.tableData[index], `state`, data.state);
     },
   },
 };