FIX: new function to get all user permissions

This commit is contained in:
Gabriel Rosa
2022-10-14 11:33:15 -03:00
parent 5a30bf08b2
commit ac73c0b046
4 changed files with 19 additions and 16 deletions
+10 -7
View File
@@ -85,13 +85,16 @@ export class UsersService implements OnModuleInit {
const res: { user: IUserByCustomer } = {
user: this.adjustUsersPayload([user])[0],
};
if (res.user.roles?.length) {
const allPermissions = res.user.roles.flatMap((r) => r.permissions);
const distinctPermissions = Array.from(
new Set(allPermissions.map((p) => p.claim)),
);
res.user.permissions = distinctPermissions;
}
const { permissions } = await lastValueFrom(
this.usersClientService.GetUserPermissions({ id }),
).catch((error) => {
this.logger.error('UsersService.findOneById - GetUserPermissions', {
error,
});
const permissions: string[] = [];
return { permissions };
});
res.user.permissions = permissions;
return res;
}