From 923d0f85e935816bdf7db56a88fea2fa6dbfa18d Mon Sep 17 00:00:00 2001 From: archer <545436317@qq.com> Date: Mon, 13 Jan 2025 13:47:59 +0800 Subject: [PATCH] perf: list data --- .../app/src/pages/api/core/dataset/list.ts | 22 ++++++++++++++----- .../src/pages/app/list/components/List.tsx | 7 +++++- .../src/pages/dataset/list/component/List.tsx | 3 ++- 3 files changed, 24 insertions(+), 8 deletions(-) diff --git a/projects/app/src/pages/api/core/dataset/list.ts b/projects/app/src/pages/api/core/dataset/list.ts index e37e11c1c..f554bebda 100644 --- a/projects/app/src/pages/api/core/dataset/list.ts +++ b/projects/app/src/pages/api/core/dataset/list.ts @@ -19,6 +19,7 @@ import { getGroupsByTmbId } from '@fastgpt/service/support/permission/memberGrou import { concatPer } from '@fastgpt/service/support/permission/controller'; import { getOrgIdSetWithParentByTmbId } from '@fastgpt/service/support/permission/org/controllers'; import { MongoTeamMember } from '@fastgpt/service/support/user/team/teamMemberSchema'; +import { getVectorModel } from '@fastgpt/service/core/ai/model'; export type GetDatasetListBody = { parentId: ParentIdType; @@ -174,22 +175,31 @@ async function handler(req: ApiRequestProps) { }) .filter((app) => app.permission.hasReadPer); - const tmbIds = formatDatasets.map((item) => item.tmbId); + const tmbIds = formatDatasets.map((item) => String(item.tmbId)); const memberInfo = await MongoTeamMember.find({ _id: { $in: tmbIds } }, '_id name avatar').lean(); - const data = formatDatasets.map((item) => { - const member = memberInfo.find((member) => String(member._id) === String(item.tmbId)); + return formatDatasets.map((item) => { + const member = + memberInfo.find((member) => String(member._id) === String(item.tmbId)) ?? memberInfo[0]; return { - ...item, + _id: item._id, + avatar: item.avatar, + name: item.name, + intro: item.intro, + type: item.type, + permission: item.permission, + vectorModel: getVectorModel(item.vectorModel), + inheritPermission: item.inheritPermission, + tmbId: item.tmbId, + updateTime: item.updateTime, + private: item.privateDataset, sourceMember: { name: member!.name, avatar: member!.avatar } }; }); - - return data; } export default NextAPI(handler); diff --git a/projects/app/src/pages/app/list/components/List.tsx b/projects/app/src/pages/app/list/components/List.tsx index dd4ead06c..66af89fbe 100644 --- a/projects/app/src/pages/app/list/components/List.tsx +++ b/projects/app/src/pages/app/list/components/List.tsx @@ -222,7 +222,12 @@ const ListItem = () => { color={'myGray.500'} > - +