fix: permission can not edit admin permission (#5433)
Some checks are pending
Build FastGPT images in Personal warehouse / get-vars (push) Waiting to run
Build FastGPT images in Personal warehouse / build-fastgpt-images (map[arch:amd64 runs-on:ubuntu-24.04]) (push) Blocked by required conditions
Build FastGPT images in Personal warehouse / build-fastgpt-images (map[arch:arm64 runs-on:ubuntu-24.04-arm]) (push) Blocked by required conditions
Build FastGPT images in Personal warehouse / release-fastgpt-images (push) Blocked by required conditions

This commit is contained in:
Finley Ge 2025-08-11 21:46:27 +08:00 committed by GitHub
parent 5019c6ec8b
commit c6e58291f7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 30 additions and 10 deletions

View File

@ -5,7 +5,8 @@ export enum AppErrEnum {
unExist = 'appUnExist',
unAuthApp = 'unAuthApp',
invalidOwner = 'invalidOwner',
invalidAppType = 'invalidAppType'
invalidAppType = 'invalidAppType',
canNotEditAdminPermission = 'canNotEditAdminPermission'
}
const appErrList = [
{
@ -23,6 +24,10 @@ const appErrList = [
{
statusText: AppErrEnum.invalidAppType,
message: i18nT('common:code_error.app_error.invalid_app_type')
},
{
statusText: AppErrEnum.canNotEditAdminPermission,
message: i18nT('common:code_error.app_error.can_not_edit_admin_permission')
}
];
export default appErrList.reduce((acc, cur, index) => {

View File

@ -14,7 +14,8 @@ export enum DatasetErrEnum {
invalidVectorModelOrQAModel = 'invalidVectorModelOrQAModel',
notSupportSync = 'notSupportSync',
sameApiCollection = 'sameApiCollection',
noApiServer = 'noApiServer'
noApiServer = 'noApiServer',
canNotEditAdminPermission = 'canNotEditAdminPermission'
}
const datasetErr = [
{
@ -60,6 +61,10 @@ const datasetErr = [
{
statusText: DatasetErrEnum.invalidVectorModelOrQAModel,
message: 'core.dataset.error.invalidVectorModelOrQAModel'
},
{
statusText: DatasetErrEnum.canNotEditAdminPermission,
message: 'core.dataset.error.canNotEditAdminPermission'
}
];
export default datasetErr.reduce((acc, cur, index) => {

View File

@ -133,6 +133,7 @@
"code_error.app_error.invalid_owner": "Unauthorized Application Owner",
"code_error.app_error.not_exist": "Application Does Not Exist",
"code_error.app_error.un_auth_app": "Unauthorized to Operate This Application",
"code_error.app_error.can_not_edit_admin_permission": "Can not edit admin permission",
"code_error.chat_error.un_auth": "Unauthorized to Operate This Chat Record",
"code_error.error_code.400": "Request Failed",
"code_error.error_code.401": "No Access Permission",
@ -485,6 +486,7 @@
"core.dataset.error.unCreateCollection": "Unauthorized to Operate This Data",
"core.dataset.error.unExistDataset": "The knowledge base does not exist",
"core.dataset.error.unLinkCollection": "Not a Web Link Collection",
"core.dataset.error.canNotEditAdminPermission": "You cannot edit the admin permission",
"core.dataset.externalFile": "External File Library",
"core.dataset.file": "File",
"core.dataset.folder": "Directory",

View File

@ -134,6 +134,7 @@
"code_error.app_error.not_exist": "应用不存在",
"code_error.app_error.un_auth_app": "无权操作该应用",
"code_error.chat_error.un_auth": "没有权限操作此对话记录",
"code_error.app_error.can_not_edit_admin_permission": "不能编辑管理员权限",
"code_error.error_code.400": "请求失败",
"code_error.error_code.401": "无访问权限",
"code_error.error_code.403": "紧张访问",
@ -485,6 +486,7 @@
"core.dataset.error.unCreateCollection": "无权操作该数据",
"core.dataset.error.unExistDataset": "知识库不存在",
"core.dataset.error.unLinkCollection": "不是网络链接集合",
"core.dataset.error.canNotEditAdminPermission": "无法修改管理员权限",
"core.dataset.externalFile": "外部文件库",
"core.dataset.file": "文件",
"core.dataset.folder": "目录",

View File

@ -134,6 +134,7 @@
"code_error.app_error.not_exist": "應用程式不存在",
"code_error.app_error.un_auth_app": "無權操作此應用程式",
"code_error.chat_error.un_auth": "沒有權限操作此對話記錄",
"code_error.app_error.can_not_edit_admin_permission": "不能編輯管理員權限",
"code_error.error_code.400": "請求失敗",
"code_error.error_code.401": "無存取權限",
"code_error.error_code.403": "禁止存取",
@ -485,6 +486,7 @@
"core.dataset.error.unCreateCollection": "無權操作此資料",
"core.dataset.error.unExistDataset": "知識庫不存在",
"core.dataset.error.unLinkCollection": "不是網路連結集合",
"core.dataset.error.canNotEditAdminPermission": "無法修改管理員權限",
"core.dataset.externalFile": "外部檔案庫",
"core.dataset.file": "檔案",
"core.dataset.folder": "目錄",

View File

@ -15,7 +15,7 @@ function MemberItemCard({
isChecked,
onDelete,
name,
role: permission,
role,
orgs,
addOnly,
rightSlot
@ -31,7 +31,7 @@ function MemberItemCard({
orgs?: string[];
rightSlot?: React.ReactNode;
}) {
const isAdded = addOnly && !!permission;
const isAdded = addOnly && !!role;
const onChange = () => {
if (!isAdded) _onChange();
};
@ -61,7 +61,7 @@ function MemberItemCard({
</Box>
<Box lineHeight={1}>{orgs && orgs.length > 0 && <OrgTags orgs={orgs} />}</Box>
</Box>
{!isAdded && permission && <RoleTags permission={permission} />}
{!isAdded && role && <RoleTags permission={role} />}
{isAdded && (
<Tag
mixBlendMode={'multiply'}

View File

@ -186,12 +186,13 @@ function RoleSelect({
);
})}
<MyDivider />
{roleOptions.checkboxList.length > 0 && (
<Box pb="2" px="3" fontSize={'sm'} color={'myGray.900'}>
{t('common:permission_other')}
</Box>
<>
<MyDivider />
<Box pb="2" px="3" fontSize={'sm'} color={'myGray.900'}>
{t('common:permission_other')}
</Box>
</>
)}
{roleOptions.checkboxList.map((item) => {

View File

@ -136,6 +136,9 @@ const CollaboratorContextProvider = ({
const Per = new Permission({ role });
const labels: string[] = [];
if (Per.isOwner) {
return [t('common:permission.Owner')];
}
if (Per.hasManagePer) {
labels.push(t(roleList['manage'].name as any));
} else if (Per.hasWritePer) {