diff --git a/server/models/group/group.ts b/server/models/group/group.ts index daae7259..0f8b0ddd 100644 --- a/server/models/group/group.ts +++ b/server/models/group/group.ts @@ -290,7 +290,7 @@ export class Group extends TimeStamps implements Base { const allRoles = member.roles; const allRolesPermission = allRoles.map((roleName) => { - const p = group.roles.find((r) => r.name === roleName); + const p = group.roles.find((r) => String(r._id) === roleName); return p?.permissions ?? []; }); diff --git a/server/services/core/group/group.service.ts b/server/services/core/group/group.service.ts index 94794605..27de5d50 100644 --- a/server/services/core/group/group.service.ts +++ b/server/services/core/group/group.service.ts @@ -897,6 +897,7 @@ class GroupService extends TcService { ) .exec(); + this.cleanGroupInfoCache(groupId); const json = await this.notifyGroupInfoUpdate(ctx, group); return json; } @@ -936,6 +937,7 @@ class GroupService extends TcService { ) .exec(); + this.cleanGroupInfoCache(groupId); const json = await this.notifyGroupInfoUpdate(ctx, group); return json; } @@ -968,6 +970,7 @@ class GroupService extends TcService { roleName ); + this.cleanGroupInfoCache(groupId); const json = await this.notifyGroupInfoUpdate(ctx, group); return json; } @@ -1000,6 +1003,8 @@ class GroupService extends TcService { permissions ); + this.cleanGroupInfoCache(groupId); + this.cleanGroupAllUserPermissionCache(groupId); const json = await this.notifyGroupInfoUpdate(ctx, group); return json; }