Эх сурвалжийг харах

优化界面,修改若干

林倩 3 жил өмнө
parent
commit
df6ac2b8ea
59 өөрчлөгдсөн 1595 нэмэгдсэн , 1720 устгасан
  1. 2 3
      config/btn-icon-config.js
  2. BIN
      dist.zip
  3. 11 6
      src/assets/style/layout.scss
  4. 1 8
      src/components/data-auth/set-auth-tree.vue
  5. 2 2
      src/components/data-auth/set-auth.vue
  6. 1 1
      src/components/data-auth/table-column-auth.vue
  7. 1 1
      src/components/form/index.vue
  8. 5 2
      src/components/search-bar/index.vue
  9. 5 0
      src/components/select-org-tree/index.vue
  10. 5 5
      src/pages/admin-manage/tab-first.vue
  11. 1 1
      src/pages/application-manage/app-manage/index.vue
  12. 1 1
      src/pages/authorization-manage/author-role-manage.vue
  13. 1 1
      src/pages/authorization-manage/author-source-manage.vue
  14. 7 1
      src/pages/common/new-table/index.vue
  15. 1 1
      src/pages/data-auth-module/auth-object-manage/appfun-resource-manage/add-func-form.vue
  16. 2 1
      src/pages/data-auth-module/auth-object-manage/appfun-resource-manage/app-list.vue
  17. 110 113
      src/pages/data-auth-module/auth-object-manage/object-prop-manage/application-list.vue
  18. 1 1
      src/pages/data-auth-module/auth-object-manage/object-prop-manage/index.vue
  19. 169 168
      src/pages/data-auth-module/auth-object-manage/service-resource-manage/add-form.vue
  20. 6 9
      src/pages/data-auth-module/auth-object-manage/service-resource-manage/index.vue
  21. 1 1
      src/pages/data-auth-module/auth-object-manage/sort-code-manage/data-level.vue
  22. 6 11
      src/pages/data-auth-module/auth-object-manage/sort-code-manage/field-sort-code.vue
  23. 113 110
      src/pages/data-auth-module/auth-object-manage/sort-code-manage/forms/field-sort-form.vue
  24. 135 134
      src/pages/data-auth-module/auth-object-manage/sort-code-manage/forms/source-sort-form.vue
  25. 1 1
      src/pages/data-auth-module/auth-object-manage/sort-code-manage/safe-level-code.vue
  26. 4 11
      src/pages/data-auth-module/auth-object-manage/sort-code-manage/source-sort-code.vue
  27. 127 136
      src/pages/data-auth-module/auth-subject-manage/subject-prop-manage/prop-tree.vue
  28. 1 1
      src/pages/data-auth-module/data-permission-manage/data-auth-manage/business-tag-auth.vue
  29. 1 1
      src/pages/data-auth-module/data-permission-manage/data-auth-manage/org-auth.vue
  30. 99 148
      src/pages/data-auth-module/data-permission-manage/data-auth-manage/person-auth.vue
  31. 142 174
      src/pages/data-auth-module/data-permission-manage/data-auth-search/person-view.vue
  32. 1 1
      src/pages/empower-manage/institutional-quotas-manage/edit.vue
  33. 53 93
      src/pages/layout/components/navbar.vue
  34. 26 43
      src/pages/list-manage/red-list-manage/component/app-func.vue
  35. 17 5
      src/pages/list-manage/red-list-manage/component/batch-add-appfunc.vue
  36. 1 1
      src/pages/list-manage/red-list-manage/component/batch-delete-appfunc.vue
  37. 1 1
      src/pages/list-manage/red-list-manage/component/batch-setlevel-appfunc.vue
  38. 1 1
      src/pages/list-manage/white-list-manage/component/batch-add-user.vue
  39. 1 1
      src/pages/list-manage/white-list-manage/component/batch-delete-user.vue
  40. 1 1
      src/pages/list-manage/white-list-manage/component/batch-setlevel-user.vue
  41. 9 9
      src/pages/list-manage/white-list-manage/component/user-list.vue
  42. 8 4
      src/pages/log-manage/DataConfig.js
  43. 1 1
      src/pages/log-manage/auth-risk-detection/detail.vue
  44. 1 1
      src/pages/log-manage/auth-risk-detection/edit.vue
  45. 2 2
      src/pages/log-manage/auth-risk-detection/index.vue
  46. 1 1
      src/pages/log-manage/err-auth-earlywarning-manage/auth-earlywarning-info-detail.vue
  47. 6 2
      src/pages/log-manage/err-auth-earlywarning-manage/auth-earlywarning-info.vue
  48. 102 0
      src/pages/log-manage/err-auth-earlywarning-manage/auth-earlywarning-plan-detail.vue
  49. 203 203
      src/pages/log-manage/err-auth-earlywarning-manage/auth-earlywarning-plan-edit.vue
  50. 4 4
      src/pages/log-manage/err-auth-earlywarning-manage/auth-earlywarning-plan.vue
  51. 0 100
      src/pages/log-manage/err-auth-earlywarning-manage/detail.vue
  52. 2 5
      src/pages/log-manage/permiss-log-manage/DataConfig.js
  53. 8 11
      src/pages/log-manage/permiss-log-manage/auth-manage-log.vue
  54. 2 1
      src/pages/log-manage/permiss-log-manage/auth-service-log.vue
  55. 74 67
      src/pages/log-manage/permiss-log-manage/log-detail/auth-manage.vue
  56. 2 2
      src/pages/permission-selfhelp-manage/index.vue
  57. 1 1
      src/pages/user-manage/police-manage/index.vue
  58. 103 104
      src/router/modules/data-auth-module.js
  59. 2 2
      static/themes/style/theme-default.css

+ 2 - 3
config/btn-icon-config.js

@@ -3,14 +3,12 @@ const btnAttr = [
     ['修改', 'el-icon-edit'],
     ['详情', 'el-icon-document'],
     ['删除', 'el-icon-delete'],
-    ['移除', 'el-icon-remove-outline'],
     ['功能配置', 'el-icon-menu'],
     ['导入', 'el-icon-upload2'],
     ['新增', 'el-icon-circle-plus-outline'],
     ['同步', 'el-icon-refresh'],
     ['权限变更申请', 'el-icon-circle-plus-outline'],
     ['批量添加', 'el-icon-circle-plus-outline'],
-    ['批量移除', 'el-icon-remove-outline'],
     ['批量设置名单级别', 'el-icon-setting'],
     ['查询', 'el-icon-search'],
     ['重置', 'el-icon-refresh-right'],
@@ -20,7 +18,8 @@ const btnAttr = [
     ['管理范围', 'el-icon-edit'],
     ['资源获取', 'el-icon-refresh'],
     ['资源同步', 'el-icon-refresh'],
-    ['查看列权限清单', 'el-icon-document']
+    ['查看列权限清单', 'el-icon-document'],
+    ['批量删除', 'el-icon-delete']
 ]
 let iconMap = new Map(btnAttr);
 export default iconMap

BIN
dist.zip


+ 11 - 6
src/assets/style/layout.scss

@@ -777,7 +777,13 @@ html {
     height: 100%;
     min-height: calc( 100vh - 200px);
     margin: 0 1rem;
-    background: #fff;
+    // background: #fff;
+    /deep/ .el-card {
+       min-height: calc(100vh - 10rem);
+       &.is-border {
+        border: none;
+    }
+    } 
     &__content {
         width: 100%;
         height: 100%;
@@ -1133,11 +1139,6 @@ html {
 
 /* l-card-box 卡片布局
 -------------------------- */
-.l-card-box {
-    & >.el-card__body {
-      min-height: calc( 100vh - 255px )
-    }
-}
 .copyright {
     text-align: center;
     font-size: 12px;
@@ -1405,3 +1406,7 @@ html {
     color: $--color-text-secondary;
 }
 
+.el-card__body > .el-tabs {
+    margin-top: 0px;
+}
+

+ 1 - 8
src/components/data-auth/set-auth-tree.vue

@@ -206,12 +206,5 @@ export default {
 /deep/ .el-tree {
     margin-bottom: 10px;
 }
-// /deep/.dg-tree .dg-tree-node.is-current > .el-tree-node__content {
-//     background: #fff;
-//     color: #1890ff;
-// }
-// /deep/ .dg-tree-node .el-tree-node__content:hover {
-//     background: #fff;
-//     color: #1890ff;
-// }
+
 </style>

+ 2 - 2
src/components/data-auth/set-auth.vue

@@ -94,8 +94,8 @@ export default {
         margin-top: 20px;
     }
     /deep/ {
-        .el-card.is-border {
-            border: none;
+        .el-tabs__header {
+            margin-bottom: 8px;
         }
     }
 }

+ 1 - 1
src/components/data-auth/table-column-auth.vue

@@ -6,7 +6,7 @@
 <template>
     <div>
         <div v-if="subId">
-            <div style="height: calc(100vh - 22rem)">
+            <div style="height: calc(100vh - 21rem)">
                 <dg-scrollbar>
                     <set-auth-tree
                         :tab="tab"

+ 1 - 1
src/components/form/index.vue

@@ -29,7 +29,7 @@
     </dg-row>
     <div v-footer>
       <dg-button @click="handleClose">取消</dg-button>
-      <dg-button type="primary" @click="handleSave">确定</dg-button>
+      <dg-button type="primary" @click="handleSave">保存</dg-button>
     </div>
   </div>
 </template>

+ 5 - 2
src/components/search-bar/index.vue

@@ -45,7 +45,7 @@
       </el-form-item>
       <el-form-item>
         <dg-button type="primary" @click="handleSearch" :icon="'查询' | optIcon">查询</dg-button>
-        <dg-button v-if="form.length > 1" @click="handleReset" :icon="'重置' | optIcon">重置</dg-button>
+        <dg-button @click="handleReset" :icon="'重置' | optIcon">重置</dg-button>
       </el-form-item>
     </el-form>
   </div>
@@ -126,5 +126,8 @@ export default {
 };
 </script>
 
-<style lang='scss'>
+<style lang='scss' scoped>
+/deep/ .el-button--small {
+  min-width: 90px;
+}
 </style>

+ 5 - 0
src/components/select-org-tree/index.vue

@@ -199,3 +199,8 @@ export default {
   }
 };
 </script>
+<style lang="scss" scoped>
+/deep/ .el-select-dropdown__wrap {
+  max-height: 500px;
+}
+</style>

+ 5 - 5
src/pages/admin-manage/tab-first.vue

@@ -43,7 +43,7 @@ export default {
       conditionForm,
       tableHeader,
       pageOptList: ['新增'],
-      tableOptList: ['用户信息','修改', '撤销']
+      tableOptList: ['用户信息','修改', '删除']
     };
   },
   methods: {
@@ -54,7 +54,7 @@ export default {
         this.handleEditor(row);
       } else if (type == '用户信息') {
         this.handleDetail(row);
-      } else if (type == '撤销') {
+      } else if (type == '删除') {
         this.handleDelete(row);
       }
     },
@@ -93,15 +93,15 @@ export default {
     },
     handleDelete({ id }) {
       const that = this;
-      that.$confirm('是否确认撤销?', '确认信息').then(() => {
+      that.$confirm('是否确定删除这条数据!', '提示').then(() => {
         api
           .del(id)
           .then(() => {
             that.handleSearch();
-            that.$message.success('撤销成功!');
+            that.$message.success('删除成功!');
           })
           .catch((error) => {
-            that.$message.error('撤销失败!');
+            that.$message.error('删除失败!');
           });
       });
     },

+ 1 - 1
src/pages/application-manage/app-manage/index.vue

@@ -296,7 +296,7 @@ export default {
     handleDelete({ id }) {
       const that = this;
       that
-        .$confirm('是否确认删除?', '确认信息', {
+        .$confirm('是否确认删除?', '提示', {
           distinguishCancelAndClose: true,
           confirmButtonText: '确定',
           cancelButtonText: '取消'

+ 1 - 1
src/pages/authorization-manage/author-role-manage.vue

@@ -181,7 +181,7 @@ export default {
         // 删除、
         handleRoleDelete({ id, name }) {
             const that = this;
-            that.$confirm(`是否确定删除角色[${name}]?`, "确认信息", {
+            that.$confirm(`是否确定删除角色[${name}]?`, "提示", {
                 distinguishCancelAndClose: true,
                 confirmButtonText: "确定",
                 cancelButtonText: "取消"

+ 1 - 1
src/pages/authorization-manage/author-source-manage.vue

@@ -207,7 +207,7 @@ export default {
                 deletedId: id,
                 appId: that.appId
             };
-            that.$confirm("删除资源将会删除该资源及其下级资源,确认删除?", "确认信息", {
+            that.$confirm("删除资源将会删除该资源及其下级资源,确认删除?", "提示", {
                 distinguishCancelAndClose: true,
                 confirmButtonText: "确定",
                 cancelButtonText: "取消"

+ 7 - 1
src/pages/common/new-table/index.vue

@@ -9,6 +9,7 @@
     <dg-table
       border
       ref="baseTable"
+      :auto-page="h=>h*0.6"
       :url="tableUrl"
       :condition="condition"
       :data="data"
@@ -35,7 +36,7 @@
       </template>
       <slot></slot>
       <!--操作栏-->
-      <dg-table-column label="操作" align="center" v-if="tableOptList.length">
+      <dg-table-column label="操作" align="center" v-if="tableOptList.length" :width="optColumnWidth">
         <template slot-scope="{ row }">
           <div class="u-table__operation">
             <el-tooltip
@@ -87,6 +88,11 @@ export default {
     tableOptList: {
       type: Array,
       default: () => []
+    },
+    // 操作列宽度
+    optColumnWidth: {
+      type: [String, Number],
+      default: "120"
     }
   },
   components: {},

+ 1 - 1
src/pages/data-auth-module/auth-object-manage/appfun-resource-manage/add-func-form.vue

@@ -190,7 +190,7 @@ export default {
         },
         // 刪除节点
         handleDel(id) {
-            this.$confirm("删除功能将会删除该功能及其下级资源,确认删除?", "确认信息", {}).then(() => {
+            this.$confirm("删除功能将会删除该功能及其下级资源,确认删除?", "提示", {}).then(() => {
                 Api.del(id)
                     .then((res) => {
                         this.$refs.myMenuTree.remove();

+ 2 - 1
src/pages/data-auth-module/auth-object-manage/appfun-resource-manage/app-list.vue

@@ -15,6 +15,7 @@
       :tableHeader="tableHeader"
       :tableUrl="tableUrl"
       :condition="condition"
+      optColumnWidth="200"
       :tableOptList="tableOptList"
       @submitTableOpt="receviceOpt"
     >
@@ -80,7 +81,7 @@ export default {
      * 删除
      */
     handleDelete(row) {
-      this.$dgConfirm(`是否确认删除该条应用!`, '提示', {}).then(() => {
+      this.$dgConfirm(`是否确定删除这条数据!`, '提示', {}).then(() => {
         appRestApi.del(row.id).then((res) => {
           this.$message.success(res);
           this.handleSearch();

+ 110 - 113
src/pages/data-auth-module/auth-object-manage/object-prop-manage/application-list.vue

@@ -7,129 +7,126 @@
  * @Description: 
 -->
 <template>
-    <dg-card class="app-box-card" header="应用列表">
-        <template v-if="operateType == 'detail'">
-            <el-form ref="form" :model="form" label-suffix=":" inline>
-                <el-form-item label="应用系统名称">
-                    <el-input
-                        clearable
-                        placeholder="请输入应用系统名称"
-                        v-model="form.name.value"
-                        style="width: 180px"
-                    ></el-input>
-                </el-form-item>
-                <el-form-item label="应用系统在用标识">
-                    <dg-select
-                        code="DM_APPLY_STATUS"
-                        v-model="form.status.value"
-                        placeholder="请选择应用系统在用标识"
-                        clearable
-                        style="width: 180px"
-                    >
-                    </dg-select>
-                </el-form-item>
-                <el-form-item>
-                    <dg-button type="primary" icon="el-icon-search" @click="handleSearch">查询</dg-button>
-                </el-form-item>
-            </el-form>
-            <dg-row>
-                <dg-button type="primary" icon="el-icon-plus" class="add-btn" @click="handleAdd">添加</dg-button>
-            </dg-row>
-            <Table
-                ref="table"
-                :url="ObjAppTableUrl"
-                :headerData="cardAgencylist"
-                :condition="form"
-            >
-            </Table>
-        </template>
-        <p v-else>请选择属性值</p>
-    </dg-card>
+  <dg-card header="应用列表">
+    <template v-if="operateType == 'detail'">
+      <el-form ref="form" :model="form" label-suffix="" inline>
+        <el-form-item label="应用系统名称">
+          <el-input
+            clearable
+            placeholder="请输入应用系统名称"
+            v-model="form.name.value"
+            style="width: 150px"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="应用系统在用标识">
+          <dg-select
+            code="DM_APPLY_STATUS"
+            v-model="form.status.value"
+            placeholder="请选择应用系统在用标识"
+            clearable
+            style="width: 150px"
+          >
+          </dg-select>
+        </el-form-item>
+        <el-form-item>
+          <dg-button type="primary" :icon="'查询' | optIcon" @click="handleSearch">查询</dg-button>
+           <dg-button :icon="'重置' | optIcon" @click="handleReset">重置</dg-button>
+        </el-form-item>
+      </el-form>
+      <dg-row>
+        <dg-button type="primary" :icon="'新增' | optIcon" class="add-btn" @click="handleAdd">新增</dg-button>
+      </dg-row>
+      <Table ref="table" :url="ObjAppTableUrl" :headerData="cardAgencylist" :condition="form"> </Table>
+    </template>
+    <p v-else>请选择属性值</p>
+  </dg-card>
 </template>
 
 <script>
-import Table from "@/pages/common/table";
-import { ObjAppTableUrl } from "@/api/data-auth";
-import { cardAgencylist } from "../../auth-subject-manage/DataConfig";
-import addDialog from "./add-dialog";
-const editorArea = ["1000px", "760px"];
+import Table from '@/pages/common/table';
+import { ObjAppTableUrl } from '@/api/data-auth';
+import { cardAgencylist } from '../../auth-subject-manage/DataConfig';
+import addDialog from './add-dialog';
+const editorArea = ['1000px', '760px'];
 export default {
-    name: "personnelList", // 组件名称
-    props: {
-        parentNode: Object,
-        operateType: String
-    },
-    data() {
-        // 组件内部参数
-        return {
-            // 参数名称及默认值
-            cardAgencylist,
-            ObjAppTableUrl,
-            form: {
-                status: {
-                    op: "=",
-                    value: ""
-                },
-                name: {
-                    op: "like",
-                    value: ""
-                },
-                attrId: {
-                    op: "=",
-                    value: this.parentNode.id
-                }
-            }
-        };
-    },
-    computed: {}, // 计算属性
-    watch: {}, // 侦听器(扩展的计算属性)
-    components: { Table }, // 注册局部组件
-    methods: {
-        /**
-         * @description: 查询
-         */
-        handleSearch() {
-            this.$refs.table.handleSearchClick();
+  name: 'personnelList', // 组件名称
+  props: {
+    parentNode: Object,
+    operateType: String
+  },
+  data() {
+    // 组件内部参数
+    return {
+      // 参数名称及默认值
+      cardAgencylist,
+      ObjAppTableUrl,
+      form: {
+        status: {
+          op: '=',
+          value: ''
+        },
+        name: {
+          op: 'like',
+          value: ''
         },
-        /**
-         * @description: 单击表格行
-         */
-        handleRowClick() {},
-        /**
-         * @description: 添加
-         */
-        handleAdd() {
-            const vm = this;
-            const layer = this.$dgLayer({
-                title: "添加应用资源",
-                shade: [0.4, "#FFF"],
-                content: addDialog,
-                props: {
-                    type: "application",
-                    parentNode: vm.parentNode
-                },
-                on: {
-                    success() {
-                        layer.close(layer.dialogIndex);
-                        vm.handleSearch();
-                    }
-                },
-                area: editorArea
-            });
+        attrId: {
+          op: '=',
+          value: this.parentNode.id
         }
+      }
+    };
+  },
+  computed: {}, // 计算属性
+  watch: {}, // 侦听器(扩展的计算属性)
+  components: { Table }, // 注册局部组件
+  methods: {
+    /**
+     * @description: 查询
+     */
+    handleSearch() {
+      this.$refs.table.handleSearchClick();
     },
-    created() {},
-    mounted() {} // 组件挂载完成后
+      /**
+     * @description: 重置
+     */
+    handleReset() {
+      for (const key in this.form) {
+        this.form[key].value = "";
+      }
+    },
+    /**
+     * @description: 单击表格行
+     */
+    handleRowClick() {},
+    /**
+     * @description: 添加
+     */
+    handleAdd() {
+      const vm = this;
+      const layer = this.$dgLayer({
+        title: '添加应用资源',
+        shade: [0.4, '#FFF'],
+        content: addDialog,
+        props: {
+          type: 'application',
+          parentNode: vm.parentNode
+        },
+        on: {
+          success() {
+            layer.close(layer.dialogIndex);
+            vm.handleSearch();
+          }
+        },
+        area: editorArea
+      });
+    }
+  },
+  created() {},
+  mounted() {} // 组件挂载完成后
 };
 </script>
 <style lang="scss" scoped>
 .add-btn {
-    margin-bottom: 10px;
-}
-.app-box-card /deep/ {
-    min-height: calc(100vh - 12rem);
-    .el-card__header {
-        display: block;
-    }
+  margin-bottom: 10px;
 }
 </style>

+ 1 - 1
src/pages/data-auth-module/auth-object-manage/object-prop-manage/index.vue

@@ -9,7 +9,7 @@
 
 <template>
     <main class="subject-property">
-        <dg-row :gutter="20">
+        <dg-row gutter="1rem">
             <dg-col :span="5">
                 <tree ref="tree" title="客体属性类" type="OBJ" @submitNodeOperate="getNodeOperate" />
             </dg-col>

+ 169 - 168
src/pages/data-auth-module/auth-object-manage/service-resource-manage/add-form.vue

@@ -4,184 +4,185 @@
 @Date: 2021-05-17 15:07
 -->
 <template>
-    <dg-row>
-        <el-form ref="form" :model="form" :rules="rules" label-width="180px" v-if="show">
-            <dg-col :span="12">
-                <el-form-item label="服务资源标识符:" prop="serviceCode">
-                    <el-input v-model="form.serviceCode" placeholder="" :disabled="form.id !== null && form.id !== undefined " v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.serviceCode }}</span>
-                </el-form-item>
-                <el-form-item label="服务类型:" prop="serviceType">
-                    <dg-select v-model="form.serviceType" enum="ServiceResourceTypeEnum" v-if="!isDetail"></dg-select>
-                    <div v-else>
-                        <div class="u-detail__text" v-translate="{ enum: 'ServiceResourceTypeEnum' }">
-                            {{ form.serviceType }}
-                        </div>
-                    </div>
-                </el-form-item>
-                <el-form-item label="是否自用服务:" prop="mustSelf">
-                    <dg-select v-model="form.mustSelf" enum="BooleanEnum" v-if="!isDetail" clearable></dg-select>
-                    <div v-else>
-                        <div class="u-detail__text" v-translate="{ enum: 'BooleanEnum' }">{{ form.mustSelf }}</div>
-                    </div>
-                </el-form-item>
-            </dg-col>
-            <dg-col :span="12">
-                <el-form-item label="服务资源名称:" prop="serviceName">
-                    <el-input v-model="form.serviceName" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.serviceName }}</span>
-                </el-form-item>
-                <el-form-item label="服务提供方式:" prop="serviceProvideWay">
-                    <dg-select
-                        v-model="form.serviceProvideWay"
-                        enum="ServiceProvideWayEnum"
-                        v-if="!isDetail"
-                    ></dg-select>
-                    <div v-else>
-                        <div class="u-detail__text" v-translate="{ enum: 'ServiceProvideWayEnum' }">
-                            {{ form.serviceProvideWay }}
-                        </div>
-                    </div>
-                </el-form-item>
-            </dg-col>
-            <dg-col :span="24">
-                <el-form-item label="服务访问地址:" prop="serviceUrl">
-                    <el-input
-                        v-model="form.serviceUrl"
-                        placeholder="参数为字符串类型的数组对象"
-                        v-if="!isDetail"
-                    ></el-input>
-                    <span v-else>{{ form.serviceUrl }}</span>
-                </el-form-item>
-            </dg-col>
-            <dg-col :span="24">
-                <el-form-item label="服务提供应用系统名称:" prop="appCode">
-                    <dg-select
-                        :data="apps"
-                        v-model="form.appCode"
-                        placeholder=""
-                        value-name="applyCode"
-                        label-name="applyName"
-                        filterable
-                        v-if="!isDetail"
-                    ></dg-select>
-                    <span v-else>{{ form.appName }}</span>
-                </el-form-item>
-            </dg-col>
-            <dg-col :span="24">
-                <el-form-item label="服务资源描述:" prop="remark">
-                    <el-input
-                        v-model="form.remark"
-                        placeholder=""
-                        type="textarea"
-                        :rows="3"
-                        v-if="!isDetail"
-                    ></el-input>
-                    <span v-else>{{ form.remark }}</span>
-                </el-form-item>
-            </dg-col>
-        </el-form>
-    </dg-row>
+  <dg-row>
+    <el-form ref="form" :model="form" :rules="rules" label-width="180px" v-if="show">
+      <dg-col :span="12">
+        <el-form-item label="服务资源标识符:" prop="serviceCode">
+          <el-input
+            v-model="form.serviceCode"
+            placeholder=""
+            :disabled="form.id !== null && form.id !== undefined"
+            v-if="!isDetail"
+          ></el-input>
+          <span v-else>{{ form.serviceCode }}</span>
+        </el-form-item>
+        <el-form-item label="服务类型:" prop="serviceType">
+          <dg-select v-model="form.serviceType" enum="ServiceResourceTypeEnum" v-if="!isDetail"></dg-select>
+          <div v-else>
+            <div class="u-detail__text" v-translate="{ enum: 'ServiceResourceTypeEnum' }">
+              {{ form.serviceType }}
+            </div>
+          </div>
+        </el-form-item>
+        <el-form-item label="是否自用服务:" prop="mustSelf">
+          <dg-select v-model="form.mustSelf" enum="BooleanEnum" v-if="!isDetail" clearable></dg-select>
+          <div v-else>
+            <div class="u-detail__text" v-translate="{ enum: 'BooleanEnum' }">{{ form.mustSelf }}</div>
+          </div>
+        </el-form-item>
+      </dg-col>
+      <dg-col :span="12">
+        <el-form-item label="服务资源名称:" prop="serviceName">
+          <el-input v-model="form.serviceName" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.serviceName }}</span>
+        </el-form-item>
+        <el-form-item label="服务提供方式:" prop="serviceProvideWay">
+          <dg-select v-model="form.serviceProvideWay" enum="ServiceProvideWayEnum" v-if="!isDetail"></dg-select>
+          <div v-else>
+            <div class="u-detail__text" v-translate="{ enum: 'ServiceProvideWayEnum' }">
+              {{ form.serviceProvideWay }}
+            </div>
+          </div>
+        </el-form-item>
+      </dg-col>
+      <dg-col :span="24">
+        <el-form-item label="服务访问地址:" prop="serviceUrl">
+          <el-input v-model="form.serviceUrl" placeholder="参数为字符串类型的数组对象" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.serviceUrl }}</span>
+        </el-form-item>
+      </dg-col>
+      <dg-col :span="24">
+        <el-form-item label="服务提供应用系统名称:" prop="appCode">
+          <dg-select
+            :data="apps"
+            v-model="form.appCode"
+            placeholder=""
+            value-name="applyCode"
+            label-name="applyName"
+            filterable
+            v-if="!isDetail"
+          ></dg-select>
+          <span v-else>{{ form.appName }}</span>
+        </el-form-item>
+      </dg-col>
+      <dg-col :span="24">
+        <el-form-item label="服务资源描述:" prop="remark">
+          <el-input v-model="form.remark" placeholder="" type="textarea" :rows="3" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.remark }}</span>
+        </el-form-item>
+      </dg-col>
+    </el-form>
+    <div v-footer>
+      <dg-button @click="handleClose">{{ isDetail ? '关闭' : '取消' }}</dg-button>
+      <dg-button v-if="!isDetail" type="primary" @click="handleSave">保存</dg-button>
+    </div>
+  </dg-row>
 </template>
 
 <script>
-import * as Api from "@/api/ser-resource-manage";
-import { allApps } from "@/api/application";
+import * as Api from '@/api/ser-resource-manage';
+import { allApps } from '@/api/application';
 
 export default {
-    props: {
-        id: String,
-        isDetail: {
-            type: Boolean,
-            default: false
-        }
-    },
-    components: {},
-    data() {
-        return {
-            form: {
-                appCode: "",
-                appName: "",
-                mustSelf: "",
-                remark: "",
-                serviceCode: "",
-                serviceName: "",
-                serviceProvideWay: "",
-                serviceType: "",
-                serviceUrl: ""
-            },
-            rules: {
-                serviceCode: [{ required: true, message: "请输入服务资源标识符", trigger: "change" }],
-                serviceName: [{ required: true, message: "请输入服务资源名称", trigger: "change" }],
-                serviceType: [{ required: true, message: "请输入服务类型", trigger: "change" }],
-                serviceProvideWay: [{ required: true, message: "请选择服务提供方式", trigger: "change" }],
-                serviceUrl: [{ required: true, message: "请输入服务访问地址", trigger: "change" }],
-                appCode: [{ required: true, message: "请输入服务提供应用系统名称", trigger: "change" }]
-                // mustSelf: [{ required: true, message: "请选择是否自动服务", trigger: "change" }]
-            },
-            apps: [],
-            show: false
-        };
+  props: {
+    id: String,
+    isDetail: {
+      type: Boolean,
+      default: false
+    }
+  },
+  components: {},
+  data() {
+    return {
+      form: {
+        appCode: '',
+        appName: '',
+        mustSelf: '',
+        remark: '',
+        serviceCode: '',
+        serviceName: '',
+        serviceProvideWay: '',
+        serviceType: '',
+        serviceUrl: ''
+      },
+      rules: {
+        serviceCode: [{ required: true, message: '请输入服务资源标识符', trigger: 'change' }],
+        serviceName: [{ required: true, message: '请输入服务资源名称', trigger: 'change' }],
+        serviceType: [{ required: true, message: '请输入服务类型', trigger: 'change' }],
+        serviceProvideWay: [{ required: true, message: '请选择服务提供方式', trigger: 'change' }],
+        serviceUrl: [{ required: true, message: '请输入服务访问地址', trigger: 'change' }],
+        appCode: [{ required: true, message: '请输入服务提供应用系统名称', trigger: 'change' }]
+        // mustSelf: [{ required: true, message: "请选择是否自动服务", trigger: "change" }]
+      },
+      apps: [],
+      show: false
+    };
+  },
+  computed: {},
+  methods: {
+    /**
+     * 取消、关闭
+     */
+    handleClose() {
+      this.$emit('close');
     },
-    computed: {},
-    methods: {
-        saveForm() {
-            return new Promise((resolve, reject) => {
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
-                        const api = this.id ? "update" : "save";
-                        Api[api](this.form)
-                            .then((res) => {
-                                const { result, msg } = res.data;
-                                if (result == "200") {
-                                    this.$message.success("保存成功!");
-                                    resolve("成功");
-                                } else {
-                                    this.$message.warning(msg);
-                                    reject(msg);
-                                }
-                            })
-                            .catch((error) => {
-                                this.$message.error(error);
-                            });
-                    }
-                });
-            });
-        },
-        /**
-         * 获取详情
-         */
-        getDetail() {
-            Api.detail(this.id).then((res) => {
-                this.form = res.data.content;
-                this.show = true;
-            });
-        },
-
-        /**
-         * 获取应用列表
-         */
-        getAllApps() {
-            return new Promise((resolve) => {
-                allApps("").then((res) => {
-                    this.apps = res;
-                    resolve(res);
-                });
+    /**
+     * 保存
+     */
+    handleSave() {
+      this.$refs.form.validate((valid) => {
+        if (valid) {
+          const api = this.id ? 'update' : 'save';
+          Api[api](this.form)
+            .then((res) => {
+              const { result, msg } = res.data;
+              if (result == '200') {
+                this.$message.success('保存成功!');
+                this.$emit("success");
+              } else {
+                this.$message.warning(msg);
+              }
+            })
+            .catch((error) => {
+              this.$message.error(error);
             });
         }
+      });
     },
-    async created() {
-        await this.getAllApps();
-        if (this.id) {
-            if (this.isDetail) {
-                this.rules = {};
-            }
-            this.getDetail();
-        } else {
-            this.show = true;
-        }
+    /**
+     * 获取详情
+     */
+    getDetail() {
+      Api.detail(this.id).then((res) => {
+        this.form = res.data.content;
+        this.show = true;
+      });
     },
-    mounted() {}
+
+    /**
+     * 获取应用列表
+     */
+    getAllApps() {
+      return new Promise((resolve) => {
+        allApps('').then((res) => {
+          this.apps = res;
+          resolve(res);
+        });
+      });
+    }
+  },
+  async created() {
+    await this.getAllApps();
+    if (this.id) {
+      if (this.isDetail) {
+        this.rules = {};
+      }
+      this.getDetail();
+    } else {
+      this.show = true;
+    }
+  },
+  mounted() {}
 };
 </script>
 

+ 6 - 9
src/pages/data-auth-module/auth-object-manage/service-resource-manage/index.vue

@@ -95,14 +95,11 @@ export default {
           id,
           isDetail
         },
-        btn: ['确定', '取消'],
-        btnAlign: 'r',
-        yes: (index) => {
-          let _layer = layer.$children[0];
-          _layer.saveForm().then((res) => {
-            layer.close(index);
+        on: {
+          success() {
             vm.handleSearch();
-          });
+            layer.close(layer.dialogIndex);
+          }
         },
 
         area: ['800px', '550px']
@@ -112,13 +109,13 @@ export default {
      * 删除
      */
     handleDelete(row) {
-      this.$dgConfirm(`是否确认删除该条应用!`, '提示', {}).then(() => {
+      this.$dgConfirm(`是否确定删除这条数据!`, '提示', {}).then(() => {
         Api.del(row.id).then((res) => {
           this.$message.success(res);
           this.handleSearch();
         });
       });
-    },
+    }
   },
   created() {},
   mounted() {}

+ 1 - 1
src/pages/data-auth-module/auth-object-manage/sort-code-manage/data-level.vue

@@ -79,7 +79,7 @@ export default {
      * 删除
      */
     handleDelete(row) {
-      this.$dgConfirm(`是否确认删除该条数据!`, '提示', {}).then(() => {
+      this.$dgConfirm(`是否确定删除这条数据!`, '提示', {}).then(() => {
         delDataLevel(row.id).then((res) => {
           this.$message.success('删除成功!');
           this.handleSearch();

+ 6 - 11
src/pages/data-auth-module/auth-object-manage/sort-code-manage/field-sort-code.vue

@@ -92,7 +92,7 @@ export default {
      * 删除
      */
     handleDelete(row, e) {
-      this.$dgConfirm(`是否确认删除该条数据!`, '提示', {}).then(() => {
+      this.$dgConfirm(`是否确定删除这条数据!`, '提示', {}).then(() => {
         delFieldClassify(row.secId).then((res) => {
           this.$message.success('删除成功!');
           this.handleSearch();
@@ -114,17 +114,12 @@ export default {
           id,
           isDetail
         },
-        btn: ['确定', '取消'],
-        btnAlign: 'r',
-        noneBtnField: isDetail,
-        yes: (index) => {
-          let _layer = layer.$children[0];
-          _layer.saveForm().then((res) => {
-            layer.close(index);
-            vm.handleSearch();
-          });
+        on: {
+          success() {
+             vm.handleSearch();
+             layer.close(layer.dialogIndex);
+          }
         },
-
         area: ['900px', '500px']
       });
     }

+ 113 - 110
src/pages/data-auth-module/auth-object-manage/sort-code-manage/forms/field-sort-form.vue

@@ -4,124 +4,127 @@
 @Date: 2021-06-02 16:03
 -->
 <template>
-    <dg-row>
-        <el-form ref="form" :model="form" :rules="rules" label-width="160px" label-suffix=":">
-            <dg-col :span="12">
-                <el-form-item label="字段一级代码" prop="firCode">
-                    <el-input v-model="form.firCode" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.firCode }}</span>
-                </el-form-item>
-                <el-form-item label="字段二级代码" prop="secCode">
-                    <el-input v-model="form.secCode" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.secCode }}</span>
-                </el-form-item>
-            </dg-col>
-            <dg-col :span="12">
-                <el-form-item label="字段一级分类" prop="firName">
-                    <el-input v-model="form.firName" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.firName }}</span>
-                </el-form-item>
-                <el-form-item label="字段二级分类" prop="secName">
-                    <el-input v-model="form.secName" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.secName }}</span>
-                </el-form-item>
-            </dg-col>
-            <dg-col :span="24">
-                <el-form-item label="说明" prop="remark">
-                    <el-input
-                        v-model="form.remark"
-                        placeholder=""
-                        type="textarea"
-                        :rows="3"
-                        v-if="!isDetail"
-                    ></el-input>
-                    <span v-else>{{ form.remark }}</span>
-                </el-form-item>
-            </dg-col>
-        </el-form>
-    </dg-row>
+  <dg-row>
+    <el-form ref="form" :model="form" :rules="rules" label-width="160px" label-suffix=":">
+      <dg-col :span="12">
+        <el-form-item label="字段一级代码" prop="firCode">
+          <el-input v-model="form.firCode" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.firCode }}</span>
+        </el-form-item>
+        <el-form-item label="字段二级代码" prop="secCode">
+          <el-input v-model="form.secCode" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.secCode }}</span>
+        </el-form-item>
+      </dg-col>
+      <dg-col :span="12">
+        <el-form-item label="字段一级分类" prop="firName">
+          <el-input v-model="form.firName" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.firName }}</span>
+        </el-form-item>
+        <el-form-item label="字段二级分类" prop="secName">
+          <el-input v-model="form.secName" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.secName }}</span>
+        </el-form-item>
+      </dg-col>
+      <dg-col :span="24">
+        <el-form-item label="说明" prop="remark">
+          <el-input v-model="form.remark" placeholder="" type="textarea" :rows="3" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.remark }}</span>
+        </el-form-item>
+      </dg-col>
+    </el-form>
+    <div v-footer>
+      <dg-button @click="handleClose">{{ isDetail ? '关闭' : '取消' }}</dg-button>
+      <dg-button v-if="!isDetail" type="primary" @click="handleSave">保存</dg-button>
+    </div>
+  </dg-row>
 </template>
 
 <script>
-import { getFieldClassifyDetail, saveFieldClassify, updateFieldClassify } from "@/api/data-auth";
+import { getFieldClassifyDetail, saveFieldClassify, updateFieldClassify } from '@/api/data-auth';
 export default {
-    props: {
-        id: String,
-        isDetail: {
-            type: Boolean,
-            default: false
-        }
-    },
-    components: {},
-    data() {
-        return {
-            form: {
-                firCode: "",
-                secCode: "",
-                firName: "",
-                secName: "",
-                remark: ""
-            },
-            rules: {
-                firCode: [{ required: true, message: "请输入字段一级代码", trigger: "change" }],
-                secCode: [{ required: true, message: "请输入字段二级代码", trigger: "change" }],
-                firName: [{ required: true, message: "请输入字段一级分类", trigger: "change" }],
-                secName: [{ required: true, message: "请输入字段二级分类", trigger: "change" }],
-            }
-        };
+  props: {
+    id: String,
+    isDetail: {
+      type: Boolean,
+      default: false
+    }
+  },
+  components: {},
+  data() {
+    return {
+      form: {
+        firCode: '',
+        secCode: '',
+        firName: '',
+        secName: '',
+        remark: ''
+      },
+      rules: {
+        firCode: [{ required: true, message: '请输入字段一级代码', trigger: 'change' }],
+        secCode: [{ required: true, message: '请输入字段二级代码', trigger: 'change' }],
+        firName: [{ required: true, message: '请输入字段一级分类', trigger: 'change' }],
+        secName: [{ required: true, message: '请输入字段二级分类', trigger: 'change' }]
+      }
+    };
+  },
+  computed: {},
+  methods: {
+    /**
+     * 取消、关闭
+     */
+    handleClose() {
+      this.$emit('close');
     },
-    computed: {},
-    methods: {
-        /**
-         * 保存
-         */
-        saveForm() {
-            return new Promise((resolve) => {
-                this.$refs.form.validate(async (valid) => {
-                    if (valid) {
-                        const res = this.id ? await this.update() : await this.add();
-                        if (res.data.result == "200") {
-                            this.$message.success("保存成功");
-                            resolve("成功");
-                        } else {
-                            this.$message.warning(res.data.msg);
-                        }
-                    }
-                });
-            });
-        },
-        add() {
-            return new Promise((resolve) => {
-                saveFieldClassify(this.form).then((res) => {
-                    resolve(res);
-                });
-            });
-        },
-        update() {
-            return new Promise((resolve) => {
-                updateFieldClassify(this.form).then((res) => {
-                    resolve(res);
-                });
-            });
-        },
-        /**
-         * 获取详情
-         */
-        getDetail() {
-            getFieldClassifyDetail(this.id).then((res) => {
-                this.form = res.data.content;
-            });
+
+    /**
+     * 保存
+     */
+    handleSave() {
+      this.$refs.form.validate(async (valid) => {
+        if (valid) {
+          const res = this.id ? await this.update() : await this.add();
+          if (res.data.result == '200') {
+            this.$message.success('保存成功');
+            this.$emit('success');
+          } else {
+            this.$message.warning(res.data.msg);
+          }
         }
+      });
     },
-    created() {
-        if (this.id) {
-            if (this.isDetail) {
-                this.rules = {};
-            }
-            this.getDetail();
-        }
+    add() {
+      return new Promise((resolve) => {
+        saveFieldClassify(this.form).then((res) => {
+          resolve(res);
+        });
+      });
+    },
+    update() {
+      return new Promise((resolve) => {
+        updateFieldClassify(this.form).then((res) => {
+          resolve(res);
+        });
+      });
     },
-    mounted() {}
+    /**
+     * 获取详情
+     */
+    getDetail() {
+      getFieldClassifyDetail(this.id).then((res) => {
+        this.form = res.data.content;
+      });
+    }
+  },
+  created() {
+    if (this.id) {
+      if (this.isDetail) {
+        this.rules = {};
+      }
+      this.getDetail();
+    }
+  },
+  mounted() {}
 };
 </script>
 

+ 135 - 134
src/pages/data-auth-module/auth-object-manage/sort-code-manage/forms/source-sort-form.vue

@@ -4,148 +4,149 @@
 @Date: 2021-05-31 09:04
 -->
 <template>
-    <dg-row>
-        <el-form ref="form" :model="form" :rules="rules" label-width="160px" label-suffix=":">
-            <dg-col :span="12">
-                <el-form-item label="一级代码" prop="firCode">
-                    <el-input v-model="form.firCode" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.firCode }}</span>
-                </el-form-item>
-                <el-form-item label="二级代码" prop="secCode">
-                    <el-input v-model="form.secCode" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.secCode }}</span>
-                </el-form-item>
-                <el-form-item label="标签分类代码" prop="labClaCode">
-                    <el-input v-model="form.labClaCode" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.labClaCode }}</span>
-                </el-form-item>
-                <el-form-item label="标签代码" prop="labCode">
-                    <el-input v-model="form.labCode" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.labCode }}</span>
-                </el-form-item>
-            </dg-col>
-            <dg-col :span="12">
-                <el-form-item label="数据组织一级分类" prop="firName">
-                    <el-input v-model="form.firName" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.firName }}</span>
-                </el-form-item>
-                <el-form-item label="数据组织二级分类" prop="secName">
-                    <el-input v-model="form.secName" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.secName }}</span>
-                </el-form-item>
-                <el-form-item label="标签分类" prop="labClaName">
-                    <el-input v-model="form.labClaName" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.labClaName }}</span>
-                </el-form-item>
-                <el-form-item label="标签名称" prop="labName">
-                    <el-input v-model="form.labName" placeholder="" v-if="!isDetail"></el-input>
-                    <span v-else>{{ form.labName }}</span>
-                </el-form-item>
-            </dg-col>
-            <dg-col :span="24">
-                <el-form-item label="说明" prop="remark">
-                    <el-input
-                        v-model="form.remark"
-                        placeholder=""
-                        type="textarea"
-                        :rows="3"
-                        v-if="!isDetail"
-                    ></el-input>
-                    <span v-else>{{ form.remark }}</span>
-                </el-form-item>
-            </dg-col>
-        </el-form>
-    </dg-row>
+  <dg-row>
+    <el-form ref="form" :model="form" :rules="rules" label-width="160px" label-suffix=":">
+      <dg-col :span="12">
+        <el-form-item label="一级代码" prop="firCode">
+          <el-input v-model="form.firCode" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.firCode }}</span>
+        </el-form-item>
+        <el-form-item label="二级代码" prop="secCode">
+          <el-input v-model="form.secCode" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.secCode }}</span>
+        </el-form-item>
+        <el-form-item label="标签分类代码" prop="labClaCode">
+          <el-input v-model="form.labClaCode" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.labClaCode }}</span>
+        </el-form-item>
+        <el-form-item label="标签代码" prop="labCode">
+          <el-input v-model="form.labCode" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.labCode }}</span>
+        </el-form-item>
+      </dg-col>
+      <dg-col :span="12">
+        <el-form-item label="数据组织一级分类" prop="firName">
+          <el-input v-model="form.firName" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.firName }}</span>
+        </el-form-item>
+        <el-form-item label="数据组织二级分类" prop="secName">
+          <el-input v-model="form.secName" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.secName }}</span>
+        </el-form-item>
+        <el-form-item label="标签分类" prop="labClaName">
+          <el-input v-model="form.labClaName" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.labClaName }}</span>
+        </el-form-item>
+        <el-form-item label="标签名称" prop="labName">
+          <el-input v-model="form.labName" placeholder="" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.labName }}</span>
+        </el-form-item>
+      </dg-col>
+      <dg-col :span="24">
+        <el-form-item label="说明" prop="remark">
+          <el-input v-model="form.remark" placeholder="" type="textarea" :rows="3" v-if="!isDetail"></el-input>
+          <span v-else>{{ form.remark }}</span>
+        </el-form-item>
+      </dg-col>
+    </el-form>
+    <div v-footer>
+      <dg-button @click="handleClose">{{ isDetail ? '关闭' : '取消' }}</dg-button>
+      <dg-button v-if="!isDetail" type="primary" @click="handleSave">保存</dg-button>
+    </div>
+  </dg-row>
 </template>
 
 <script>
-import { getDataSourceClaDetail, saveDataSourceCla, updateDataSourceCla } from "@/api/data-auth";
+import { getDataSourceClaDetail, saveDataSourceCla, updateDataSourceCla } from '@/api/data-auth';
 export default {
-    props: {
-        id: String,
-        isDetail: {
-            type: Boolean,
-            default: false
-        }
-    },
-    components: {},
-    data() {
-        return {
-            form: {
-                firCode: "",
-                secCode: "",
-                labClaCode: "",
-                labCode: "",
-                firName: "",
-                secName: "",
-                labClaName: "",
-                labName: "",
-                remark: ""
-            },
-            rules: {
-                firCode: [{ required: true, message: "请输入一级代码", trigger: "change" }],
-                secCode: [{ required: true, message: "请输入二级代码", trigger: "change" }],
-                labClaCode: [{ required: true, message: "请输入标签分类代码", trigger: "change" }],
-                labCode: [{ required: true, message: "请输入标签代码", trigger: "change" }],
-                firName: [{ required: true, message: "请输入数据组织一级分类", trigger: "change" }],
-                secName: [{ required: true, message: "请输入数据组织二级分类", trigger: "change" }],
-                labClaName: [{ required: true, message: "请输入标签分类", trigger: "change" }],
-                labName: [{ required: true, message: "请输入标签名称", trigger: "change" }]
-            }
-        };
+  props: {
+    id: String,
+    isDetail: {
+      type: Boolean,
+      default: false
+    }
+  },
+  components: {},
+  data() {
+    return {
+      form: {
+        firCode: '',
+        secCode: '',
+        labClaCode: '',
+        labCode: '',
+        firName: '',
+        secName: '',
+        labClaName: '',
+        labName: '',
+        remark: ''
+      },
+      rules: {
+        firCode: [{ required: true, message: '请输入一级代码', trigger: 'change' }],
+        secCode: [{ required: true, message: '请输入二级代码', trigger: 'change' }],
+        labClaCode: [{ required: true, message: '请输入标签分类代码', trigger: 'change' }],
+        labCode: [{ required: true, message: '请输入标签代码', trigger: 'change' }],
+        firName: [{ required: true, message: '请输入数据组织一级分类', trigger: 'change' }],
+        secName: [{ required: true, message: '请输入数据组织二级分类', trigger: 'change' }],
+        labClaName: [{ required: true, message: '请输入标签分类', trigger: 'change' }],
+        labName: [{ required: true, message: '请输入标签名称', trigger: 'change' }]
+      }
+    };
+  },
+  computed: {},
+  methods: {
+    /**
+     * 取消、关闭
+     */
+    handleClose() {
+      this.$emit('close');
     },
-    computed: {},
-    methods: {
-        /**
-         * 保存
-         */
-        saveForm() {
-            return new Promise((resolve) => {
-                this.$refs.form.validate(async (valid) => {
-                    if (valid) {
-                        const res = this.id ? await this.update() : await this.add();
-                        if (res.data.result == "200") {
-                            this.$message.success("保存成功");
-                            resolve("成功");
-                        } else {
-                            this.$message.warning(res.data.msg);
-                        }
-                    }
-                });
-            });
-        },
-        add() {
-            return new Promise((resolve) => {
-                saveDataSourceCla(this.form).then((res) => {
-                    resolve(res);
-                });
-            });
-        },
-        update() {
-            return new Promise((resolve) => {
-                updateDataSourceCla(this.form).then((res) => {
-                    resolve(res);
-                });
-            });
-        },
-        /**
-         * 获取详情
-         */
-        getDetail() {
-            getDataSourceClaDetail(this.id).then((res) => {
-                this.form = res.data.content;
-            });
+    /**
+     * 保存
+     */
+    handleSave() {
+      this.$refs.form.validate(async (valid) => {
+        if (valid) {
+          const res = this.id ? await this.update() : await this.add();
+          if (res.data.result == '200') {
+            this.$message.success('保存成功');
+          } else {
+            this.$message.warning(res.data.msg);
+          }
         }
+      });
     },
-    created() {
-        if (this.id) {
-            if (this.isDetail) {
-                this.rules = {};
-            }
-            this.getDetail();
-        }
+    add() {
+      return new Promise((resolve) => {
+        saveDataSourceCla(this.form).then((res) => {
+          resolve(res);
+        });
+      });
+    },
+    update() {
+      return new Promise((resolve) => {
+        updateDataSourceCla(this.form).then((res) => {
+          resolve(res);
+        });
+      });
     },
-    mounted() {}
+    /**
+     * 获取详情
+     */
+    getDetail() {
+      getDataSourceClaDetail(this.id).then((res) => {
+        this.form = res.data.content;
+      });
+    }
+  },
+  created() {
+    if (this.id) {
+      if (this.isDetail) {
+        this.rules = {};
+      }
+      this.getDetail();
+    }
+  },
+  mounted() {}
 };
 </script>
 

+ 1 - 1
src/pages/data-auth-module/auth-object-manage/sort-code-manage/safe-level-code.vue

@@ -88,7 +88,7 @@ export default {
      * 删除
      */
     handleDelete(row) {
-      this.$dgConfirm(`是否确认删除该条数据!`, '提示', {}).then(() => {
+      this.$dgConfirm(`是否确定删除这条数据!`, '提示', {}).then(() => {
         delDataSecLev(row.id).then((res) => {
           this.$message.success('删除成功!');
           this.handleSearch();

+ 4 - 11
src/pages/data-auth-module/auth-object-manage/sort-code-manage/source-sort-code.vue

@@ -104,7 +104,7 @@ export default {
      * 删除
      */
     handleDelete(row, e) {
-      this.$dgConfirm(`是否确认删除该条数据!`, '提示', {}).then(() => {
+      this.$dgConfirm(`是否确定删除这条数据!`, '提示', {}).then(() => {
         delDataSourceCla(row.labId).then((res) => {
           this.$message.success('删除成功!');
           this.handleSearch();
@@ -126,17 +126,10 @@ export default {
           id,
           isDetail
         },
-        btn: ['确定', '取消'],
-        btnAlign: 'r',
-        noneBtnField: isDetail,
-        yes: (index) => {
-          let _layer = layer.$children[0];
-          _layer.saveForm().then((res) => {
-            layer.close(index);
-            vm.handleSearch();
-          });
+        success() {
+          vm.handleSearch();
+          layer.close(layer.dialogIndex);
         },
-
         area: ['900px', '500px']
       });
     }

+ 127 - 136
src/pages/data-auth-module/auth-subject-manage/subject-prop-manage/prop-tree.vue

@@ -4,156 +4,147 @@
 @Date: 2021-05-24 09:15
 -->
 <template>
-    <div class="u-tree">
-        <h4 class="u-tree__title">{{ title }}</h4>
-        <dg-scrollbar>
-            <dg-tree
-                ref="tree"
-                icon-class="el-icon-folder-opened"
-                icon-leaf="el-icon-document"
-                node-key="id"
-                :data="treeData"
-                :props="props"
-                highlight-current
-                default-expand-all
-                :expand-on-click-node="false"
-            >
-                <div slot-scope="{ data }" class="u-tree-label el-tree-node__edit" style="width: 100%">
-                    <span @click="handleNodeClick(data)" style="display: inline-block; flex: 1">
-                        {{ data[props.label] }}
-                    </span>
-                    <span class="operation-icons">
-                        <i class="el-icon-circle-plus-outline" v-if="!data.pid" @click="handleOperate('add', data)">
-                        </i>
-                        <i class="el-icon-delete" v-if="data.pid && data.child" @click="handleOperate('delete', data)">
-                        </i>
-                    </span>
-                </div>
-            </dg-tree>
-        </dg-scrollbar>
-    </div>
+  <div class="u-tree">
+    <dg-card class="box-card" :header="title">
+      <dg-scrollbar>
+        <dg-tree
+          ref="tree"
+          icon-class="el-icon-folder-opened"
+          icon-leaf="el-icon-document"
+          node-key="id"
+          :data="treeData"
+          :props="props"
+          highlight-current
+          default-expand-all
+          :expand-on-click-node="false"
+        >
+          <div slot-scope="{ data }" class="u-tree-label el-tree-node__edit" style="width: 100%">
+            <span @click="handleNodeClick(data)" style="display: inline-block; flex: 1">
+              {{ data[props.label] }}
+            </span>
+            <span class="operation-icons">
+              <i class="el-icon-circle-plus-outline" v-if="!data.pid" @click="handleOperate('add', data)"> </i>
+              <i class="el-icon-delete" v-if="data.pid && data.child" @click="handleOperate('delete', data)"> </i>
+            </span>
+          </div>
+        </dg-tree>
+      </dg-scrollbar>
+    </dg-card>
+  </div>
 </template>
 
 <script>
-import { getPropTreeByType, deleteProp } from "@/api/data-auth";
+import { getPropTreeByType, deleteProp } from '@/api/data-auth';
 export default {
-    props: {
-        apiName: {
-            type: String,
-            default: "menuTree"
-        },
-        title: String,
-        // SUB = 主体属性类, OBJ = 客体属性类
-        type: String
+  props: {
+    apiName: {
+      type: String,
+      default: 'menuTree'
     },
-    components: {},
-    data() {
-        return {
-            treeData: [],
-            props: {
-                value: "id",
-                label: "name",
-                children: "child"
-            }
-        };
-    },
-    computed: {},
-    methods: {
-        handleNodeClick(data) {
-            let operateType = "add";
-            if (data.pid) {
-                if (data.child) {
-                    operateType = "edit";
-                } else {
-                    operateType = "detail";
-                }
-            }
-            this.$emit("submitNodeOperate", {
-                ...data,
-                operateType
-            });
-        },
-        /**
-         * 操作
-         */
-        handleOperate(operateType, data) {
-            if (operateType == "delete") {
-                this.handleDelProp(data);
-            } else {
-                this.$emit("submitNodeOperate", {
-                    ...data,
-                    operateType
-                });
-            }
-        },
-        /**
-         * 删除
-         */
-        handleDelProp(data) {
-            this.$dgConfirm(`是否确认删除该属性!`, "提示", {}).then(() => {
-                const params = {
-                    attrBelongType: data.attrBelongType,
-                    attrType: this.type,
-                    id: data.id
-                };
-                deleteProp(params).then((res) => {
-                    this.$message.success("删除成功");
-                    this.init();
-                    this.setDefault();
-                });
-            });
-        },
-        init() {
-            return new Promise((resolve) => {
-                getPropTreeByType(this.type).then((res) => {
-                    this.treeData = res.data.content;
-                    resolve(res.data.content);
-                });
-            });
-        },
-        // 默认取第一条,新增
-        setDefault() {
-            if (this.treeData.length > 0) {
-                this.handleOperate("add", this.treeData[0]);
-                this.$refs.tree.setCurrentKey(this.treeData[0].id);
-            }
+    title: String,
+    // SUB = 主体属性类, OBJ = 客体属性类
+    type: String
+  },
+  components: {},
+  data() {
+    return {
+      treeData: [],
+      props: {
+        value: 'id',
+        label: 'name',
+        children: 'child'
+      }
+    };
+  },
+  computed: {},
+  methods: {
+    handleNodeClick(data) {
+      let operateType = 'add';
+      if (data.pid) {
+        if (data.child) {
+          operateType = 'edit';
+        } else {
+          operateType = 'detail';
         }
+      }
+      this.$emit('submitNodeOperate', {
+        ...data,
+        operateType
+      });
+    },
+    /**
+     * 操作
+     */
+    handleOperate(operateType, data) {
+      if (operateType == 'delete') {
+        this.handleDelProp(data);
+      } else {
+        this.$emit('submitNodeOperate', {
+          ...data,
+          operateType
+        });
+      }
     },
-    async created() {
-        await this.init();
-        this.setDefault();
+    /**
+     * 删除
+     */
+    handleDelProp(data) {
+      this.$dgConfirm(`是否确认删除该属性!`, '提示', {}).then(() => {
+        const params = {
+          attrBelongType: data.attrBelongType,
+          attrType: this.type,
+          id: data.id
+        };
+        deleteProp(params).then((res) => {
+          this.$message.success('删除成功');
+          this.init();
+          this.setDefault();
+        });
+      });
+    },
+    init() {
+      return new Promise((resolve) => {
+        getPropTreeByType(this.type).then((res) => {
+          this.treeData = res.data.content;
+          resolve(res.data.content);
+        });
+      });
     },
-    mounted() {}
+    // 默认取第一条,新增
+    setDefault() {
+      if (this.treeData.length > 0) {
+        this.handleOperate('add', this.treeData[0]);
+        this.$refs.tree.setCurrentKey(this.treeData[0].id);
+      }
+    }
+  },
+  async created() {
+    await this.init();
+    this.setDefault();
+  },
+  mounted() {}
 };
 </script>
 
 <style lang='scss' scoped>
 .u-tree {
-    height: calc(100vh - 12rem);
-    border: 1px solid #eef2fa;
-    border-bottom: none;
-    &__title {
-        font-size: 14px;
-        height: 48px;
-        line-height: 48px;
-        padding: 0 15px;
-        border: 0 none;
-        background-color: #eef2fa;
+  .el-tree-node__edit {
+    display: flex;
+    justify-content: space-between;
+    align-items: center;
+    padding-right: 20px;
+    i {
+      color: #1890ff;
     }
-    .el-tree-node__edit {
-        display: flex;
-        justify-content: space-between;
-        align-items: center;
-        padding-right: 20px;
-        i {
-            color: #1890ff;
-        }
-        .operation-icons {
-            display: none;
-        }
-        &:hover .operation-icons {
-            display: block;
-        }
+    .operation-icons {
+      display: none;
     }
+    &:hover .operation-icons {
+      display: block;
+    }
+  }
+}
+/deep/ .el-tree {
+  height: calc(100vh - 16rem);
 }
 </style>

+ 1 - 1
src/pages/data-auth-module/data-permission-manage/data-auth-manage/business-tag-auth.vue

@@ -5,7 +5,7 @@
 -->
 <template>
     <div>
-        <dg-row class="property-wapper" :gutter="10">
+        <dg-row class="property-wapper" gutter="1rem">
             <!-- 属性列表 -->
             <dg-col :span="5" class="property-wapper__left">
                 <dg-card header="业务域标签列表" class="org-card box-card">

+ 1 - 1
src/pages/data-auth-module/data-permission-manage/data-auth-manage/org-auth.vue

@@ -5,7 +5,7 @@
 -->
 <template>
     <div>
-        <dg-row class="property-wapper" :gutter="10">
+        <dg-row class="property-wapper" gutter="1rem">
             <!-- 机构列表 -->
             <dg-col :span="5" class="property-wapper__left">
                 <dg-card header="机构列表" class="org-card box-card">

+ 99 - 148
src/pages/data-auth-module/data-permission-manage/data-auth-manage/person-auth.vue

@@ -4,165 +4,116 @@
 @Date: 2021-04-06 14:30
 -->
 <template>
-    <dg-row class="property-wapper" :gutter="2">
-        <!-- 属性列表 -->
-        <dg-col :span="5" class="property-wapper__left">
-            <dg-card header="机构列表" class="org-card box-card">
-                <org-tree
-                    ref="tree"
-                    class="u-pm__left"
-                    treeHeight="calc(100vh - 19rem)"
-                    paddingRight="15px"
-                    :search="true"
-                    :isClearSelectedNode="clearSelectedNode"
-                    @handleGetNode="handleGetNode"
-                    @submitRootNode="submitRootNode"
-                    @doClickSearchItem="handleGetNode"
-                    @setClearNodesFlag="getClearNodesFlag"
-                ></org-tree>
-            </dg-card>
-        </dg-col>
-        <!-- 人员列表区域 -->
-        <dg-col :span="8" class="property-wapper__center">
-            <dg-card class="box-card" header="人员列表">
-                <!-- 搜索栏 -->
-                <el-form :inline="true" class="search-form">
-                    <el-form-item label="用户类型">
-                        <dg-select
-                            style="width: 100px"
-                            v-model="searchPersonCondition.userType.value"
-                            enum="UserTypeEnum"
-                            clearable
-                        ></dg-select>
-                    </el-form-item>
-                    <el-form-item label="姓名">
-                        <el-input
-                            style="width: 130px"
-                            v-model="searchPersonCondition.name.value"
-                            clearable
-                            @keyup.enter.native="handleSearch"
-                        ></el-input>
-                    </el-form-item>
-                    <el-form-item>
-                        <dg-button type="primary" @click="handleSearch" icon="el-icon-search">查询</dg-button>
-                    </el-form-item>
-                </el-form>
-                <!-- 人员列表 -->
-                <dg-table
-                    ref="personTable"
-                    :url="personUrl"
-                    :condition="searchPersonCondition"
-                    border
-                    row-key="id"
-                    @row-click="handleTableRowClick"
-                    highlight-current-row
-                    :row-style="rowStyle"
-                    :lazyLoad="true"
-                >
-                    <!-- <dg-table-column type="selection" reserve-selection width="55"></dg-table-column> -->
-                    <dg-table-column type="index" width="70" label="序号" align="center"></dg-table-column>
-                    <dg-table-column prop="name" label="姓名" align="center"></dg-table-column>
-                    <dg-table-column prop="idcard" label="身份证号码" align="center"></dg-table-column>
-                    <dg-table-column prop="userType" label="用户类型" enum="UserTypeEnum" align="center"></dg-table-column>
-                </dg-table>
-            </dg-card>
-        </dg-col>
-        <!-- 权限设置 -->
-        <dg-col :span="11" :key="key">
-             <set-auth :subId="subId" subType="USER" saveApi="saveUserDataAuth"></set-auth>   
-        </dg-col>
-    </dg-row>
+  <dg-row class="property-wapper" gutter="1rem">
+    <!-- 人员列表区域 -->
+    <dg-col :span="15" class="property-wapper__center">
+      <dg-card shadow="never" header="人员列表">
+        <!-- 搜索栏 -->
+        <search-bar :conditionForm="conditionForm" @submitSearch="receiveSearch"></search-bar>
+        <!-- 人员列表 -->
+        <new-table
+           ref="table"
+          :tableUrl="userTableUrl"
+          :tableHeader="tableHeader"
+          :condition="condition"
+          @handleRowClick="receiveIsClickedUser"
+        ></new-table>
+      </dg-card>
+    </dg-col>
+    <!-- 权限设置 -->
+    <dg-col :span="9" :key="key">
+      <set-auth :subId="subId" subType="USER" saveApi="saveUserDataAuth"></set-auth>
+    </dg-col>
+  </dg-row>
 </template>
 <script>
-import orgTree from "@/pages/common/tree";
-import { staffUserPage } from "@/api/role-auth-info";
-import setAuth from "@/components/data-auth/set-auth"
+import { staffUserPage } from '@/api/role-auth-info';
+import setAuth from '@/components/data-auth/set-auth';
+import searchBar from '@/components/search-bar';
+import { searchOpt } from '@/mixins/page-opt';
+import newTable from '@/pages/common/new-table';
 export default {
-    components: { orgTree, setAuth },
-    data() {
-        return {
-            // 激活的tab
-            activeName: "tableAuth",
-            rowStyle: {
-                cursor: "pointer"
-            },
-            personUrl: staffUserPage,
-            searchPersonCondition: {
-                orgId: { value: "", op: "=" },
-                name: { value: "", op: "like" },
-                userType: { value: "", op: "=" }
-            },
-            clearSelectedNode: false,
-            key: 0,
-            subId: ""
-        };
-    },
-    computed: {},
-    methods: {
-        /**
-         * @description: 搜索人员列表
-         */
-        handleSearch() {
-            this.clearSelectedNode = true;
-            this.searchPersonCondition.orgId.value = "";
-            this.$refs.personTable.searchForm();
-            this.subId = "";
-            this.key++
+  components: { setAuth, searchBar, newTable },
+  mixins: [searchOpt],
+  data() {
+    return {
+      // 激活的tab
+      activeName: 'tableAuth',
+      rowStyle: {
+        cursor: 'pointer'
+      },
+      conditionForm: [
+        {
+          label: '用户类型',
+          name: 'userType',
+          op: '=',
+          value: '',
+          component: 'DgSelect',
+          attr: {
+            enum: 'UserTypeEnum',
+            style: "width: 9rem"
+          }
         },
-
-        /**
-         * @description: 点击人员列表
-         * @param {*} row
-         */
-        handleTableRowClick(row) {
-            this.subId = row.idcard;
-            this.key++
+        {
+          label: '姓名',
+          name: 'name',
+          op: 'like',
+          value: '',
+          component: 'ElInput',
+          attr: {
+              style: "width: 9rem"
+          }
         },
-        /**
-         * @description: 获取机构节点
-         * @param {*} node
-         */
-        handleGetNode({ id }) {
-            const oldValue = this.searchPersonCondition.orgId.value;
-            if (oldValue !== id) {
-                this.searchPersonCondition.orgId.value = id;
-                this.$refs.personTable.searchForm();
-                this.subId = "";
-                this.key++;
-            }
+        {
+          label: '单位名称',
+          name: 'orgId',
+          op: '=',
+          value: '',
+          apiName: 'getTree',
+          nodeKey: 'id',
+          type: 'APP',
+          component: 'SelectOrgTree',
+          placeholder: '请选择单位名称'
+        }
+      ],
+      userTableUrl: staffUserPage,
+      key: 0,
+      subId: '',
+      tableHeader: [
+        {
+          label: '姓名',
+          prop: 'name'
         },
-        // 默认获取根节点
-        submitRootNode({ id }) {
-            this.$nextTick(() => {
-                this.handleGetNode({ id });
-            });
+        {
+          label: '身份证号码',
+          prop: 'idcard'
         },
-        handleSave() {},
-        /**
-         * @description: 设置清除选中节点标志
-         * @param {*} val
-         */
-        getClearNodesFlag(val) {
-            this.clearSelectedNode = val;
+        {
+          label: '用户类型',
+          prop: 'userType',
+          enum: 'UserTypeEnum'
+        },{
+            label: "单位名称",
+            prop: "orgName"
         }
+      ]
+    };
+  },
+  computed: {},
+  methods: {
+    /**
+     * @description: 接收被点击人员
+     * @param {*} row
+     */
+    receiveIsClickedUser(row) {
+      this.subId = row.idcard;
+      this.key++;
     },
-    created() {},
-    mounted() {}
+  },
+  created() {},
+  mounted() {}
 };
 </script>
 
 <style lang='scss' scoped>
-/deep/ .el-card__header {
-    display: block;
-}
-/deep/ .org-card {
-    .el-card__body {
-        padding: 20px 5px 20px 20px;
-    }
-}
-.user-search {
-    display: flex;
-    align-items: center;
-}
-
 </style>

+ 142 - 174
src/pages/data-auth-module/data-permission-manage/data-auth-search/person-view.vue

@@ -4,196 +4,164 @@
 @Date: 2021-04-01 10:45
 -->
 <template>
-    <dg-row class="property-wapper">
-        <!-- 属性列表 -->
-        <dg-col :span="5" class="property-wapper__left">
-            <dg-card header="机构列表" class="org-card box-card">
-                <org-tree
-                    ref="tree"
-                    class="u-pm__left"
-                    treeHeight="calc(100vh - 19rem)"
-                    paddingRight="15px"
-                    :search="true"
-                    :isClearSelectedNode="clearSelectedNode"
-                    @handleGetNode="handleGetNode"
-                    @submitRootNode="submitRootNode"
-                    @doClickSearchItem="handleGetNode"
-                    @setClearNodesFlag="getClearNodesFlag"
-                ></org-tree>
-            </dg-card>
-        </dg-col>
-        <!-- 人员列表区域 -->
-        <dg-col :span="9" class="property-wapper__center">
-            <dg-card class="box-card" header="人员列表">
-                <!-- 搜索栏 -->
-                <el-form :inline="true" class="search-form">
-                    <el-form-item label="姓名">
-                        <el-input
-                            v-model="searchPersonCondition.name.value"
-                            clearable
-                            @keyup.enter.native="handleSearch"
-                        ></el-input>
-                    </el-form-item>
-                    <el-form-item>
-                        <dg-button type="primary" @click="handleSearch" icon="el-icon-search">查询</dg-button>
-                    </el-form-item>
-                </el-form>
-                <!-- 人员列表 -->
-                <dg-table
-                    ref="personTable"
-                    :url="personUrl"
-                    :condition="searchPersonCondition"
-                    border
-                    row-key="id"
-                    @row-click="handleTableRowClick"
-                    highlight-current-row
-                    :row-style="rowStyle"
-                    :lazyLoad="true"
-                >
-                    <dg-table-column type="index" width="70" label="序号" align="center"></dg-table-column>
-                    <dg-table-column prop="name" label="姓名" align="center"></dg-table-column>
-                    <dg-table-column prop="idcard" label="身份证号码" align="center"></dg-table-column>
-                    <dg-table-column prop="orgName" label="单位名称" align="center"></dg-table-column>
-                </dg-table>
-            </dg-card>
-        </dg-col>
-        <!-- 权限设置 -->
-        <dg-col :span="10" class="property-wapper__right">
-            <dg-card class="box-card" header="权限设置">
-                <el-tabs v-model="activeName">
-                    <el-tab-pane label="表权限" name="TABLE">
-                        <person-view-tree tab="TABLE" :idcard="idcard" :key="key"></person-view-tree>
-                    </el-tab-pane>
-                    <el-tab-pane label="列权限" name="COLUMN">
-                        <person-view-tree tab="COLUMN" :idcard="idcard" :key="key"></person-view-tree>
-                    </el-tab-pane>
-                </el-tabs>
-            </dg-card>
-        </dg-col>
-    </dg-row>
+  <dg-row class="property-wapper" gutter="1rem">
+    <dg-col :span="15" class="property-wapper__left">
+      <dg-card class="box-card" header="人员列表">
+        <!-- 搜索栏 -->
+        <search-bar :conditionForm="conditionForm" @submitSearch="receiveSearch"></search-bar>
+        <!-- 人员列表 -->
+        <new-table
+          ref="table"
+          :tableUrl="userTableUrl"
+          :tableHeader="tableHeader"
+          :condition="condition"
+          @handleRowClick="receiveIsClickedUser"
+        ></new-table>
+      </dg-card>
+    </dg-col>
+    <!-- 权限设置 -->
+    <dg-col :span="9" class="property-wapper__right">
+      <dg-card class="box-card" header="权限设置">
+        <el-tabs v-model="activeName">
+          <el-tab-pane label="表权限" name="TABLE">
+            <person-view-tree tab="TABLE" :idcard="idcard" :key="key"></person-view-tree>
+          </el-tab-pane>
+          <el-tab-pane label="列权限" name="COLUMN">
+            <person-view-tree tab="COLUMN" :idcard="idcard" :key="key"></person-view-tree>
+          </el-tab-pane>
+        </el-tabs>
+      </dg-card>
+    </dg-col>
+  </dg-row>
 </template>
 <script>
-import orgTree from "@/pages/common/tree";
-import { staffUserPage } from "@/api/role-auth-info";
-import personViewTree from "@/components/data-auth/person-view-tree";
+import { staffUserPage } from '@/api/role-auth-info';
+import personViewTree from '@/components/data-auth/person-view-tree';
+import searchBar from '@/components/search-bar';
+import { searchOpt } from '@/mixins/page-opt';
+import newTable from '@/pages/common/new-table';
 export default {
-    components: { orgTree, personViewTree },
-    data() {
-        return {
-            // 激活的tab
-            activeName: "TABLE",
-            rowStyle: {
-                cursor: "pointer"
-            },
-            // 查询人员姓名
-            personUrl: staffUserPage,
-            searchPersonCondition: {
-                orgId: { value: "", op: "" },
-                name: { value: "", op: "like" }
-            },
-            clearSelectedNode: false,
-            idcard: "",
-            key: 0
-        };
-    },
-    computed: {},
-    methods: {
-        /**
-         * @description: 搜索人员列表
-         */
-        handleSearch() {
-            this.clearSelectedNode = true;
-            this.searchPersonCondition.orgId.value = "";
-            this.$refs.personTable.searchForm();
-            this.idcard = "";
-            this.key++;
+  components: { personViewTree, searchBar, newTable },
+  mixins: [searchOpt],
+  data() {
+    return {
+      // 激活的tab
+      activeName: 'TABLE',
+      rowStyle: {
+        cursor: 'pointer'
+      },
+      conditionForm: [
+        {
+          label: '用户类型',
+          name: 'userType',
+          op: '=',
+          value: '',
+          component: 'DgSelect',
+          attr: {
+            enum: 'UserTypeEnum',
+            style: 'width: 9rem'
+          }
         },
-
-        /**
-         * @description: 点击人员列表
-         * @param {*} row
-         */
-        handleTableRowClick(row) {
-            if (row.idcard == this.idcard) return;
-            this.idcard = row.idcard;
-            this.key++;
+        {
+          label: '姓名',
+          name: 'name',
+          op: 'like',
+          value: '',
+          component: 'ElInput',
+          attr: {
+            style: 'width: 9rem'
+          }
+        },
+        {
+          label: '单位名称',
+          name: 'orgId',
+          op: '=',
+          value: '',
+          apiName: 'getTree',
+          nodeKey: 'id',
+          type: 'APP',
+          component: 'SelectOrgTree',
+          placeholder: '请选择单位名称'
+        }
+      ],
+      userTableUrl: staffUserPage,
+      tableHeader: [
+        {
+          label: '姓名',
+          prop: 'name'
         },
-        /**
-         * @description: 获取机构节点
-         * @param {*} node
-         */
-        handleGetNode({ id }) {
-            const oldValue = this.searchPersonCondition.orgId.value;
-            if (oldValue !== id) {
-                this.searchPersonCondition.orgId.value = id;
-                this.$refs.personTable.searchForm();
-                this.idcard = "";
-                this.key++;
-            }
+        {
+          label: '身份证号码',
+          prop: 'idcard'
         },
-        // 默认获取根节点
-        submitRootNode({ id }) {
-            this.$nextTick(() => {
-                this.handleGetNode({ id });
-            });
+        {
+          label: '用户类型',
+          prop: 'userType',
+          enum: 'UserTypeEnum'
         },
-        /**
-         * @description: 设置清除选中节点标志
-         * @param {*} val
-         */
-        getClearNodesFlag(val) {
-            this.clearSelectedNode = val;
+        {
+          label: '单位名称',
+          prop: 'orgName'
         }
-    },
-    created() {},
-    mounted() {}
+      ],
+      idcard: '',
+      key: 0
+    };
+  },
+  computed: {},
+  methods: {
+    /**
+     * @description: 点击人员列表
+     * @param {*} row
+     */
+    receiveIsClickedUser(row) {
+      if (row.idcard == this.idcard) return;
+      this.idcard = row.idcard;
+      this.key++;
+    }
+  },
+  created() {},
+  mounted() {}
 };
 </script>
 
 <style lang='scss' scoped>
-/deep/ .el-card__header {
-    display: block;
-}
 /deep/ .org-card {
-    .el-card__body {
-        padding: 20px 5px 20px 20px;
-        .el-tree-node__content {
-            // margin-right: 20px;
-        }
+  .el-card__body {
+    padding: 20px 5px 20px 20px;
+    .el-tree-node__content {
+      // margin-right: 20px;
     }
-}
-.user-search {
-    display: flex;
-    align-items: center;
+  }
 }
 .auth-group {
-    &__item {
-        // margin-bottom: 20px;
-        &-subTitle {
-            font-weight: bold;
-            height: 42px;
-            line-height: 42px;
-        }
-        &-list {
-            height: 42px;
-            line-height: 42px;
-            display: flex;
-            align-items: center;
-            .list-title {
-                margin: 0 10px 0 5px;
-            }
-            .list-content {
-                display: inline-block;
-                width: 650px;
-                overflow: hidden;
-                text-overflow: ellipsis;
-                white-space: nowrap;
-            }
-            .list-detail {
-                cursor: pointer;
-                color: #1890ff;
-            }
-        }
+  &__item {
+    // margin-bottom: 20px;
+    &-subTitle {
+      font-weight: bold;
+      height: 42px;
+      line-height: 42px;
+    }
+    &-list {
+      height: 42px;
+      line-height: 42px;
+      display: flex;
+      align-items: center;
+      .list-title {
+        margin: 0 10px 0 5px;
+      }
+      .list-content {
+        display: inline-block;
+        width: 650px;
+        overflow: hidden;
+        text-overflow: ellipsis;
+        white-space: nowrap;
+      }
+      .list-detail {
+        cursor: pointer;
+        color: #1890ff;
+      }
     }
+  }
 }
 </style>

+ 1 - 1
src/pages/empower-manage/institutional-quotas-manage/edit.vue

@@ -476,7 +476,7 @@ export default {
                 });
                 return;
             }
-            that.$confirm("确定回收配额?", "确认信息", {
+            that.$confirm("确定回收配额?", "提示", {
                 distinguishCancelAndClose: true,
                 confirmButtonText: "确定",
                 cancelButtonText: "取消"

+ 53 - 93
src/pages/layout/components/navbar.vue

@@ -4,109 +4,69 @@
     @Date: 2019-03-12
 -->
 <template>
-    <div class="l-main-header" style="position: relative">
-        <div class="l-main-header__left">
-            <div class="l-main-header__box">
-                <img
-                    style="width: 40px; height: 40px"
-                    class="l-main-header__logo"
-                    src="@/assets/images/layout/logo.png"
-                />
-            </div>
-            <p class="l-main-header__title">警务云统一授权管理中心</p>
-        </div>
-        <div class="l-main-header__center"></div>
-        <div class="l-main-header__right">
-            <!-- <div class="l-search" @click.stop="handleClickSearch">
-                <span class="el-icon-search"></span>
-                <input
-                    v-model="searchValue"
-                    type="text"
-                    v-bind:class="{ 'is-active-search-show': activeShow, 'is-active-search-hide': activeHide }"
-                />
-            </div> -->
-            <div style="display: inline-block; vertical-align: top">
-                <!--<el-tooltip :content="$t('navbar.screenfull')" effect="dark" placement="bottom">-->
-                <!--<screenfull class="l-screen-full" />-->
-                <!--</el-tooltip>-->
-                <!-- 换肤组件 -->
-                <dui-skins :options="skinOption" :currentSkin="'theme-default'" isCookie></dui-skins>
-                <!-- 用户操作区域 -->
-                <div class="l-avatar-box">
-                    <i class="icon icon-user2"></i>
-                    <span class="l-avatar-box__user">{{ name }}</span>
-                    <i class="icon icon-close" title="退出登录" @click="logout"></i>
-                </div>
-            </div>
+  <div class="l-main-header" style="position: relative">
+    <div class="l-main-header__left">
+      <div class="l-main-header__box">
+        <img style="width: 40px; height: 40px" class="l-main-header__logo" src="@/assets/images/layout/logo.png" />
+      </div>
+      <p class="l-main-header__title">警务云统一授权管理中心</p>
+    </div>
+    <div class="l-main-header__center"></div>
+    <div class="l-main-header__right">
+      <div style="display: inline-block; vertical-align: top">
+        <!-- 用户操作区域 -->
+        <div class="l-avatar-box">
+          <i class="icon icon-user2"></i>
+          <span class="l-avatar-box__user">{{ name }}</span>
+          <i class="icon icon-close" title="退出登录" @click="logout"></i>
         </div>
+      </div>
     </div>
+  </div>
 </template>
 
 
 <script>
-import { mapGetters } from "vuex";
-import Breadcrumb from "@/components/layout/breadcrumb";
-import Screenfull from "@/components/layout/screenfull";
-import LangSelect from "@/components/layout/lang-select";
-import DuiSkins from "@/components/layout/skins/index";
-
+import { mapGetters } from 'vuex';
 export default {
-    data() {
-        return {
-            searchValue: "",
-            skinOption: [
-                {
-                    name: "浅色系",
-                    fileName: "theme-default",
-                    background: "#2991d9"
-                },
-                {
-                    name: "暗色系",
-                    fileName: "theme-black",
-                    background: "#222222"
-                }
-            ],
-            activeShow: false,
-            activeHide: false
-        };
+  data() {
+    return {
+      searchValue: '',
+      activeShow: false,
+      activeHide: false
+    };
+  },
+  components: {},
+  computed: {
+    ...mapGetters(['sidebar', 'name', 'avatar', 'device'])
+  },
+  methods: {
+    toggleSideBar() {
+      this.$store.dispatch('toggleSideBar');
     },
-    components: {
-        Breadcrumb,
-        Screenfull,
-        LangSelect,
-        DuiSkins
-    },
-    computed: {
-        ...mapGetters(["sidebar", "name", "avatar", "device"])
-    },
-    methods: {
-        toggleSideBar() {
-            this.$store.dispatch("toggleSideBar");
-        },
-        logout() {
-            this.$confirm("是否确定退出系统").then(() => {
-                if (process.env.NEED_LOGIN) {
-                   window.loginUtil.logout(this);
-                } else {
-                    window.location.href = `https://login.iam.com/apphub/logout`;
-                }
-            });
-        },
-        handleClickSearch() {
-            this.activeShow = true;
-            this.activeHide = false;
+    logout() {
+      this.$confirm('是否确定退出系统').then(() => {
+        if (process.env.NEED_LOGIN) {
+          window.loginUtil.logout(this);
+        } else {
+          window.location.href = `https://login.iam.com/apphub/logout`;
         }
+      });
     },
-    mounted() {
-        this.bodyListener = () => {
-            this.activeShow = false;
-            this.activeHide = true;
-        };
-        document.body.addEventListener("click", this.bodyListener, false);
-    },
-    beforeDestroy() {
-        //销毁body事件
-        document.body.removeEventListener("click", this.bodyListener);
+    handleClickSearch() {
+      this.activeShow = true;
+      this.activeHide = false;
     }
+  },
+  mounted() {
+    this.bodyListener = () => {
+      this.activeShow = false;
+      this.activeHide = true;
+    };
+    document.body.addEventListener('click', this.bodyListener, false);
+  },
+  beforeDestroy() {
+    document.body.removeEventListener('click', this.bodyListener);
+  }
 };
 </script>

+ 26 - 43
src/pages/list-manage/red-list-manage/component/app-func.vue

@@ -1,14 +1,7 @@
 <template>
   <div>
-    <!-- 筛选项 -->
-    <el-form ref="ruleForm" inline>
-      <el-form-item label="应用系统名称">
-        <el-input v-model="form.appName.value" placeholder="请输入应用系统名称" clearable></el-input>
-      </el-form-item>
-      <el-form-item>
-        <dg-button type="primary" @click="handleSearch" :icon="'查询' | optIcon">查询</dg-button>
-      </el-form-item>
-    </el-form>
+    <!-- 搜索栏 -->
+    <search-bar :conditionForm="conditionForm" @submitSearch="receiveSearch"></search-bar>
     <!-- 操作栏 -->
     <operate-bar :pageOptList="pageOptList" @submitPageOpt="receviceOpt"></operate-bar>
     <!-- 列表 -->
@@ -49,8 +42,8 @@
       <vxe-table-column align="center" title="操作" field="operate">
         <template #default="{ row }">
           <div class="u-table__operation">
-            <el-tooltip content="除" effect="dark" placement="top-end">
-              <i class="el-icon-remove-outline" @click="handleRemove(row)"></i>
+            <el-tooltip content="除" effect="dark" placement="top-end">
+              <i :class="'删除' | optIcon" @click="handleRemove(row)"></i>
             </el-tooltip>
           </div>
         </template>
@@ -79,26 +72,14 @@ import { getRedAppFuncList, delRedAppFunc } from '@/api/list-manage';
 import { allAppFuncTree } from '@/api/permission-selfhelp-manage';
 import jzApi from '@/api/jz-base';
 import operateBar from '@/components/operate-bar';
-
+import searchBar from '@/components/search-bar';
+import { searchOpt } from '@/mixins/page-opt';
 export default {
-  components: { operateBar },
+  components: { operateBar, searchBar },
+  mixins: [searchOpt],
   data() {
     return {
-      form: {
-        level: {
-          value: '',
-          op: '='
-        },
-        appCode: {
-          value: '',
-          op: 'like'
-        },
-        appName: {
-          value: '',
-          op: 'like'
-        }
-      },
-      pageOptList: ['批量添加', '批量设置名单级别', '批量移除'],
+      pageOptList: ['批量添加', '批量设置名单级别', '批量删除'],
       // 分页器
       currentPage: 1,
       total: 0,
@@ -114,7 +95,16 @@ export default {
           // 设置复选框支持分页勾选,需要设置 rowId 行数据主键
           reserve: true
         }
-      }
+      },
+      conditionForm: [
+        {
+          label: '应用系统名称',
+          name: 'appName',
+          op: 'like',
+          value: '',
+          component: 'ElInput'
+        }
+      ]
     };
   },
   methods: {
@@ -123,7 +113,7 @@ export default {
         this.handleAdd();
       } else if (type == '批量设置名单级别') {
         this.handleSetListLevel();
-      } else if (type == '批量除') {
+      } else if (type == '批量除') {
         this.handleBatchRemove();
       }
     },
@@ -136,20 +126,13 @@ export default {
     /**
      * @description:查询
      */
-    handleSearch() {
+    receiveSearch(value) {
+      this.condition = value;
       this.currentPage = 1;
       const selectedData = this.$refs.vxeGrid.getCheckboxRecords(true).filter((item) => !item.isTreeNode);
       this.$refs.vxeGrid.reloadData(selectedData);
       this.getList();
     },
-    /**
-     * 重置
-     */
-    handleReset() {
-      for (const key in this.form) {
-        this.form[key].value = '';
-      }
-    },
     // 打开弹窗
     openLayer(title, content, operate) {
       const vm = this;
@@ -208,7 +191,7 @@ export default {
       this.openLayer('批量设置红名单级别', batchSetLevelAppFunc, 'set');
     },
     /**
-     * 批量
+     * 批量
      */
     handleBatchRemove() {
       if (!this.verify()) return;
@@ -216,10 +199,10 @@ export default {
     },
 
     /**
-     * 单挑
+     * 单挑
      */
     handleRemove(row) {
-      this.$dgConfirm(`是否确认移除该条数据!`, '提示', {}).then(() => {
+      this.$dgConfirm(`是否确定删除这条数据!`, '提示', {}).then(() => {
         const params = {
           isTreeNode: row.isTreeNode,
           resourceId: row.id,
@@ -248,7 +231,7 @@ export default {
       const params = {
         page: this.currentPage,
         size: this.pageSize,
-        searchCondition: this.form
+        searchCondition: this.condition
       };
 
       getRedAppFuncList(params).then((res) => {

+ 17 - 5
src/pages/list-manage/red-list-manage/component/batch-add-appfunc.vue

@@ -6,11 +6,12 @@
 <template>
   <div>
     <el-form inline>
-      <el-form-item label="应用系统名称">
+      <el-form-item label="应用系统名称">
         <el-input v-model="appName" clearable></el-input>
       </el-form-item>
       <el-form-item>
-        <dg-button type="primary" @click="handleSearch" icon="el-icon-search">查询</dg-button>
+        <dg-button type="primary" @click="handleSearch" :icon="'查询' | optIcon">查询</dg-button>
+        <dg-button @click="handleReset" :icon="'重置' | optIcon">重置</dg-button>
       </el-form-item>
     </el-form>
     <!-- 表格树 -->
@@ -36,12 +37,18 @@
         </template>
       </vxe-table-column>
       <vxe-table-column type="seq" width="60" align="center" title="序号"></vxe-table-column>
-      <vxe-table-column align="left" header-align="center" title="应用功能名称" field="label" :treeNode="true"></vxe-table-column>
+      <vxe-table-column
+        align="left"
+        header-align="center"
+        title="应用功能名称"
+        field="label"
+        :treeNode="true"
+      ></vxe-table-column>
     </vxe-table>
 
     <div v-footer>
       <dg-button @click="handleCancel">取消</dg-button>
-      <dg-button type="primary" @click="handleSubmit">确定</dg-button>
+      <dg-button type="primary" @click="handleSubmit">保存</dg-button>
     </div>
   </div>
 </template>
@@ -86,6 +93,9 @@ export default {
     handleSearch() {
       this.dataSource = this.data.filter((item) => item.label.indexOf(this.appName) > -1);
     },
+    handleReset() {
+      this.appName = '';
+    },
     handleCancel() {
       this.$emit('close');
     },
@@ -94,7 +104,9 @@ export default {
       const checkboxRecords = this.$refs.vxeGrid.getCheckboxRecords(true);
       const checkboxReserveRecords = this.$refs.vxeGrid.getCheckboxReserveRecords(true);
       const indeterminateRecords = this.$refs.vxeGrid.getCheckboxIndeterminateRecords(true);
-      const totalRecords = [...checkboxRecords, ...checkboxReserveRecords, ...indeterminateRecords].filter((item) => item.appId);
+      const totalRecords = [...checkboxRecords, ...checkboxReserveRecords, ...indeterminateRecords].filter(
+        (item) => item.appId
+      );
       if (totalRecords.length > 0) {
         this.setLevel(totalRecords);
       } else {

+ 1 - 1
src/pages/list-manage/red-list-manage/component/batch-delete-appfunc.vue

@@ -5,7 +5,7 @@
 -->
 <template>
   <div>
-    <p>是否确定除以下应用功能红名单?</p>
+    <p>是否确定除以下应用功能红名单?</p>
     <p style="margin-top: 10px; margin-bottom: 5px">选中的应用功能列表:</p>
     <!-- 表格树 -->
     <vxe-grid v-bind="gridOptions" ref="vxeGrid" :data="targetData"></vxe-grid>

+ 1 - 1
src/pages/list-manage/red-list-manage/component/batch-setlevel-appfunc.vue

@@ -15,7 +15,7 @@
     <vxe-grid v-bind="gridOptions" ref="vxeGrid" :data="targetData"></vxe-grid>
     <div v-footer>
       <dg-button @click="handleCancel">取消</dg-button>
-      <dg-button type="primary" @click="handleSubmit">确定</dg-button>
+      <dg-button type="primary" @click="handleSubmit">保存</dg-button>
     </div>
   </div>
 </template>

+ 1 - 1
src/pages/list-manage/white-list-manage/component/batch-add-user.vue

@@ -14,7 +14,7 @@
     </dg-row>
     <div v-footer>
       <dg-button @click="handleCancel">取消</dg-button>
-      <dg-button type="primary" @click="handleSubmit">确定</dg-button>
+      <dg-button type="primary" @click="handleSubmit">保存</dg-button>
     </div>
   </div>
 </template>

+ 1 - 1
src/pages/list-manage/white-list-manage/component/batch-delete-user.vue

@@ -5,7 +5,7 @@
 -->
 <template>
   <div>
-    <p>是否确定除以下白名单人员?</p>
+    <p>是否确定除以下白名单人员?</p>
     <p style="margin-top: 10px; margin-bottom: 5px">选中的人员列表:</p>
     <!-- <new-table  paging-type="client" :data="selectedData" :tableHeader="tableHeader" :pagination-total="selectedData.length"></new-table> -->
      <dg-table

+ 1 - 1
src/pages/list-manage/white-list-manage/component/batch-setlevel-user.vue

@@ -24,7 +24,7 @@
     </dg-table>
     <div v-footer>
       <dg-button @click="handleCancel">取消</dg-button>
-      <dg-button type="primary" @click="handleSubmit">确定</dg-button>
+      <dg-button type="primary" @click="handleSubmit">保存</dg-button>
     </div>
   </div>
 </template>

+ 9 - 9
src/pages/list-manage/white-list-manage/component/user-list.vue

@@ -81,8 +81,8 @@ export default {
           placeholder: '请选择单位名称'
         }
       ],
-      pageOptList: ['批量添加', '批量设置名单级别', '批量除'],
-      tableOptList: ['除'],
+      pageOptList: ['批量添加', '批量设置名单级别', '批量除'],
+      tableOptList: ['除'],
       userListHeader: [
         {
           label: '姓名',
@@ -111,9 +111,9 @@ export default {
         this.handleAdd();
       } else if (type == '批量设置名单级别') {
         this.handleSetListLevel();
-      } else if (type == '批量除') {
+      } else if (type == '批量除') {
         this.handleBatchRemove();
-      } else if (type == '除') {
+      } else if (type == '除') {
         this.handleRemove(row);
       }
     },
@@ -170,26 +170,26 @@ export default {
       this.openLayer('批量设置白名单级别', batchSetlevelUser, 'set');
     },
     /**
-     * 
+     * 
      */
     handleRemove(row) {
-      this.$dgConfirm(`是否确认移除该白名单人员!`, '提示', {}).then(() => {
+      this.$dgConfirm(`是否确定删除这条数据!`, '提示', {}).then(() => {
         this.removeList([row]);
       });
     },
     /**
-     * 批量
+     * 批量
      */
     handleBatchRemove() {
       if (!this.verify()) return;
-      this.openLayer('批量除白名单人员', batchDeleteUser, 'del');
+      this.openLayer('批量除白名单人员', batchDeleteUser, 'del');
     },
     removeList(selectData) {
       const params = {
         listIds: selectData.map((item) => item.listId)
       };
       delWhiteList(params).then((res) => {
-        this.$message.success('除成功!');
+        this.$message.success('除成功!');
         this.handleSearch();
       });
     }

+ 8 - 4
src/pages/log-manage/DataConfig.js

@@ -103,22 +103,26 @@ const RiskDetectionPlan = [{
 // 鉴权预警信息
 const EarlyWarningInfo = [{
     label: "预警对象",
-    prop: "creater"
+    prop: "creater",
+    width: "250"
   },
   {
     label: "预警对象唯一标识",
-    prop: "createrId"
+    prop: "createrId",
+    width: "250"
   },
   {
     label: "预警类型",
     prop: "programmeType",
-    enum: "WarningProgrammeTypeEnum"
+    enum: "WarningProgrammeTypeEnum",
+    width: "250"
   },
   {
     label: "预警时间",
     prop: "createTime",
     timestamp: true,
-    dateFormat: "YYYY-MM-DD HH:mm:ss"
+    dateFormat: "YYYY-MM-DD HH:mm:ss",
+    width: "200"
   },
   {
     label: "预警信息",

+ 1 - 1
src/pages/log-manage/auth-risk-detection/detail.vue

@@ -77,7 +77,7 @@
                 </dg-col>
             </dg-row>
             <div class="dg-layer-demo" v-footer>
-                <dg-button @click="handleClose">取消</dg-button>
+                <dg-button @click="handleClose">关闭</dg-button>
             </div>
         </el-form>
     </div>

+ 1 - 1
src/pages/log-manage/auth-risk-detection/edit.vue

@@ -116,7 +116,7 @@
         </el-form>
         <div class="dg-layer-demo" v-footer>
             <dg-button @click="handleClose">取消</dg-button>
-            <dg-button type="primary" @click="handlSave">确定</dg-button>
+            <dg-button type="primary" @click="handlSave">保存</dg-button>
         </div>
     </div>
 </template>

+ 2 - 2
src/pages/log-manage/auth-risk-detection/index.vue

@@ -72,7 +72,7 @@ export default {
         .then((res) => {
           const formData = res;
           const layer = that.$dgLayer({
-            title: '修改风险检测方案',
+            title: '修改',
             shade: [0.4, '#FFF'],
             area: ['830px', '660px'],
             content: Editor,
@@ -98,7 +98,7 @@ export default {
       getAuthRiskDetail(id)
         .then((res) => {
           const layer = that.$dgLayer({
-            title: '风险检测方案详情',
+            title: '详情',
             shade: [0.4, '#FFF'],
             content: Detail,
             area: ['830px', '660px'],

+ 1 - 1
src/pages/log-manage/err-auth-earlywarning-manage/auth-earlywarning-info-detail.vue

@@ -53,7 +53,7 @@
                 </dg-col>
             </dg-row>
             <div class="dg-layer-demo" v-footer>
-                <dg-button @click="handleClose">取消</dg-button>
+                <dg-button @click="handleClose">关闭</dg-button>
             </div>
         </el-form>
     </div>

+ 6 - 2
src/pages/log-manage/err-auth-earlywarning-manage/auth-earlywarning-info.vue

@@ -1,3 +1,8 @@
+<!--
+鉴权预警信息
+@Author: linqian
+@Date: 2021-07-07
+-->
 <template>
   <main class="auth-earlywarning-plan">
     <!-- 搜索项 -->
@@ -8,7 +13,6 @@
       :tableHeader="EarlyWarningInfo"
       :condition="condition"
       :sortProps="sort"
-      :tableOptList="tableOptList"
       @submitTableOpt="receviceOpt"
     >
     </new-table>
@@ -65,7 +69,7 @@ export default {
       sort: {
         createTime: 'DESC'
       },
-      tableOptList: ['详情']
+      // tableOptList: ['详情']
     };
   },
   methods: {

+ 102 - 0
src/pages/log-manage/err-auth-earlywarning-manage/auth-earlywarning-plan-detail.vue

@@ -0,0 +1,102 @@
+<!--
+ * @Author: Liugh
+ * @Date: 2021-05-26 15:09:38
+ * @LastEditTime: 2021-05-27 17:28:32
+ * @LastEditors: Do not edit
+ * @FilePath: \auth-web\src\pages\log-manage\err-auth-earlywarning-manage\detail.vue
+ * @Description: 鉴权预警方案详情
+-->
+<template>
+  <main class="auth-earlywarning-plan-detail">
+    <el-form v-if="detailInfo.id" ref="ruleForm" :model="detailInfo" label-width="140px" label-suffix=":">
+      <el-row>
+        <el-col :span="item.span" v-for="(item, index) in earlyWarningPlanTableInfo" :key="index">
+          <el-form-item :label="item.label">
+            <template v-if="item.code">
+              <div class="u-detail__text" v-translate="{ code: item.code }">
+                {{ detailInfo[item.value] }}
+              </div>
+            </template>
+            <template v-else-if="item.enum">
+              <div class="u-detail__text" v-translate="{ enum: item.enum }">
+                {{ detailInfo[item.value] }}
+              </div>
+            </template>
+            <template v-else-if="item.value == 'ruleContent'">
+              <template v-if="detailInfo.type == 'YHYCIPJQYJ'">
+                <div class="u-detail__text">用户使用非常用的IP进行鉴权。</div>
+              </template>
+              <template v-else>
+                <div class="u-detail__text" v-for="(item, index) in detailInfo[item.value]" :key="index">
+                  用户在{{ item.time[0] }} - {{ item.time[1] }} 进行鉴权
+                </div>
+              </template>
+            </template>
+            <template v-else-if="item.isTime">
+              <div class="u-detail__text">
+                {{ detailInfo[item.value] | dateFormatter('YYYY-MM-DD HH:mm:ss') }}
+              </div>
+            </template>
+            <template v-else>
+              <div class="u-detail__text">
+                {{ detailInfo[item.value] }}
+              </div>
+            </template>
+          </el-form-item>
+        </el-col>
+      </el-row>
+    </el-form>
+    <div class="dg-layer-demo" v-footer>
+      <dg-button @click="handleClose">关闭</dg-button>
+    </div>
+  </main>
+</template>
+
+<script>
+import { earlyWarningPlanTableInfo } from '../DataConfig';
+import { warningProgrammeInfo } from '@/api/log-manage';
+export default {
+  name: 'auth-earlywarning-plan-detail', // 组件名称
+  props: {
+    // 接收父组件的数据
+    info: Object
+  },
+  data() {
+    // 组件内部参数
+    return {
+      earlyWarningPlanTableInfo,
+      detailInfo: {}
+    };
+  },
+  components: {}, // 注册局部组件
+  computed: {},
+  methods: {
+    handleClose() {
+      this.$emit('close');
+    },
+    countTime(val) {
+      return val >= 10 ? val + ':00' : '0' + val + ':00';
+    },
+    getDetail() {
+      return new Promise((resolve) => {
+        warningProgrammeInfo(this.info.id).then((res) => {
+          if (res.type !== 'YHYCIPJQYJ') {
+            res.ruleContent = res.ruleContent ? JSON.parse(res.ruleContent) || [] : [];
+            res.ruleContent.forEach((item) => {
+              item.time = [this.countTime(item.start), this.countTime(item.end)];
+              delete item.start;
+              delete item.end;
+            });
+          }
+          this.detailInfo = res;
+          resolve(res);
+        });
+      });
+    }
+  }, // 内部方法
+  async created() {
+    await this.getDetail();
+  }
+};
+</script>
+<style lang="scss" scoped></style>

+ 203 - 203
src/pages/log-manage/err-auth-earlywarning-manage/edit.vue → src/pages/log-manage/err-auth-earlywarning-manage/auth-earlywarning-plan-edit.vue

@@ -1,203 +1,203 @@
-<!--
- * @Author: Liugh
- * @Date: 2021-05-26 15:09:38
- * @LastEditTime: 2021-05-28 16:36:56
- * @LastEditors: Do not edit
- * @FilePath: \auth-web\src\pages\log-manage\err-auth-earlywarning-manage\edit.vue
- * @Description: 
--->
-<template>
-    <main class="auth-earlywarning-plan-edit">
-        <el-form ref="ruleForm" :model="form" label-width="140px" label-suffix=":">
-            <el-row>
-                <el-col :span="24">
-                    <el-form-item label="方案名称">
-                        {{ form.name }}
-                    </el-form-item>
-                </el-col>
-                <el-col :span="24">
-                    <el-form-item label="方案状态">
-                        <dg-select
-                            v-model="form.state"
-                            placeholder="请选择方案状态"
-                            enum="ProgrammeStateEnum"
-                            style="width: 100%"
-                            clearable
-                        >
-                        </dg-select>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="24">
-                    <el-form-item label="预警规则">
-                        <!--TODO 内嵌form  -->
-                        <!-- <el-input type="textarea" :rows="2" placeholder="请输入预警规则" v-model="form.textarea"></el-input> -->
-                       <template v-if="form.type == 'YHYCIPJQYJ'">
-                            用户使用非常用的IP进行鉴权。
-                       </template>
-                        <template v-else>
-                               <el-form-item v-for="(domain, index) in form.ruleContent" :key="index">
-                            <div class="time-picker-layer">
-                                用户在
-                                <dg-time-picker
-                                    v-model="domain.time"
-                                    type="timerange2"
-                                    :picker-options="pickerOptions"
-                                    begin-placeholder="开始时间"
-                                    end-placeholder="结束时间"
-                                >
-                                </dg-time-picker>
-                                进行鉴权
-                                <div class="time-picker-layer_button">
-                                    <dg-button circle @click.prevent="addDomain" size="mini">
-                                        <i class="el-icon-plus"></i>
-                                    </dg-button>
-                                    <dg-button circle @click.prevent="removeDomain(domain)" size="mini">
-                                        <i class="el-icon-minus"></i>
-                                    </dg-button>
-                                </div>
-                            </div>
-                        </el-form-item>
-                        </template>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="24">
-                    <el-form-item label="规则说明">
-                        {{ form.ruleExplain }}
-                    </el-form-item>
-                </el-col>
-                <el-col :span="24">
-                    <el-form-item label="预警信息格式">
-                        {{ form.contentFormat }}
-                    </el-form-item>
-                </el-col>
-                <!-- <el-col :span="item.span" v-for="(item, index) in earlyWarningPlanTableInfo" :key="index"> -->
-                <!-- <el-form-item :label="item.label">{{ detailInfo[item.value] }} </el-form-item> -->
-                <!-- </el-col> -->
-            </el-row>
-            <div v-footer>
-                <el-button type="primary" @click="onSubmit">保存</el-button>
-                <el-button @click="close">取消</el-button>
-            </div>
-        </el-form>
-    </main>
-</template>
-
-<script>
-import { earlyWarningPlanTableInfo } from "../DataConfig";
-import { riskProgramme, warningProgrammeInfo } from "@/api/log-manage";
-
-export default {
-    name: "auth-earlywarning-plan-edit", // 组件名称
-    props: {
-        // 接收父组件的数据
-        info: Object
-    },
-    data() {
-        // 组件内部参数
-        return {
-            earlyWarningPlanTableInfo,
-            pickerOptions: {
-                start: "00:00",
-                step: "01:00",
-                end: "23:00"
-            },
-            form: {
-                ruleContent: [
-                    {
-                        time: ""
-                    }
-                ]
-            }
-        };
-    },
-    components: {}, // 注册局部组件
-    computed: {},
-    methods: {
-        /**
-         * @description: 关闭
-         */
-        close() {
-            this.$emit("close");
-        },
-        /**
-         * @description: 提交
-         */
-        onSubmit() {
-            let obj = JSON.parse(JSON.stringify(this.form));
-            obj.ruleContent.forEach((item) => {
-                item.start = parseInt(item.time[0]);
-                item.end = parseInt(item.time[1]);
-                delete item.time;
-            });
-            obj.ruleContent = JSON.stringify(obj.ruleContent);
-            riskProgramme(obj).then((res) => {
-                this.$message.success("操作成功");
-                this.$emit("success");
-            });
-        },
-        /**
-         * @description:添加规则
-         * @param {*}
-         * @return {*}
-         */
-        addDomain() {
-            this.form.ruleContent.push({
-                time: ""
-            });
-        },
-        /**
-         * @description:移除规则
-         * @param {*} item
-         * @return {*}
-         */
-        removeDomain(item) {
-            if (this.form.ruleContent.length <= 1) return;
-            var index = this.form.ruleContent.indexOf(item);
-            if (index !== -1) {
-                this.form.ruleContent.splice(index, 1);
-            }
-        },
-        countTime(val) {
-            return val >= 10 ? val + ":00" : "0" + val + ":00";
-        },
-        /**
-         * @description: 获取详情
-         */
-        getDetail() {
-            return new Promise((resolve) => {
-                warningProgrammeInfo(this.info.id).then((res) => {
-                    res.ruleContent = res.ruleContent ? JSON.parse(res.ruleContent) : [];
-                    res.ruleContent.forEach((item) => {
-                        item.time = [this.countTime(item.start), this.countTime(item.end)];
-                        delete item.start;
-                        delete item.end;
-                    });
-                    this.form = res;
-                    console.log(this.form);
-                    resolve(res);
-                });
-            });
-        }
-    }, // 内部方法
-    async created() {
-        await this.getDetail();
-    }
-};
-</script>
-<style lang="scss">
-.auth-earlywarning-plan-edit-layer {
-    .time-picker-layer {
-        display: flex;
-        // align-items: center;
-        margin-bottom: 0.75rem;
-        &_button {
-            margin-left: 0.9375rem;
-        }
-    }
-    .dg-range-editor {
-        margin: 0 0.9375rem;
-        display: flex;
-        // align-items: center;
-    }
-}
-</style>
+<!--
+ * @Author: Liugh
+ * @Date: 2021-05-26 15:09:38
+ * @LastEditTime: 2021-05-28 16:36:56
+ * @LastEditors: Do not edit
+ * @FilePath: \auth-web\src\pages\log-manage\err-auth-earlywarning-manage\edit.vue
+ * @Description: 
+-->
+<template>
+    <main class="auth-earlywarning-plan-edit">
+        <el-form ref="ruleForm" :model="form" label-width="140px" label-suffix=":">
+            <el-row>
+                <el-col :span="24">
+                    <el-form-item label="方案名称">
+                        {{ form.name }}
+                    </el-form-item>
+                </el-col>
+                <el-col :span="24">
+                    <el-form-item label="方案状态">
+                        <dg-select
+                            v-model="form.state"
+                            placeholder="请选择方案状态"
+                            enum="ProgrammeStateEnum"
+                            style="width: 100%"
+                            clearable
+                        >
+                        </dg-select>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="24">
+                    <el-form-item label="预警规则">
+                        <!--TODO 内嵌form  -->
+                        <!-- <el-input type="textarea" :rows="2" placeholder="请输入预警规则" v-model="form.textarea"></el-input> -->
+                       <template v-if="form.type == 'YHYCIPJQYJ'">
+                            用户使用非常用的IP进行鉴权。
+                       </template>
+                        <template v-else>
+                               <el-form-item v-for="(domain, index) in form.ruleContent" :key="index">
+                            <div class="time-picker-layer">
+                                用户在
+                                <dg-time-picker
+                                    v-model="domain.time"
+                                    type="timerange2"
+                                    :picker-options="pickerOptions"
+                                    begin-placeholder="开始时间"
+                                    end-placeholder="结束时间"
+                                >
+                                </dg-time-picker>
+                                进行鉴权
+                                <div class="time-picker-layer_button">
+                                    <dg-button circle @click.prevent="addDomain" size="mini">
+                                        <i class="el-icon-plus"></i>
+                                    </dg-button>
+                                    <dg-button circle @click.prevent="removeDomain(domain)" size="mini">
+                                        <i class="el-icon-minus"></i>
+                                    </dg-button>
+                                </div>
+                            </div>
+                        </el-form-item>
+                        </template>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="24">
+                    <el-form-item label="规则说明">
+                        {{ form.ruleExplain }}
+                    </el-form-item>
+                </el-col>
+                <el-col :span="24">
+                    <el-form-item label="预警信息格式">
+                        {{ form.contentFormat }}
+                    </el-form-item>
+                </el-col>
+                <!-- <el-col :span="item.span" v-for="(item, index) in earlyWarningPlanTableInfo" :key="index"> -->
+                <!-- <el-form-item :label="item.label">{{ detailInfo[item.value] }} </el-form-item> -->
+                <!-- </el-col> -->
+            </el-row>
+            <div v-footer>
+                <el-button @click="close">取消</el-button>
+                <el-button type="primary" @click="onSubmit">保存</el-button>
+            </div>
+        </el-form>
+    </main>
+</template>
+
+<script>
+import { earlyWarningPlanTableInfo } from "../DataConfig";
+import { riskProgramme, warningProgrammeInfo } from "@/api/log-manage";
+
+export default {
+    name: "auth-earlywarning-plan-edit", // 组件名称
+    props: {
+        // 接收父组件的数据
+        info: Object
+    },
+    data() {
+        // 组件内部参数
+        return {
+            earlyWarningPlanTableInfo,
+            pickerOptions: {
+                start: "00:00",
+                step: "01:00",
+                end: "23:00"
+            },
+            form: {
+                ruleContent: [
+                    {
+                        time: ""
+                    }
+                ]
+            }
+        };
+    },
+    components: {}, // 注册局部组件
+    computed: {},
+    methods: {
+        /**
+         * @description: 关闭
+         */
+        close() {
+            this.$emit("close");
+        },
+        /**
+         * @description: 提交
+         */
+        onSubmit() {
+            let obj = JSON.parse(JSON.stringify(this.form));
+            obj.ruleContent.forEach((item) => {
+                item.start = parseInt(item.time[0]);
+                item.end = parseInt(item.time[1]);
+                delete item.time;
+            });
+            obj.ruleContent = JSON.stringify(obj.ruleContent);
+            riskProgramme(obj).then((res) => {
+                this.$message.success("操作成功");
+                this.$emit("success");
+            });
+        },
+        /**
+         * @description:添加规则
+         * @param {*}
+         * @return {*}
+         */
+        addDomain() {
+            this.form.ruleContent.push({
+                time: ""
+            });
+        },
+        /**
+         * @description:移除规则
+         * @param {*} item
+         * @return {*}
+         */
+        removeDomain(item) {
+            if (this.form.ruleContent.length <= 1) return;
+            var index = this.form.ruleContent.indexOf(item);
+            if (index !== -1) {
+                this.form.ruleContent.splice(index, 1);
+            }
+        },
+        countTime(val) {
+            return val >= 10 ? val + ":00" : "0" + val + ":00";
+        },
+        /**
+         * @description: 获取详情
+         */
+        getDetail() {
+            return new Promise((resolve) => {
+                warningProgrammeInfo(this.info.id).then((res) => {
+                    res.ruleContent = res.ruleContent ? JSON.parse(res.ruleContent) : [];
+                    res.ruleContent.forEach((item) => {
+                        item.time = [this.countTime(item.start), this.countTime(item.end)];
+                        delete item.start;
+                        delete item.end;
+                    });
+                    this.form = res;
+                    console.log(this.form);
+                    resolve(res);
+                });
+            });
+        }
+    }, // 内部方法
+    async created() {
+        await this.getDetail();
+    }
+};
+</script>
+<style lang="scss">
+.auth-earlywarning-plan-edit-layer {
+    .time-picker-layer {
+        display: flex;
+        // align-items: center;
+        margin-bottom: 0.75rem;
+        &_button {
+            margin-left: 0.9375rem;
+        }
+    }
+    .dg-range-editor {
+        margin: 0 0.9375rem;
+        display: flex;
+        // align-items: center;
+    }
+}
+</style>

+ 4 - 4
src/pages/log-manage/err-auth-earlywarning-manage/auth-earlywarning-plan.vue

@@ -27,8 +27,8 @@
 import newTable from '@/pages/common/new-table';
 import { earlyWarningPlanTable } from '../DataConfig';
 import { warningProgrammeTableUrl } from '@/api/log-manage';
-import detail from './detail';
-import edit from './edit';
+import detail from './auth-earlywarning-plan-detail';
+import edit from './auth-earlywarning-plan-edit';
 import searchBar from '@/components/search-bar';
 import { searchOpt } from '@/mixins/page-opt';
 export default {
@@ -93,7 +93,7 @@ export default {
             layer.close(layer.dialogIndex);
           }
         },
-        area: ['900px', '500px']
+        area: ['900px', '600px']
       });
     },
     /**
@@ -112,7 +112,7 @@ export default {
             layer.close(layer.dialogIndex);
           }
         },
-        area: ['900px', '500px']
+        area: ['900px', '600px']
       });
     }
   }

+ 0 - 100
src/pages/log-manage/err-auth-earlywarning-manage/detail.vue

@@ -1,100 +0,0 @@
-<!--
- * @Author: Liugh
- * @Date: 2021-05-26 15:09:38
- * @LastEditTime: 2021-05-27 17:28:32
- * @LastEditors: Do not edit
- * @FilePath: \auth-web\src\pages\log-manage\err-auth-earlywarning-manage\detail.vue
- * @Description: 
--->
-<template>
-    <main class="auth-earlywarning-plan-detail">
-        <el-form v-if="detailInfo.id" ref="ruleForm" :model="detailInfo" label-width="140px" label-suffix=":">
-            <el-row>
-                <el-col :span="item.span" v-for="(item, index) in earlyWarningPlanTableInfo" :key="index">
-                    <el-form-item :label="item.label">
-                        <template v-if="item.code">
-                            <div class="u-detail__text" v-translate="{ code: item.code }">
-                                {{ detailInfo[item.value] }}
-                            </div>
-                        </template>
-                        <template v-else-if="item.enum">
-                            <div class="u-detail__text" v-translate="{ enum: item.enum }">
-                                {{ detailInfo[item.value] }}
-                            </div>
-                        </template>
-                        <template v-else-if="item.value == 'ruleContent'">
-                            <template v-if="detailInfo.type == 'YHYCIPJQYJ'">
-                                <div class="u-detail__text">用户使用非常用的IP进行鉴权。</div>
-                            </template>
-                            <template v-else>
-                                <div
-                                    class="u-detail__text"
-                                    v-for="(item, index) in detailInfo[item.value]"
-                                    :key="index"
-                                >
-                                    用户在{{ item.time[0] }} - {{ item.time[1] }} 进行鉴权
-                                </div>
-                            </template>
-                        </template>
-                        <template v-else-if="item.isTime">
-                            <div class="u-detail__text">
-                                {{ detailInfo[item.value] | dateFormatter("YYYY-MM-DD HH:mm:ss") }}
-                            </div>
-                        </template>
-                        <template v-else>
-                            <div class="u-detail__text">
-                                {{ detailInfo[item.value] }}
-                            </div>
-                        </template>
-                    </el-form-item>
-                </el-col>
-            </el-row>
-        </el-form>
-    </main>
-</template>
-
-<script>
-import { earlyWarningPlanTableInfo } from "../DataConfig";
-import { warningProgrammeInfo } from "@/api/log-manage";
-export default {
-    name: "auth-earlywarning-plan-detail", // 组件名称
-    props: {
-        // 接收父组件的数据
-        info: Object
-    },
-    data() {
-        // 组件内部参数
-        return {
-            earlyWarningPlanTableInfo,
-            detailInfo: {}
-        };
-    },
-    components: {}, // 注册局部组件
-    computed: {},
-    methods: {
-        countTime(val) {
-            return val >= 10 ? val + ":00" : "0" + val + ":00";
-        },
-        getDetail() {
-            return new Promise((resolve) => {
-                warningProgrammeInfo(this.info.id).then((res) => {
-                    if (res.type !== "YHYCIPJQYJ") {
-                        res.ruleContent = res.ruleContent ? JSON.parse(res.ruleContent) || [] : [];
-                        res.ruleContent.forEach((item) => {
-                            item.time = [this.countTime(item.start), this.countTime(item.end)];
-                            delete item.start;
-                            delete item.end;
-                        });
-                    }
-                    this.detailInfo = res;
-                    resolve(res);
-                });
-            });
-        }
-    }, // 内部方法
-    async created() {
-        await this.getDetail();
-    }
-};
-</script>
-<style lang="scss" scoped></style>

+ 2 - 5
src/pages/log-manage/permiss-log-manage/DataConfig.js

@@ -70,10 +70,6 @@ export const authServiceLogTableHeader = [
         label: "终端标识",
         prop: "terminalId"
     },
-    {
-        label: "鉴权令牌",
-        prop: "tokens"
-    },
     {
         label: "鉴权类型",
         prop: "authenticationType",
@@ -82,7 +78,8 @@ export const authServiceLogTableHeader = [
     {
         label: "鉴权结果",
         prop: "state",
-        enum: "AuthResultEnum"
+        enum: "AuthResultEnum",
+        width: "150"
     }
 ];
 

+ 8 - 11
src/pages/log-manage/permiss-log-manage/auth-manage-log.vue

@@ -15,16 +15,9 @@
       :condition="condition"
       :sortProps="sort"
       :lazyLoad="true"
+      :tableOptList="tableOptList"
+      @submitTableOpt="receiveOpt"
     >
-      <dg-table-column label="操作" align="center">
-        <template slot-scope="scope">
-          <div class="u-table__operation">
-            <el-tooltip content="详情" effect="dark" placement="top-end">
-              <i class="el-icon-document" @click="handleViewDetail(scope.row)"></i>
-            </el-tooltip>
-          </div>
-        </template>
-      </dg-table-column>
     </new-table>
   </div>
 </template>
@@ -63,7 +56,7 @@ export default {
           type: 'DATE',
           value: '',
           valueFormat: 'yyyyMMddHHmmss',
-          component: 'DgDatePicker',
+          component: 'DgDatePicker'
         },
         {
           label: '权限处理者',
@@ -74,11 +67,15 @@ export default {
       ],
       sort: {
         createTime: 'DESC'
-      }
+      },
+      tableOptList: ['详情']
     };
   },
   computed: {},
   methods: {
+    receiveOpt(opt, row) {
+      this.handleViewDetail(row);
+    },
     /**
      *  详情
      */

+ 2 - 1
src/pages/log-manage/permiss-log-manage/auth-service-log.vue

@@ -17,6 +17,7 @@
       :sortProps="sort"
       :lazyLoad="true"
       :tableOptList="tableOptList"
+      optColumnWidth="100"
       @submitTableOpt="receviceOpt"
     >
     </new-table>
@@ -98,7 +99,7 @@ export default {
       const otherParams = {
         config: authServiceLogDetail,
         labelWidth: '140px',
-        area: ['800px', '500px']
+        area: ['800px', '600px']
       };
       this.handleViewDetail(row.id, otherParams);
     },

+ 74 - 67
src/pages/log-manage/permiss-log-manage/log-detail/auth-manage.vue

@@ -4,79 +4,86 @@
 @Date: 2021-05-27 15:10
 -->
 <template>
-    <div>
-        <el-form v-if="detailInfo.id" label-width="120px" label-suffix=":">
-            <el-form-item label="授权管理类型">
-                <div class="u-detail__text" v-translate="{ enum: 'AuthorizeTypeEnum' }">
-                    {{ detailInfo.authorizeType }}
-                </div>
-            </el-form-item>
-            <el-form-item label="权限处理时间">
-                <p>{{ detailInfo.createTime | dateFormatter("YYYY-MM-DD HH:mm:ss") }}</p>
-            </el-form-item>
-            <el-form-item label="状态">
-                <div class="u-detail__text" v-translate="{ enum: 'AuthResultEnum' }">
-                    {{ detailInfo.state }}
-                </div>
-            </el-form-item>
+  <div>
+    <el-form v-if="detailInfo.id" label-width="120px" label-suffix=":">
+      <dg-row>
+        <dg-col :span="12">
+          <el-form-item label="授权管理类型">
+            <div class="u-detail__text" v-translate="{ enum: 'AuthorizeTypeEnum' }">
+              {{ detailInfo.authorizeType }}
+            </div>
+          </el-form-item>
+          <el-form-item label="权限处理时间">
+            <p>{{ detailInfo.createTime | dateFormatter('YYYY-MM-DD HH:mm:ss') }}</p>
+          </el-form-item>
+        </dg-col>
+        <dg-col :span="12">
+          <el-form-item label="状态">
+            <div class="u-detail__text" v-translate="{ enum: 'AuthResultEnum' }">
+              {{ detailInfo.state }}
+            </div>
+          </el-form-item>
+          <!-- 接口没有的字段,假假的显示在页面 -->
+          <el-form-item label="操作内容"> </el-form-item>
+        </dg-col>
+      </dg-row>
 
-            <el-form-item label="操作内容"> -- </el-form-item>
-            <dg-row zebra="16px">
-                <dg-table :data="detailInfo.handlers" paging-type="client" :pagination-props="paginationProps">
-                    <dg-table-column prop="handlerName" label="权限处理者"></dg-table-column>
-                    <dg-table-column prop="handlerIdcard" label="权限处理者身份证号码"></dg-table-column>
-                </dg-table>
-            </dg-row>
-            <dg-row zebra="16px">
-                <dg-table :data="detailInfo.subjects" paging-type="client" :pagination-props="paginationProps">
-                    <dg-table-column prop="subjectName" label="权限处理主体"></dg-table-column>
-                    <dg-table-column prop="subjectId" label="权限处理主体ID"></dg-table-column>
-                </dg-table>
-            </dg-row>
-            <dg-row zebra="16px">
-                <dg-table :data="detailInfo.objects" paging-type="client" :pagination-props="paginationProps">
-                    <dg-table-column prop="objectName" label="授权管理客体"></dg-table-column>
-                    <dg-table-column prop="objectId" label="授权管理客体ID"></dg-table-column>
-                </dg-table>
-            </dg-row>
-        </el-form>
-        <!-- <div v-footer>
-            <dg-button @click="handleClose">关闭</dg-button>
-        </div> -->
+      <dg-row zebra="16px">
+        <dg-table :data="detailInfo.handlers" paging-type="client" :pagination-props="paginationProps">
+          <dg-table-column prop="handlerName" label="权限处理者"></dg-table-column>
+          <dg-table-column prop="handlerIdcard" label="权限处理者身份证号码"></dg-table-column>
+        </dg-table>
+      </dg-row>
+      <dg-row zebra="16px">
+        <dg-table :data="detailInfo.subjects" paging-type="client" :pagination-props="paginationProps">
+          <dg-table-column prop="subjectName" label="权限处理主体"></dg-table-column>
+          <dg-table-column prop="subjectId" label="权限处理主体ID"></dg-table-column>
+        </dg-table>
+      </dg-row>
+      <dg-row zebra="16px">
+        <dg-table :data="detailInfo.objects" paging-type="client" :pagination-props="paginationProps">
+          <dg-table-column prop="objectName" label="授权管理客体"></dg-table-column>
+          <dg-table-column prop="objectId" label="授权管理客体ID"></dg-table-column>
+        </dg-table>
+      </dg-row>
+    </el-form>
+    <div v-footer>
+      <dg-button @click="handleClose">关闭</dg-button>
     </div>
+  </div>
 </template>
 
 <script>
-import { getAuthManageLogDetail } from "@/api/permiss-log-manage";
+import { getAuthManageLogDetail } from '@/api/permiss-log-manage';
 export default {
-    props: {
-        id: [String, Number]
-    },
-    components: {},
-    data() {
-        return {
-            detailInfo: {},
-            value: "",
-            paginationProps: {
-                currentPage: 1,
-                pageSizes: [10, 20],
-                pageSize: 5,
-                layout: "total, prev, pager, next, jumper"
-            }
-        };
-    },
-    computed: {},
-    methods: {
-        handleClose() {
-            this.$emit("close");
-        }
-    },
-    created() {
-        getAuthManageLogDetail(this.id).then((res) => {
-            this.detailInfo = res.data.content;
-        });
-    },
-    mounted() {}
+  props: {
+    id: [String, Number]
+  },
+  components: {},
+  data() {
+    return {
+      detailInfo: {},
+      value: '',
+      paginationProps: {
+        currentPage: 1,
+        pageSizes: [10, 20],
+        pageSize: 5,
+        layout: 'total, prev, pager, next, jumper'
+      }
+    };
+  },
+  computed: {},
+  methods: {
+    handleClose() {
+      this.$emit('close');
+    }
+  },
+  created() {
+    getAuthManageLogDetail(this.id).then((res) => {
+      this.detailInfo = res.data.content;
+    });
+  },
+  mounted() {}
 };
 </script>
 

+ 2 - 2
src/pages/permission-selfhelp-manage/index.vue

@@ -135,7 +135,7 @@ export default {
       });
     },
     handleDelete(row) {
-      this.$dgConfirm(`是否确认删除该条流程!`, '提示', {}).then(() => {
+      this.$dgConfirm(`是否确定删除这条数据!`, '提示', {}).then(() => {
         delApply({
           applyOrdNo: row.applyOrdNo
         }).then((res) => {
@@ -150,7 +150,7 @@ export default {
       });
     },
     handleRecall(row) {
-      this.$dgConfirm(`是否确认撤回该条流程!`, '提示', {}).then(() => {
+      this.$dgConfirm(`是否确定撤回这条数据!`, '提示', {}).then(() => {
         const params = {
           applyOrdNo: row.applyOrdNo
         };

+ 1 - 1
src/pages/user-manage/police-manage/index.vue

@@ -341,7 +341,7 @@ export default {
         // 删除
         handleDelete({ id, name }) {
             const that = this;
-            that.$confirm(`是否删除警员[${name}]?`, "确认信息", {
+            that.$confirm(`是否删除警员[${name}]?`, "提示", {
                 distinguishCancelAndClose: true,
                 confirmButtonText: "确定",
                 cancelButtonText: "取消"

+ 103 - 104
src/router/modules/data-auth-module.js

@@ -3,116 +3,115 @@
  * @Author: linqian
  * @Date:   2020-03-31 16:20
  */
-import Layout from "@/pages/layout/layout";
-import common from "@/pages/common";
+import Layout from '@/pages/layout/layout';
+import common from '@/pages/common';
 
 const componentsRouter = [
-    {
-        path: "/auth-subject-manage",
-        component: Layout,
-        redirect: "/auth-subject-manage",
+  {
+    path: '/auth-subject-manage',
+    component: Layout,
+    redirect: '/auth-subject-manage',
+    alwaysShow: true,
+    meta: { title: '授权主体管理', icon: 'el-icon-goods', noCache: true, permission: ['QXGL_SQGL_ZTGL'] },
+    children: [
+      {
+        path: 'user-prop-manage',
+        component: () => import('@/pages/data-auth-module/auth-subject-manage/user-prop-manage'),
+        name: 'user-prop-manage',
+        meta: { title: '用户属性管理', noCache: false, permission: ['QXGL_SQGL_ZTGL_YHSXGL'] }
+      },
+      {
+        path: 'org-prop-manage',
+        component: () => import('@/pages/data-auth-module/auth-subject-manage/org-prop-manage'),
+        name: 'org-prop-manage',
+        meta: { title: '机构属性管理', noCache: false, permission: ['QXGL_SQGL_ZTGL_JGSXGL'] }
+      },
+      {
+        path: 'app-prop-manage',
+        component: () => import('@/pages/data-auth-module/auth-subject-manage/app-prop-manage'),
+        name: 'app-prop-manage',
+        meta: { title: '应用属性管理', noCache: false, permission: ['QXGL_SQGL_ZTGL_YYSXGL'] }
+      },
+      {
+        path: 'subject-prop-manage',
+        component: () => import('@/pages/data-auth-module/auth-subject-manage/subject-prop-manage'),
+        name: 'subject-prop-manage',
+        meta: { title: '主体属性类管理', noCache: false, permission: ['QXGL_SQGL_ZTGL_ZTSXLGL'] }
+      }
+    ]
+  },
+  {
+    path: '/auth-object-manage',
+    component: Layout,
+    redirect: '/auth-object-manage',
+    alwaysShow: true,
+    meta: { title: '授权客体管理', icon: 'el-icon-goods', noCache: true, permission: ['QXGL_SQGL_KTGL'] },
+    children: [
+      {
+        path: 'sort-code-manage',
+        component: () => import('@/pages/data-auth-module/auth-object-manage/sort-code-manage'),
+        name: 'sort-code-manage',
+        meta: { title: '数据分级分类表码', noCache: false, permission: ['QXGL_SQGL_KTGL_SJFJFLBM'] }
+      },
+      {
+        path: 'appfun-resource-manage',
+        component: () => import('@/pages/data-auth-module/auth-object-manage/appfun-resource-manage'),
+        name: 'appfun-resource-manage',
+        meta: {
+          title: '应用功能资源管理',
+          noCache: false,
+          permission: ['QXGL_SQGL_KTGL_YYGNGL']
+        }
+      },
+      {
+        path: 'service-resource-manage',
+        component: () => import('@/pages/data-auth-module/auth-object-manage/service-resource-manage'),
+        name: 'service-resource-manage',
+        meta: { title: '服务资源管理', noCache: false, permission: ['QXGL_SQGL_KTGL_FWZYGL'] }
+      },
+      {
+        path: 'object-prop-manage',
+        component: () => import('@/pages/data-auth-module/auth-object-manage/object-prop-manage'),
+        name: 'object-prop-manage',
+        meta: { title: '客体属性类管理', noCache: false, permission: ['QXGL_SQGL_ZTGL_KTSXLGL'], layout: 'page' }
+      }
+    ]
+  },
+  {
+    path: '/data-permission',
+    component: Layout,
+    redirect: '/data-permission',
+    alwaysShow: true,
+    meta: { title: '授权查询', icon: 'el-icon-goods', noCache: true, permission: ['QXGL_SQCX'] },
+    children: [
+      {
+        path: 'data-auth-search',
+        component: common,
+        name: 'common',
+        meta: { title: '数据授权查询', noCache: false, permission: ['QXGL_SQCX_SJSQCX'] },
         alwaysShow: true,
-        meta: { title: "授权主体管理", icon: "el-icon-goods", noCache: true, permission: ["QXGL_SQGL_ZTGL"] },
         children: [
-            {
-                path: "user-prop-manage",
-                component: () => import("@/pages/data-auth-module/auth-subject-manage/user-prop-manage"),
-                name: "user-prop-manage",
-                meta: { title: "用户属性管理", noCache: false, permission: ["QXGL_SQGL_ZTGL_YHSXGL"] }
-            },
-            {
-                path: "org-prop-manage",
-                component: () => import("@/pages/data-auth-module/auth-subject-manage/org-prop-manage"),
-                name: "org-prop-manage",
-                meta: { title: "机构属性管理", noCache: false, permission: ["QXGL_SQGL_ZTGL_JGSXGL"] }
-            },
-            {
-                path: "app-prop-manage",
-                component: () => import("@/pages/data-auth-module/auth-subject-manage/app-prop-manage"),
-                name: "app-prop-manage",
-                meta: { title: "应用属性管理", noCache: false, permission: ["QXGL_SQGL_ZTGL_YYSXGL"] }
-            },
-            {
-                path: "subject-prop-manage",
-                component: () => import("@/pages/data-auth-module/auth-subject-manage/subject-prop-manage"),
-                name: "subject-prop-manage",
-                meta: { title: "主体属性类管理", noCache: false, permission: ["QXGL_SQGL_ZTGL_ZTSXLGL"] }
+          {
+            path: 'person-view',
+            component: () => import('@/pages/data-auth-module/data-permission-manage/data-auth-search/person-view.vue'),
+            name: 'person-view',
+            meta: {
+              title: '人员视角',
+              noCache: false,
+              permission: ['QXGL_SQCX_SJSQCX_RYSJ'],
+              layout: 'page'
             }
+          }
+          // {
+          //     path: "data-view",
+          //     component: () => import("@/pages/data-auth-module/data-permission-manage/data-auth-search/data-view.vue"),
+          //     name: "data-view",
+          //     meta: { title: "数据视角", noCache: false, permission: ["YHGLPT_YYGL_CSGL"] }
+          // }
         ]
-    },
-    {
-        path: "/auth-object-manage",
-        component: Layout,
-        redirect: "/auth-object-manage",
-        alwaysShow: true,
-        meta: { title: "授权客体管理", icon: "el-icon-goods", noCache: true, permission: ["QXGL_SQGL_KTGL"] },
-        children: [
-            {
-                path: "sort-code-manage",
-                component: () => import("@/pages/data-auth-module/auth-object-manage/sort-code-manage"),
-                name: "sort-code-manage",
-                meta: { title: "数据分级分类表码", noCache: false, permission: ["QXGL_SQGL_KTGL_SJFJFLBM"] }
-            },
-            {
-                path: "appfun-resource-manage",
-                component: () => import("@/pages/data-auth-module/auth-object-manage/appfun-resource-manage"),
-                name: "appfun-resource-manage",
-                meta: {
-                    title: "应用功能资源管理",
-                    noCache: false,
-                    permission: ["QXGL_SQGL_KTGL_YYGNGL"]
-                }
-            },
-            {
-                path: "service-resource-manage",
-                component: () => import("@/pages/data-auth-module/auth-object-manage/service-resource-manage"),
-                name: "service-resource-manage",
-                meta: { title: "服务资源管理", noCache: false, permission: ["QXGL_SQGL_KTGL_FWZYGL"] }
-            },
-            {
-                path: "object-prop-manage",
-                component: () => import("@/pages/data-auth-module/auth-object-manage/object-prop-manage"),
-                name: "object-prop-manage",
-                meta: { title: "客体属性类管理", noCache: false, permission: ["QXGL_SQGL_ZTGL_KTSXLGL"] }
-            }
-        ]
-    },
-    {
-        path: "/data-permission",
-        component: Layout,
-        redirect: "/data-permission",
-        alwaysShow: true,
-        meta: { title: "授权查询", icon: "el-icon-goods", noCache: true, permission: ["QXGL_SQCX"] },
-        children: [
-            {
-                path: "data-auth-search",
-                component: common,
-                name: "common",
-                meta: { title: "数据授权查询", noCache: false, permission: ["QXGL_SQCX_SJSQCX"] },
-                alwaysShow: true,
-                children: [
-                    {
-                        path: "person-view",
-                        component: () =>
-                            import("@/pages/data-auth-module/data-permission-manage/data-auth-search/person-view.vue"),
-                        name: "person-view",
-                        meta: {
-                            title: "人员视角",
-                            noCache: false,
-                            permission: ["QXGL_SQCX_SJSQCX_RYSJ"],
-                            layout: "page"
-                        }
-                    }
-                    // {
-                    //     path: "data-view",
-                    //     component: () => import("@/pages/data-auth-module/data-permission-manage/data-auth-search/data-view.vue"),
-                    //     name: "data-view",
-                    //     meta: { title: "数据视角", noCache: false, permission: ["YHGLPT_YYGL_CSGL"] }
-                    // }
-                ]
-            }
-        ]
-    }
+      }
+    ]
+  }
 ];
 
 export default componentsRouter;

+ 2 - 2
static/themes/style/theme-default.css

@@ -18209,7 +18209,7 @@ video::-webkit-media-text-track-display {
     font-size: 14px;
     width: 5%;
     color: rgba(0, 0, 0, 0.85);
-    line-height: 30px;
+    line-height: 30px !important;
 }
 @media screen and (min-width: 1681px) {
     .el-date-editor .el-range-separator {
@@ -19909,7 +19909,7 @@ html {
     height: 100%;
     min-height: calc(100vh - 200px);
     margin: 0 1rem;
-    background-color: #fff;
+    /* background-color: #fff; */
 }
 .dg-container-box__content {
     width: 100%;