From 2fdeb8d7a6dfd910b7fb9556557d0a05a4d555e3 Mon Sep 17 00:00:00 2001 From: loveTsong <271667068@qq.com> Date: Wed, 24 Dec 2025 09:36:26 +0800 Subject: [PATCH 1/6] [app-builder] resolve query limitation of only self-owned apps when allGroupUser is enabled --- .../fit/jade/aipp/domain/division/aop/GetSourceAspect.java | 2 ++ .../src/main/resources/mapper/AppBuilderAppMapper.xml | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/app-builder/plugins/aipp-domain-division/src/main/java/modelengine/fit/jade/aipp/domain/division/aop/GetSourceAspect.java b/app-builder/plugins/aipp-domain-division/src/main/java/modelengine/fit/jade/aipp/domain/division/aop/GetSourceAspect.java index d4080c7104..16ed31ef40 100644 --- a/app-builder/plugins/aipp-domain-division/src/main/java/modelengine/fit/jade/aipp/domain/division/aop/GetSourceAspect.java +++ b/app-builder/plugins/aipp-domain-division/src/main/java/modelengine/fit/jade/aipp/domain/division/aop/GetSourceAspect.java @@ -59,6 +59,8 @@ public void beforeGet(JoinPoint joinPoint) { } String username = this.getUserName(); if (this.allGroupUsers != null && this.allGroupUsers.contains(username)) { + UserInfo userInfo = this.buildUserInfo(username, "*allGroupUser*"); + UserInfoHolder.set(userInfo); return; } UserGroup userGroup = this.getUserGroup(username); diff --git a/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderAppMapper.xml b/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderAppMapper.xml index e2736df041..7679599cb2 100644 --- a/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderAppMapper.xml +++ b/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderAppMapper.xml @@ -126,7 +126,7 @@ and create_by = #{cond.createBy} - + and (user_group_id = #{cond.userGroupId} or user_group_id = '*') ORDER BY From 1e07e896a36d8cd21685be5784eaa9243561ab8f Mon Sep 17 00:00:00 2001 From: loveTsong <271667068@qq.com> Date: Thu, 25 Dec 2025 14:38:18 +0800 Subject: [PATCH 2/6] [app-builder] resolve query limitation of only self-owned forms when allGroupUser is enabled --- .../src/main/resources/mapper/AppBuilderFormMapper.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderFormMapper.xml b/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderFormMapper.xml index f1fa9f403e..db99a26557 100644 --- a/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderFormMapper.xml +++ b/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderFormMapper.xml @@ -102,7 +102,7 @@ and create_by = #{cond.createBy} - + and (user_group_id = #{cond.userGroupId} or user_group_id = '*') @@ -135,7 +135,7 @@ and create_by = #{cond.createBy} - + and (user_group_id = #{cond.userGroupId} or user_group_id = '*') From 1d195c761239aa92b47cb1128d3c948032308850 Mon Sep 17 00:00:00 2001 From: loveTsong <271667068@qq.com> Date: Fri, 26 Dec 2025 17:59:30 +0800 Subject: [PATCH 3/6] [app-builder] correct plugin query logic in permission scenarios --- .../resources/mapper/AppBuilderAppMapper.xml | 2 +- .../src/main/resources/mapper/AppMapper.xml | 4 +- .../main/resources/mapper/PluginMapper.xml | 100 ++++++++++-------- .../resources/mapper/PluginToolMapper.xml | 100 ++++++++++-------- 4 files changed, 111 insertions(+), 95 deletions(-) diff --git a/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderAppMapper.xml b/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderAppMapper.xml index 7679599cb2..9abb90da16 100644 --- a/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderAppMapper.xml +++ b/app-builder/plugins/aipp-plugin/src/main/resources/mapper/AppBuilderAppMapper.xml @@ -208,7 +208,7 @@ and create_by = #{cond.createBy} - + and (user_group_id = #{cond.userGroupId} or user_group_id = '*') ) as latest_records WHERE ; diff --git a/store/plugins/store-repository-postgresql/src/main/resources/mapper/AppMapper.xml b/store/plugins/store-repository-postgresql/src/main/resources/mapper/AppMapper.xml index f4947f5cc9..802ec3b775 100644 --- a/store/plugins/store-repository-postgresql/src/main/resources/mapper/AppMapper.xml +++ b/store/plugins/store-repository-postgresql/src/main/resources/mapper/AppMapper.xml @@ -119,7 +119,7 @@ and i."app_category" ilike '%\' || #{appCategory} || '%' ESCAPE '\' - + and (i."user_group_id" = #{userGroupId} or i."user_group_id" = '*') @@ -135,7 +135,7 @@ and i."app_category" ilike '%\' || #{appCategory} || '%' ESCAPE '\' - + and (i."user_group_id" = #{userGroupId} or i."user_group_id" = '*') diff --git a/store/plugins/store-repository-postgresql/src/main/resources/mapper/PluginMapper.xml b/store/plugins/store-repository-postgresql/src/main/resources/mapper/PluginMapper.xml index d878f584b6..0f55080619 100644 --- a/store/plugins/store-repository-postgresql/src/main/resources/mapper/PluginMapper.xml +++ b/store/plugins/store-repository-postgresql/src/main/resources/mapper/PluginMapper.xml @@ -118,29 +118,33 @@ from "store_tag" t group by t."tool_unique_name") tg on tg."tool_unique_name" = pt."tool_unique_name" - - and (i."is_builtin" = true or i."user_group_id" = #{userGroupId} or i."user_group_id" = '*') - - - and (i."is_builtin" = false and i."user_group_id" = #{userGroupId} or i."user_group_id" = '*') - - - and i."is_builtin" = #{isBuiltin} - - - and (i."user_group_id" = #{userGroupId} or i."user_group_id" = '*') - - - and (i."is_builtin" = true or i."creator" ilike '%\' || #{creator} || '%' ESCAPE '\') - - - and (i."is_builtin" = false and i."creator" ilike '%\' || #{creator} || '%' ESCAPE '\') - - - and i."is_builtin" = #{isBuiltin} - - - and i."creator" ilike '%\' || #{creator} || '%' ESCAPE '\' + + + and (i."is_builtin" = true or i."user_group_id" = #{userGroupId} or i."user_group_id" = '*') + + + and (i."is_builtin" = false and i."user_group_id" = #{userGroupId} or i."user_group_id" = '*') + + + and i."is_builtin" = false + + + and (i."user_group_id" = #{userGroupId} or i."user_group_id" = '*') + + + + + and (i."is_builtin" = true or i."creator" ilike '%\' || #{creator} || '%' ESCAPE '\') + + + and (i."is_builtin" = false and i."creator" ilike '%\' || #{creator} || '%' ESCAPE '\') + + + and i."is_builtin" = #{isBuiltin} + + + and i."creator" ilike '%\' || #{creator} || '%' ESCAPE '\' + and (i."deploy_status" = 'DEPLOYED' or i."deploy_status" = 'RELEASED') @@ -156,29 +160,33 @@