diff --git a/packages/service/support/permission/app/auth.ts b/packages/service/support/permission/app/auth.ts index df683b8b8..0accefdc7 100644 --- a/packages/service/support/permission/app/auth.ts +++ b/packages/service/support/permission/app/auth.ts @@ -88,13 +88,6 @@ export const authAppByTmbId = async ({ }; } - if (app.favourite || app.quick) { - return { - ...app, - permission: new AppPermission({ isOwner: false, role: ReadRoleVal }) - }; - } - const isOwner = tmbPer.isOwner || String(app.tmbId) === String(tmbId); const { Per } = await (async () => { @@ -119,6 +112,11 @@ export const authAppByTmbId = async ({ resourceType: PerResourceTypeEnum.app }); const Per = new AppPermission({ role, isOwner }); + + if (app.favourite || app.quick) { + Per.addRole(ReadRoleVal); + } + return { Per }; diff --git a/projects/app/src/pageComponents/chat/ChatSetting/index.tsx b/projects/app/src/pageComponents/chat/ChatSetting/index.tsx index ca8faaf27..f33e421d4 100644 --- a/projects/app/src/pageComponents/chat/ChatSetting/index.tsx +++ b/projects/app/src/pageComponents/chat/ChatSetting/index.tsx @@ -15,6 +15,7 @@ import { useTranslation } from 'react-i18next'; import { useMount } from 'ahooks'; import { useSystemStore } from '@/web/common/system/useSystemStore'; import { useRouter } from 'next/router'; +import { useUserStore } from '@/web/support/user/useUserStore'; const HomepageSetting = dynamic(() => import('@/pageComponents/chat/ChatSetting/HomepageSetting')); const LogDetails = dynamic(() => import('@/pageComponents/chat/ChatSetting/LogDetails')); @@ -28,6 +29,7 @@ const ChatSetting = () => { const { isPc } = useSystem(); const { t } = useTranslation(); const { feConfigs } = useSystemStore(); + const { userInfo } = useUserStore(); const { tab: tabQuery } = router.query as { tab: ChatSettingTabOptionEnum }; const [isOpenDiagram, setIsOpenDiagram] = useState(false); @@ -60,7 +62,7 @@ const ChatSetting = () => { ); useMount(() => { - if (!feConfigs?.isPlus) { + if (!feConfigs?.isPlus || !userInfo?.team.permission.hasManagePer) { handlePaneChange(ChatSidebarPaneEnum.TEAM_APPS); } }); diff --git a/projects/app/src/pageComponents/chat/UserAvatarPopover.tsx b/projects/app/src/pageComponents/chat/UserAvatarPopover.tsx index 0d8c15138..3e2058973 100644 --- a/projects/app/src/pageComponents/chat/UserAvatarPopover.tsx +++ b/projects/app/src/pageComponents/chat/UserAvatarPopover.tsx @@ -64,7 +64,7 @@ const UserAvatarPopover = ({ > - {userInfo?.username ?? '-'} + {userInfo?.team.memberName ?? '-'} )}