|
|
@ -98,6 +98,7 @@ export class UserService { |
|
|
|
|
|
|
|
|
public async getUser( |
|
|
public async getUser( |
|
|
{ accounts, id, permissions, settings, subscription }: UserWithSettings, |
|
|
{ accounts, id, permissions, settings, subscription }: UserWithSettings, |
|
|
|
|
|
impersonationUserId: string, |
|
|
aLocale = locale |
|
|
aLocale = locale |
|
|
): Promise<IUser> { |
|
|
): Promise<IUser> { |
|
|
const userData = await Promise.all([ |
|
|
const userData = await Promise.all([ |
|
|
@ -108,6 +109,14 @@ export class UserService { |
|
|
orderBy: { alias: 'asc' }, |
|
|
orderBy: { alias: 'asc' }, |
|
|
where: { granteeUserId: id } |
|
|
where: { granteeUserId: id } |
|
|
}), |
|
|
}), |
|
|
|
|
|
this.prismaService.account.findMany({ |
|
|
|
|
|
orderBy: { |
|
|
|
|
|
name: 'asc' |
|
|
|
|
|
}, |
|
|
|
|
|
where: { |
|
|
|
|
|
userId: impersonationUserId |
|
|
|
|
|
} |
|
|
|
|
|
}), |
|
|
this.prismaService.order.count({ |
|
|
this.prismaService.order.count({ |
|
|
where: { userId: id } |
|
|
where: { userId: id } |
|
|
}), |
|
|
}), |
|
|
@ -121,9 +130,10 @@ export class UserService { |
|
|
]); |
|
|
]); |
|
|
|
|
|
|
|
|
const access = userData[0]; |
|
|
const access = userData[0]; |
|
|
const activitiesCount = userData[1]; |
|
|
const impersonationAccounts = userData[1]; |
|
|
const firstActivity = userData[2]; |
|
|
const activitiesCount = userData[2]; |
|
|
let tags = userData[3].filter((tag) => { |
|
|
const firstActivity = userData[3]; |
|
|
|
|
|
let tags = userData[4].filter((tag) => { |
|
|
return tag.id !== TAG_ID_EXCLUDE_FROM_ANALYSIS; |
|
|
return tag.id !== TAG_ID_EXCLUDE_FROM_ANALYSIS; |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
@ -146,7 +156,6 @@ export class UserService { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
return { |
|
|
return { |
|
|
accounts, |
|
|
|
|
|
activitiesCount, |
|
|
activitiesCount, |
|
|
id, |
|
|
id, |
|
|
permissions, |
|
|
permissions, |
|
|
@ -160,6 +169,7 @@ export class UserService { |
|
|
permissions: accessItem.permissions |
|
|
permissions: accessItem.permissions |
|
|
}; |
|
|
}; |
|
|
}), |
|
|
}), |
|
|
|
|
|
accounts: impersonationUserId ? impersonationAccounts : accounts, |
|
|
dateOfFirstActivity: firstActivity?.date ?? new Date(), |
|
|
dateOfFirstActivity: firstActivity?.date ?? new Date(), |
|
|
settings: { |
|
|
settings: { |
|
|
...(settings.settings as UserSettings), |
|
|
...(settings.settings as UserSettings), |
|
|
|