Browse Source

Extend user detail dialog

pull/5970/head
Thomas Kaul 1 month ago
parent
commit
2a56a1de02
  1. 4
      apps/api/src/app/admin/admin.service.ts
  2. 27
      apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html
  3. 4
      libs/common/src/lib/interfaces/admin-user.interface.ts

4
apps/api/src/app/admin/admin.service.ts

@ -876,6 +876,7 @@ export class AdminService {
},
createdAt: true,
id: true,
provider: true,
role: true,
subscriptions: {
orderBy: {
@ -892,7 +893,7 @@ export class AdminService {
});
return usersWithAnalytics.map(
({ _count, analytics, createdAt, id, role, subscriptions }) => {
({ _count, analytics, createdAt, id, provider, role, subscriptions }) => {
const daysSinceRegistration =
differenceInDays(new Date(), createdAt) + 1;
const engagement = analytics
@ -909,6 +910,7 @@ export class AdminService {
createdAt,
engagement,
id,
provider,
role,
subscription,
accountCount: _count.accounts || 0,

27
apps/client/src/app/components/user-detail-dialog/user-detail-dialog.html

@ -23,17 +23,38 @@
</div>
<div class="mb-3 row">
<div class="col-6 mb-3">
<gf-value
i18n
size="medium"
[locale]="data.locale"
[value]="user?.provider"
>Authentication</gf-value
>
</div>
<div class="col-6 mb-3">
<gf-value i18n size="medium" [value]="user?.role">Role</gf-value>
</div>
@if (data.hasPermissionForSubscription) {
</div>
@if (data.hasPermissionForSubscription) {
<div class="mb-3 row">
<div class="col-6 mb-3">
<gf-value
i18n
size="medium"
[locale]="data.locale"
[value]="user?.subscription ? 'Premium' : 'Basic'"
>Membership</gf-value
>
</div>
<div class="col-6 mb-3">
<gf-value i18n size="medium" [value]="user?.country"
>Country</gf-value
>
</div>
}
</div>
</div>
}
<div class="mb-3 row">
<div class="col-6 mb-3">

4
libs/common/src/lib/interfaces/admin-user.interface.ts

@ -1,4 +1,4 @@
import { Role } from '@prisma/client';
import { Provider, Role, Subscription } from '@prisma/client';
export interface AdminUser {
accountCount: number;
@ -9,5 +9,7 @@ export interface AdminUser {
engagement: number;
id: string;
lastActivity: Date;
provider: Provider;
role: Role;
subscription?: Subscription;
}

Loading…
Cancel
Save