From cc93b1b83c84bb680ab79d0bcee3a1c1253b34ee Mon Sep 17 00:00:00 2001 From: ulleo Date: Wed, 27 Mar 2024 14:55:08 +0800 Subject: [PATCH] =?UTF-8?q?feat(X-Pack):=20=E6=95=B0=E6=8D=AE=E5=A1=AB?= =?UTF-8?q?=E6=8A=A5=E8=8F=9C=E5=8D=95=E6=9D=83=E9=99=90=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../db/migration/V63__1.18.18-data-fill.sql | 20 +++++++++++++++++++ .../src/directive/Permission/index.js | 18 +++++++++++++++++ .../src/views/dataFilling/form/index.vue | 16 +++++++++++---- .../src/views/dataFilling/myTask/index.vue | 17 +++++++++++++--- 4 files changed, 64 insertions(+), 7 deletions(-) diff --git a/core/backend/src/main/resources/db/migration/V63__1.18.18-data-fill.sql b/core/backend/src/main/resources/db/migration/V63__1.18.18-data-fill.sql index ac15281721..0df37b8168 100644 --- a/core/backend/src/main/resources/db/migration/V63__1.18.18-data-fill.sql +++ b/core/backend/src/main/resources/db/migration/V63__1.18.18-data-fill.sql @@ -307,4 +307,24 @@ create index data_fill_user_task_task_id_index on data_fill_user_task (task_id); +INSERT INTO dataease.sys_auth (id, auth_source, auth_source_type, auth_target, auth_target_type, auth_time, auth_details, auth_user, update_time, copy_from, copy_id) VALUES ('3c790b17-17c0-4ba6-8c8b-b7a6bee57772', '1200', 'menu', '1', 'role', 1711448429062, null, 'admin', null, null, null); +INSERT INTO dataease.sys_auth (id, auth_source, auth_source_type, auth_target, auth_target_type, auth_time, auth_details, auth_user, update_time, copy_from, copy_id) VALUES ('8e5404a8-ef7f-407e-b67e-4ff7064fdede', '1200', 'menu', '2', 'role', 1711517966976, null, 'admin', null, null, null); +INSERT INTO dataease.sys_auth (id, auth_source, auth_source_type, auth_target, auth_target_type, auth_time, auth_details, auth_user, update_time, copy_from, copy_id) VALUES ('31fa8a67-1513-4297-8a00-c34458a0f760', '1201', 'menu', '1', 'role', 1711448429055, null, 'admin', null, null, null); +INSERT INTO dataease.sys_auth (id, auth_source, auth_source_type, auth_target, auth_target_type, auth_time, auth_details, auth_user, update_time, copy_from, copy_id) VALUES ('44d9496a-047c-4fd4-9b20-94eaff01fa0b', '1201', 'menu', '2', 'role', 1711517966965, null, 'admin', null, null, null); +INSERT INTO dataease.sys_auth (id, auth_source, auth_source_type, auth_target, auth_target_type, auth_time, auth_details, auth_user, update_time, copy_from, copy_id) VALUES ('16eeb4df-e194-4f5b-9817-d1e48c006036', '1202', 'menu', '2', 'role', 1711448593512, null, 'admin', null, null, null); +INSERT INTO dataease.sys_auth (id, auth_source, auth_source_type, auth_target, auth_target_type, auth_time, auth_details, auth_user, update_time, copy_from, copy_id) VALUES ('f4112033-f9bf-4e99-9d8e-9417663a6683', '1202', 'menu', '1', 'role', 1711448429067, null, 'admin', null, null, null); + +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('31b8e9ef-ebfc-11ee-8430-0242ac140002', '44d9496a-047c-4fd4-9b20-94eaff01fa0b', 'i18n_auth_use', 1, 0, 'use', '基础权限-使用', 'admin', 1711517966000, null, null, null); +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('31ba695a-ebfc-11ee-8430-0242ac140002', '8e5404a8-ef7f-407e-b67e-4ff7064fdede', 'i18n_auth_use', 1, 0, 'use', '基础权限-使用', 'admin', 1711517966000, null, null, null); +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('49c77c8d-eb5a-11ee-8430-0242ac140002', '31fa8a67-1513-4297-8a00-c34458a0f760', 'i18n_auth_use', 1, 1, 'use', '基础权限-使用', 'admin', 1711448429000, null, null, null); +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('49c81b67-eb5a-11ee-8430-0242ac140002', '3c790b17-17c0-4ba6-8c8b-b7a6bee57772', 'i18n_auth_use', 1, 1, 'use', '基础权限-使用', 'admin', 1711448429000, null, null, null); +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('49c8c0b7-eb5a-11ee-8430-0242ac140002', 'f4112033-f9bf-4e99-9d8e-9417663a6683', 'i18n_auth_use', 1, 1, 'use', '基础权限-使用', 'admin', 1711448429000, null, null, null); +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('abccfe10-eb5a-11ee-8430-0242ac140002', '16eeb4df-e194-4f5b-9817-d1e48c006036', 'i18n_auth_use', 1, 1, 'use', '基础权限-使用', 'admin', 1711448593000, null, null, null); +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('31b8e988-ebfc-11ee-8430-0242ac140002', '44d9496a-047c-4fd4-9b20-94eaff01fa0b', 'i18n_auth_grant', 15, 0, 'grant', '基础权限-授权', 'admin', 1711517966000, null, null, null); +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('31ba6902-ebfc-11ee-8430-0242ac140002', '8e5404a8-ef7f-407e-b67e-4ff7064fdede', 'i18n_auth_grant', 15, 0, 'grant', '基础权限-授权', 'admin', 1711517966000, null, null, null); +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('49c77c73-eb5a-11ee-8430-0242ac140002', '31fa8a67-1513-4297-8a00-c34458a0f760', 'i18n_auth_grant', 15, 0, 'grant', '基础权限-授权', 'admin', 1711448429000, null, null, null); +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('49c81b44-eb5a-11ee-8430-0242ac140002', '3c790b17-17c0-4ba6-8c8b-b7a6bee57772', 'i18n_auth_grant', 15, 0, 'grant', '基础权限-授权', 'admin', 1711448429000, null, null, null); +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('49c8c096-eb5a-11ee-8430-0242ac140002', 'f4112033-f9bf-4e99-9d8e-9417663a6683', 'i18n_auth_grant', 15, 0, 'grant', '基础权限-授权', 'admin', 1711448429000, null, null, null); +INSERT INTO dataease.sys_auth_detail (id, auth_id, privilege_name, privilege_type, privilege_value, privilege_extend, remark, create_user, create_time, update_time, copy_from, copy_id) VALUES ('abccfdbb-eb5a-11ee-8430-0242ac140002', '16eeb4df-e194-4f5b-9817-d1e48c006036', 'i18n_auth_grant', 15, 0, 'grant', '基础权限-授权', 'admin', 1711448593000, null, null, null); + diff --git a/core/frontend/src/directive/Permission/index.js b/core/frontend/src/directive/Permission/index.js index 70a6230c06..158a6ded2f 100644 --- a/core/frontend/src/directive/Permission/index.js +++ b/core/frontend/src/directive/Permission/index.js @@ -19,6 +19,24 @@ function checkPermission(el, binding) { } } +export function hasPermission(binding) { + const { value } = binding + // 我们是基于资源授鉴权 不用角色 因为后期可能有对部门授权 对 人员授权 + const permissions = store.getters && store.getters.permissions + if (value && value instanceof Array) { + const needPermissions = value + // 满足指令中的每个权限才可放行 而不是 满足任意一个即可 + const hasPermission = needPermissions.every(needP => { + const result = permissions.includes(needP) + return result + }) + console.log(needPermissions, hasPermission) + return hasPermission + } else { + return false + } +} + export default { inserted(el, binding) { checkPermission(el, binding) diff --git a/core/frontend/src/views/dataFilling/form/index.vue b/core/frontend/src/views/dataFilling/form/index.vue index ef29f78195..5a51cc3296 100644 --- a/core/frontend/src/views/dataFilling/form/index.vue +++ b/core/frontend/src/views/dataFilling/form/index.vue @@ -1,15 +1,15 @@