Explorar el Código

联调数据资源分级分类表码

林倩 hace 4 años
padre
commit
523291f220

+ 3 - 1
config/dev.env.js

@@ -38,8 +38,10 @@ module.exports = merge(prodEnv, {
             // target: "http://10.11.1.192:8871" // 马志强
             // target: "http://10.11.1.142:8861", // 易长安
             // target: "http://10.254.11.200:8861" // 傅志强
-            target: "http://10.254.10.15:8861" // 傅志强
+            // target: "http://10.254.10.15:8861" // 傅志强
             // target: "http://10.11.1.164:8861"
+            // target: "http://10.11.0.48:8861",// 邱宇
+            target: "http://10.254.11.203:8861"
 
         },
         "/dcuc": {

+ 5 - 4
src/api/common.js

@@ -124,9 +124,10 @@ export function getAppfunMenu(appId) {
 // 标签树
 export function getBusinessTagTree(data) {
     return request({
-        url: `/usersvr/v1/label/tree/search`,
+        url: `/authsvr/v2/dataauth/businessTreeList`,
         method: "POST",
-        baseURL: "/dcuc",
-        data
+        data: {
+            name: ""
+        }
     });
-}
+}

+ 97 - 4
src/api/data-auth.js

@@ -4,16 +4,109 @@
  @Date:2021-04-09
  */
 
-import axios from "@/utils/req";
 import request from "@/utils/request";
-const baseUrl = "/dcuc/usersvr/v1/label";
+const baseUrl = "/authsvr/v2/dataauth";
+
+/********************************************  数据授权  ******************************************/
 
 // 标签树
 export function getBusinessTagTree(data) {
     return request({
-        url: `/usersvr/v1/label/tree/search`,
+        url: `${baseUrl}/businessTreeList`,
         method: "POST",
-        baseURL: "/dcuc",
         data
     });
 }
+
+// 获取数据授权资源树
+export function getAllDataTree(params) {
+    return request({
+        url: `${baseUrl}/allDataTree`,
+        method: "get",
+        params
+    });
+}
+
+// 获取单个主体数据权限
+export function getSubDataAuth(data) {
+    return request({
+        url: `${baseUrl}/getSubDataAuth`,
+        method: "post",
+        data
+    });
+}
+
+// 人员视角数据权限查询
+export function dataAuthInfoByUserId(params) {
+    return request({
+        url: `${baseUrl}/dataAuthInfoByUserId`,
+        method: "get",
+        params
+    });
+}
+
+// 业务域标签数据授权
+export function labelDataAuth(data) {
+    return request({
+        url: `${baseUrl}/labelDataAuth`,
+        method: "post",
+        data
+    });
+}
+
+// 机构数据授权
+export function orgDataAuth(data) {
+    return request({
+        url: `${baseUrl}/orgDataAuth`,
+        method: "post",
+        data
+    });
+}
+
+// 人员数据授权
+export function userDataAuth(data) {
+    return request({
+        url: `${baseUrl}/userDataAuth`,
+        method: "post",
+        data
+    });
+}
+
+/*********************************** 数据分级分类表码    ******************************************************/
+
+const dataSourceBaseUrl = "/dataresourcesrv/v1"
+// 数据分级列表
+export function getDataLevelList() {
+    return request({
+        url: `${dataSourceBaseUrl}/datalevels`,
+        method: "get",
+    });
+}
+
+// 数据资源分类列表
+export function getDataClassifyList() {
+    return request({
+        url: `${dataSourceBaseUrl}/dataclassifys`,
+        method: "get",
+    });
+}
+
+
+// 字段分类列表
+export function getFieldClassifyList() {
+    return request({
+        url: `${dataSourceBaseUrl}/fieldclassifys`,
+        method: "get",
+    });
+}
+
+// 数据安全等级列表
+export function getSecurityLevelsList() {
+    return request({
+        url: `${dataSourceBaseUrl}/securitylevels`,
+        method: "get",
+    });
+}
+
+
+

+ 16 - 16
src/pages/data-auth-module/data-permission-manage/data-auth-manage/check-list.vue

@@ -37,14 +37,14 @@
                         </el-form-item>
                     </template>
                     <!-- 表授权-数据安全级别搜索 -->
-                    <template v-if="activeTab == 'sjaqjb2'">
+                    <!-- <template v-if="activeTab == 'sjaqjb2'">
                         <el-form-item label="数据安全级别">
                             <el-input v-model="item.searchCondition.level.value"></el-input>
                         </el-form-item>
                         <el-form-item label="数据资源名称">
                             <el-input v-model="item.searchCondition.level.value"></el-input>
                         </el-form-item>
-                    </template>
+                    </template> -->
                     <!-- 数据资源分类搜索 -->
                     <template v-if="activeTab == 'sjzyfl'">
                         <el-form-item label="一级分类">
@@ -153,20 +153,20 @@ export default {
                         }
                     }
                 },
-                {
-                    tabName: "sjaqjb2",
-                    tabLabel: "数据安全级别",
-                    total: "",
-                    tableUrl: "/appsvr/v2/manufacturers",
-                    tableRef: "sjaqjb2Table",
-                    tableHeader: sjaqjbTableHeader_table,
-                    searchCondition: {
-                        level: {
-                            value: "",
-                            op: "="
-                        }
-                    }
-                },
+                // {
+                //     tabName: "sjaqjb2",
+                //     tabLabel: "数据安全级别",
+                //     total: "",
+                //     tableUrl: "/appsvr/v2/manufacturers",
+                //     tableRef: "sjaqjb2Table",
+                //     tableHeader: sjaqjbTableHeader_table,
+                //     searchCondition: {
+                //         level: {
+                //             value: "",
+                //             op: "="
+                //         }
+                //     }
+                // },
                 {
                     tabName: "sjzyfl",
                     tabLabel: "数据资源分类",

+ 8 - 3
src/pages/data-auth-module/data-permission-manage/data-auth-manage/person-auth.vue

@@ -74,7 +74,6 @@
     </dg-row>
 </template>
 <script>
-import list from "../../mockData";
 import orgTree from "@/pages/common/tree";
 import { staffUserPage } from "@/api/role-auth-info";
 import setAuth from "./set-auth"
@@ -82,8 +81,6 @@ export default {
     components: { orgTree, setAuth },
     data() {
         return {
-            // 人员列表数据
-            personList: list,
             // 激活的tab
             activeName: "tableAuth",
             rowStyle: {
@@ -101,6 +98,14 @@ export default {
                 {
                     value: "",
                     label: "全部"
+                },
+                 {
+                    value: "01",
+                    label: "警员"
+                },
+                 {
+                    value: "02",
+                    label: "辅警"
                 }
             ],
             clearSelectedNode: false

+ 1 - 2
src/pages/data-auth-module/data-permission-manage/data-auth-search/detail-layer.vue

@@ -15,12 +15,11 @@
 </template>
 
 <script>
-import list from "../../mockData";
 export default {
     components: {},
     data() {
         return {
-            tableList: list
+            tableList: []
         };
     },
     computed: {},

+ 0 - 3
src/pages/data-auth-module/data-permission-manage/data-auth-search/person-view.vue

@@ -84,7 +84,6 @@
 </template>
 <script>
 import codeTree from "../../tree.js";
-import list from "../../mockData";
 import detailLayer from "./detail-layer";
 import orgTree from "@/pages/common/tree";
 import { staffUserPage } from "@/api/role-auth-info";
@@ -92,8 +91,6 @@ export default {
     components: { orgTree },
     data() {
         return {
-            // 人员列表数据
-            personList: list,
             // 激活的tab
             activeName: "tableAuth",
             rowStyle: {

+ 0 - 14
src/pages/data-auth-module/mockData.js

@@ -1,14 +0,0 @@
-let list = [];
-for (let i = 0; i < 20; i++) {
-    const element = {
-        id: i,
-        name: "用户标签_"+i,
-        createUser: "张三_"+i,
-        idcard: "376899809876545567",
-        createTime: "2021-11-11 11:00",
-        description: "这是说明"
-    };
-    list.push(element);
-}
-
-export default list

+ 12 - 8
src/pages/data-auth-module/sort-code-manage/data-level.vue

@@ -21,21 +21,20 @@
         <!-- 列表 -->
         <dg-table ref="table" :data="tableList" border row-key="id" paging-type="client">
             <dg-table-column type="index" width="75" label="序号"></dg-table-column>
-            <dg-table-column prop="name" label="代码"></dg-table-column>
-            <dg-table-column prop="name" label="数据分级"></dg-table-column>
-            <dg-table-column prop="name" label="说明"></dg-table-column>
+            <dg-table-column prop="levelCode" label="代码"></dg-table-column>
+            <dg-table-column prop="levelName" label="数据分级"></dg-table-column>
         </dg-table>
     </div>
 </template>
 
 <script>
-import list from "../mockData";
 import importFile from "@/pages/common/import";
+import { getDataLevelList } from "@/api/data-auth"
 export default {
     components: {},
     data() {
         return {
-            tableList: list,
+            tableList: [],
             keyword: ""
         };
     },
@@ -47,9 +46,9 @@ export default {
         handleSearch() {
             this.$refs.table.paginationOptions.currentPage = 1;
             if (this.keyword.trim()) {
-                this.tableList = list.filter((item) => item.name.indexOf(this.keyword) > -1);
+                this.tableList = this.orgList.filter((item) => item.levelName.indexOf(this.keyword) > -1);
             }else {
-                this.tableList = list;
+                this.tableList = this.orgList;
             }
         },
         /**
@@ -78,7 +77,12 @@ export default {
             });
         }
     },
-    created() {},
+    created() {
+        getDataLevelList().then(res => {
+            this.orgList = res.data.content;
+            this.tableList = res.data.content;
+        })
+    },
     mounted() {}
 };
 </script>

+ 33 - 16
src/pages/data-auth-module/sort-code-manage/field-sort-code.vue

@@ -8,42 +8,42 @@
         <!-- 搜索项 -->
         <el-form :inline="true" :model="form" class="search-form">
             <el-form-item label="字段一级分类">
-                <el-input v-model="form.firstSortName"></el-input>
+                <el-input v-model="form.firstLevelName" clearable></el-input>
             </el-form-item>
             <el-form-item label="字段二级分类">
-                <el-input v-model="form.secondSortName"></el-input>
+                <el-input v-model="form.secondLevelName" clearable></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>
-          <!-- 导入 -->
+        <!-- 导入 -->
         <el-row class="import-btn">
             <dg-button type="primary" @click="handleImport" icon="el-icon-upload">导入</dg-button>
         </el-row>
         <!-- 列表 -->
-        <dg-table :data="tableList" border row-key="id">
+        <dg-table ref="table" :data="tableList" border row-key="id" paging-type="client">
             <dg-table-column type="index" width="75" label="序号"></dg-table-column>
-            <dg-table-column prop="name" label="代码"></dg-table-column>
-            <dg-table-column prop="name" label="字段一级分类"></dg-table-column>
-            <dg-table-column prop="name" label="代码"></dg-table-column>
-            <dg-table-column prop="name" label="字段二级分类"></dg-table-column>
-            <dg-table-column prop="name" label="说明"></dg-table-column>
+            <dg-table-column prop="firstLevelCode" label="代码"></dg-table-column>
+            <dg-table-column prop="firstLevelName" label="字段一级分类"></dg-table-column>
+            <dg-table-column prop="secondLevelCode" label="代码"></dg-table-column>
+            <dg-table-column prop="secondLevelName" label="字段二级分类"></dg-table-column>
         </dg-table>
     </div>
 </template>
 
 <script>
-import list from "../mockData";
-import importFile from "@/pages/common/import"
+import importFile from "@/pages/common/import";
+import { getFieldClassifyList } from "@/api/data-auth";
+
 export default {
     components: {},
     data() {
         return {
-            tableList: list,
+            tableList: [],
             form: {
-                firstSortName: "",
-                secondSortName: ""
+                firstLevelName: "",
+                secondLevelName: ""
             }
         };
     },
@@ -52,7 +52,19 @@ export default {
         /**
          * @description: 查询
          */
-        handleSearch() {},
+        handleSearch() {
+            this.$refs.table.paginationOptions.currentPage = 1;
+            const { firstLevelName, secondLevelName } = this.form;
+            if (!secondLevelName.trim() && !firstLevelName.trim()) {
+                this.tableList = this.orgList;
+            } else {
+                this.tableList = this.orgList.filter(
+                    (item) =>
+                        item.firstLevelName.indexOf(firstLevelName) > -1 &&
+                        item.secondLevelName.indexOf(secondLevelName) > -1
+                );
+            }
+        },
         /**
          * @description: 导入
          */
@@ -79,7 +91,12 @@ export default {
             });
         }
     },
-    created() {},
+    created() {
+        getFieldClassifyList().then((res) => {
+            this.orgList = res.data.content;
+            this.tableList = res.data.content;
+        });
+    },
     mounted() {}
 };
 </script>

+ 23 - 11
src/pages/data-auth-module/sort-code-manage/safe-level-code.vue

@@ -8,34 +8,34 @@
         <!-- 搜索项 -->
         <el-form :inline="true" class="search-form">
             <el-form-item label="数据安全等级">
-                <el-input v-model="keyword"></el-input>
+                <el-input v-model="keyword" clearable></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>
-          <!-- 导入 -->
+        <!-- 导入 -->
         <el-row class="import-btn">
             <dg-button type="primary" @click="handleImport" icon="el-icon-upload">导入</dg-button>
         </el-row>
         <!-- 列表 -->
-        <dg-table :data="tableList" border row-key="id">
+        <dg-table ref="table" :data="tableList" border row-key="id" paging-type="client">
             <dg-table-column type="index" width="75" label="序号"></dg-table-column>
-            <dg-table-column prop="name" label="代码"></dg-table-column>
-            <dg-table-column prop="name" label="数据安全级别"></dg-table-column>
-            <dg-table-column prop="name" label="说明"></dg-table-column>
+            <dg-table-column prop="levelCode" label="代码"></dg-table-column>
+            <dg-table-column prop="levelName" label="数据安全级别"></dg-table-column>
         </dg-table>
     </div>
 </template>
 
 <script>
-import list from "../mockData";
-import importFile from "@/pages/common/import"
+import importFile from "@/pages/common/import";
+import { getSecurityLevelsList } from "@/api/data-auth";
+
 export default {
     components: {},
     data() {
         return {
-            tableList: list,
+            tableList: [],
             keyword: ""
         };
     },
@@ -44,7 +44,14 @@ export default {
         /**
          * @description: 查询
          */
-        handleSearch() {},
+        handleSearch() {
+            this.$refs.table.paginationOptions.currentPage = 1;
+            if (this.keyword.trim()) {
+                this.tableList = this.orgList.filter((item) => item.levelName.indexOf(this.keyword) > -1);
+            } else {
+                this.tableList = this.orgList;
+            }
+        },
         /**
          * @description: 导入
          */
@@ -71,7 +78,12 @@ export default {
             });
         }
     },
-    created() {},
+    created() {
+        getSecurityLevelsList().then((res) => {
+            this.orgList = res.data.content;
+            this.tableList = res.data.content;
+        });
+    },
     mounted() {}
 };
 </script>

+ 39 - 20
src/pages/data-auth-module/sort-code-manage/source-sort-code.vue

@@ -8,48 +8,49 @@
         <!-- 搜索项 -->
         <el-form :inline="true" :model="form" class="search-form">
             <el-form-item label="数据组织一级分类">
-                <el-input v-model="form.firstSortName"></el-input>
+                <el-input v-model="form.firstLevelName" clearable></el-input>
             </el-form-item>
             <el-form-item label="数据组织二级分类">
-                <el-input v-model="form.secondSortName"></el-input>
+                <el-input v-model="form.secondLevelName" clearable></el-input>
             </el-form-item>
             <el-form-item label="标签名称">
-                <el-input v-model="form.secondSortName"></el-input>
+                <el-input v-model="form.labelName" clearable></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>
-          <el-row class="import-btn">
+        <el-row class="import-btn">
             <dg-button type="primary" @click="handleImport" icon="el-icon-upload">导入</dg-button>
         </el-row>
         <!-- 列表 -->
-        <dg-table :data="tableList" border row-key="id">
+        <dg-table ref="table" :data="tableList" border row-key="id" paging-type="client">
             <dg-table-column type="index" width="75" label="序号"></dg-table-column>
-            <dg-table-column prop="name" label="一级代码"></dg-table-column>
-            <dg-table-column prop="name" label="数据组织一级分类"></dg-table-column>
-            <dg-table-column prop="name" label="二级代码"></dg-table-column>
-            <dg-table-column prop="name" label="数据组织二级分类"></dg-table-column>
-            <dg-table-column prop="name" label="标签分类代码"></dg-table-column>
-            <dg-table-column prop="name" label="标签分类"></dg-table-column>
-            <dg-table-column prop="name" label="标签代码"></dg-table-column>
-            <dg-table-column prop="name" label="标签名称"></dg-table-column>
-            <dg-table-column prop="name" label="说明"></dg-table-column>
+            <dg-table-column prop="firstLevelCode" label="一级代码"></dg-table-column>
+            <dg-table-column prop="firstLevelName" label="数据组织一级分类"></dg-table-column>
+            <dg-table-column prop="secondLevelCode" label="二级代码"></dg-table-column>
+            <dg-table-column prop="secondLevelName" label="数据组织二级分类"></dg-table-column>
+            <dg-table-column prop="labelClassifyCode" label="标签分类代码"></dg-table-column>
+            <dg-table-column prop="labelClassifyName" label="标签分类"></dg-table-column>
+            <dg-table-column prop="labelCode" label="标签代码"></dg-table-column>
+            <dg-table-column prop="labelName" label="标签名称"></dg-table-column>
         </dg-table>
     </div>
 </template>
 
 <script>
-import list from "../mockData";
 import importFile from "@/pages/common/import";
+import { getDataClassifyList } from "@/api/data-auth";
+
 export default {
     components: {},
     data() {
         return {
-            tableList: list,
+            tableList: [],
             form: {
-                firstSortName: "",
-                secondSortName: ""
+                firstLevelName: "",
+                secondLevelName: "",
+                labelName: ""
             }
         };
     },
@@ -58,7 +59,20 @@ export default {
         /**
          * @description: 查询
          */
-        handleSearch() {},
+        handleSearch() {
+            this.$refs.table.paginationOptions.currentPage = 1;
+            const { firstLevelName, secondLevelName, labelName } = this.form;
+            if (!secondLevelName.trim() && !firstLevelName.trim() && !labelName.trim()) {
+                this.tableList = this.orgList;
+            } else {
+                this.tableList = this.orgList.filter(
+                    (item) =>
+                        item.firstLevelName.indexOf(firstLevelName) > -1 &&
+                        item.secondLevelName.indexOf(secondLevelName) > -1 &&
+                        item.labelName.indexOf(labelName) > -1
+                );
+            }
+        },
         /**
          * @description: 导入
          */
@@ -85,7 +99,12 @@ export default {
             });
         }
     },
-    created() {},
+    created() {
+        getDataClassifyList().then((res) => {
+            this.orgList = res.data.content;
+            this.tableList = res.data.content;
+        });
+    },
     mounted() {}
 };
 </script>