fix: permission conflict after moving (#3639)

This commit is contained in:
a.e. 2025-01-21 22:35:10 +08:00 committed by GitHub
parent e02a7ab350
commit d67474170a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 14 additions and 0 deletions

View File

@ -23,6 +23,7 @@ import { authUserPer } from '@fastgpt/service/support/permission/user/auth';
import { TeamWritePermissionVal } from '@fastgpt/global/support/permission/user/constant';
import { AppErrEnum } from '@fastgpt/global/common/error/code/app';
import { refreshSourceAvatar } from '@fastgpt/service/common/file/image/controller';
import { MongoResourcePermission } from '@fastgpt/service/support/permission/schema';
export type AppUpdateQuery = {
appId: string;
@ -148,6 +149,12 @@ async function handler(req: ApiRequestProps<AppUpdateBody, AppUpdateQuery>) {
collaborators: parentClbsAndGroups,
session
});
} else {
// Not folder, delete all clb
await MongoResourcePermission.deleteMany(
{ resourceType: PerResourceTypeEnum.app, teamId: app.teamId, resourceId: app._id },
{ session }
);
}
return onUpdate(session);
});

View File

@ -29,6 +29,7 @@ import { MongoDatasetTraining } from '@fastgpt/service/core/dataset/training/sch
import { MongoDatasetCollection } from '@fastgpt/service/core/dataset/collection/schema';
import { addDays } from 'date-fns';
import { refreshSourceAvatar } from '@fastgpt/service/common/file/image/controller';
import { MongoResourcePermission } from '@fastgpt/service/support/permission/schema';
export type DatasetUpdateQuery = {};
export type DatasetUpdateResponse = any;
@ -175,6 +176,12 @@ async function handler(
collaborators: parentClbsAndGroups,
session
});
} else {
// Not folder, delete all clb
await MongoResourcePermission.deleteMany(
{ resourceId: id, teamId: dataset.teamId, resourceType: PerResourceTypeEnum.dataset },
{ session }
);
}
return onUpdate(session);
} else {