From 7cdb16c8163736f820eb3fb200b7c3e2c792dbd6 Mon Sep 17 00:00:00 2001 From: Finley Ge <32237950+FinleyGe@users.noreply.github.com> Date: Thu, 25 Sep 2025 14:11:05 +0800 Subject: [PATCH] perf: permission index & model table collaborator context lazy mount (#5703) --- packages/service/support/permission/schema.ts | 5 +++ .../components/core/ai/ModelTable/index.tsx | 21 ++++-------- .../permission/MemberManager/context.tsx | 34 ++++++++++++++++++- 3 files changed, 45 insertions(+), 15 deletions(-) diff --git a/packages/service/support/permission/schema.ts b/packages/service/support/permission/schema.ts index 1eebfceb2..dd94c8952 100644 --- a/packages/service/support/permission/schema.ts +++ b/packages/service/support/permission/schema.ts @@ -78,6 +78,11 @@ ResourcePermissionSchema.virtual('org', { }); try { + ResourcePermissionSchema.index({ + resourceType: 1, + teamId: 1 + }); + // Indexes for resourceId-based resources ResourcePermissionSchema.index( { diff --git a/projects/app/src/components/core/ai/ModelTable/index.tsx b/projects/app/src/components/core/ai/ModelTable/index.tsx index 104f16205..719ea1dc8 100644 --- a/projects/app/src/components/core/ai/ModelTable/index.tsx +++ b/projects/app/src/components/core/ai/ModelTable/index.tsx @@ -26,10 +26,10 @@ import dynamic from 'next/dynamic'; import CopyBox from '@fastgpt/web/components/common/String/CopyBox'; import MyIconButton from '@fastgpt/web/components/common/Icon/button'; import { useTableMultipleSelect } from '@fastgpt/web/hooks/useTableMultipleSelect'; -import CollaboratorContextProvider from '@/components/support/permission/MemberManager/context'; import { ReadRoleVal } from '@fastgpt/global/support/permission/constant'; import { getModelCollaborators, updateModelCollaborators } from '@/web/common/system/api'; import { useUserStore } from '@/web/support/user/useUserStore'; +import { LazyCollaboratorProvider } from '@/components/support/permission/MemberManager/context'; const MyModal = dynamic(() => import('@fastgpt/web/components/common/MyModal')); @@ -317,7 +317,7 @@ const ModelTable = () => {