fix(plugin-acl): fix role in cache (#6674)

This commit is contained in:
Junyi 2025-04-15 23:44:35 +08:00 committed by GitHub
parent dbed7f71b0
commit aefd78bc09
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -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;