From aefd78bc0940f5bb23b406f8cd302a42c0d2a302 Mon Sep 17 00:00:00 2001 From: Junyi Date: Tue, 15 Apr 2025 23:44:35 +0800 Subject: [PATCH] fix(plugin-acl): fix role in cache (#6674) --- .../plugin-acl/src/server/middlewares/setCurrentRole.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/plugins/@nocobase/plugin-acl/src/server/middlewares/setCurrentRole.ts b/packages/plugins/@nocobase/plugin-acl/src/server/middlewares/setCurrentRole.ts index 0a034f2f0a..4d06502ce3 100644 --- a/packages/plugins/@nocobase/plugin-acl/src/server/middlewares/setCurrentRole.ts +++ b/packages/plugins/@nocobase/plugin-acl/src/server/middlewares/setCurrentRole.ts @@ -48,9 +48,9 @@ export async function setCurrentRole(ctx: Context, next) { const userRoles = Array.from(rolesMap.values()); ctx.state.currentUser.roles = userRoles; const systemSettings = (await cache.wrap(`app:systemSettings`, () => - ctx.db.getRepository('systemSettings').findOne(), + ctx.db.getRepository('systemSettings').findOne({ raw: true }), )) as Model; - const roleMode = systemSettings?.get('roleMode') || SystemRoleMode.default; + const roleMode = systemSettings?.roleMode || SystemRoleMode.default; if ([currentRole, ctx.state.currentRole].includes(UNION_ROLE_KEY) && roleMode === SystemRoleMode.default) { currentRole = userRoles[0].name; ctx.state.currentRole = userRoles[0].name;