From d23dfadbd0f25fd54966bfcf5f388b6227b4851b Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 17 Apr 2025 17:47:36 +0200 Subject: [PATCH] Bugfix/fix active subscription in user table of admin control (#4544) * Fix active subscription * Update changelog --- apps/api/src/app/admin/admin.module.ts | 2 -- apps/api/src/app/admin/admin.service.ts | 27 +++++++++++-------- .../components/admin-users/admin-users.html | 2 +- 3 files changed, 17 insertions(+), 14 deletions(-) diff --git a/apps/api/src/app/admin/admin.module.ts b/apps/api/src/app/admin/admin.module.ts index d94cdd963..54145fa27 100644 --- a/apps/api/src/app/admin/admin.module.ts +++ b/apps/api/src/app/admin/admin.module.ts @@ -1,5 +1,4 @@ import { OrderModule } from '@ghostfolio/api/app/order/order.module'; -import { SubscriptionModule } from '@ghostfolio/api/app/subscription/subscription.module'; import { TransformDataSourceInRequestModule } from '@ghostfolio/api/interceptors/transform-data-source-in-request/transform-data-source-in-request.module'; import { ApiModule } from '@ghostfolio/api/services/api/api.module'; import { BenchmarkModule } from '@ghostfolio/api/services/benchmark/benchmark.module'; @@ -31,7 +30,6 @@ import { QueueModule } from './queue/queue.module'; PrismaModule, PropertyModule, QueueModule, - SubscriptionModule, SymbolProfileModule, TransformDataSourceInRequestModule ], diff --git a/apps/api/src/app/admin/admin.service.ts b/apps/api/src/app/admin/admin.service.ts index 11218e8e7..f77d50aac 100644 --- a/apps/api/src/app/admin/admin.service.ts +++ b/apps/api/src/app/admin/admin.service.ts @@ -1,5 +1,4 @@ import { OrderService } from '@ghostfolio/api/app/order/order.service'; -import { SubscriptionService } from '@ghostfolio/api/app/subscription/subscription.service'; import { environment } from '@ghostfolio/api/environments/environment'; import { BenchmarkService } from '@ghostfolio/api/services/benchmark/benchmark.service'; import { ConfigurationService } from '@ghostfolio/api/services/configuration/configuration.service'; @@ -62,7 +61,6 @@ export class AdminService { private readonly orderService: OrderService, private readonly prismaService: PrismaService, private readonly propertyService: PropertyService, - private readonly subscriptionService: SubscriptionService, private readonly symbolProfileService: SymbolProfileService ) {} @@ -807,7 +805,17 @@ export class AdminService { createdAt: true, id: true, role: true, - Subscription: true + Subscription: { + orderBy: { + expiresAt: 'desc' + }, + take: 1, + where: { + expiresAt: { + gt: new Date() + } + } + } } }); @@ -819,14 +827,11 @@ export class AdminService { ? Analytics.activityCount / daysSinceRegistration : undefined; - const subscription = this.configurationService.get( - 'ENABLE_FEATURE_SUBSCRIPTION' - ) - ? this.subscriptionService.getSubscription({ - createdAt, - subscriptions: Subscription - }) - : undefined; + const subscription = + this.configurationService.get('ENABLE_FEATURE_SUBSCRIPTION') && + Subscription?.length > 0 + ? Subscription[0] + : undefined; return { createdAt, diff --git a/apps/client/src/app/components/admin-users/admin-users.html b/apps/client/src/app/components/admin-users/admin-users.html index e8725e70c..56b2e0eac 100644 --- a/apps/client/src/app/components/admin-users/admin-users.html +++ b/apps/client/src/app/components/admin-users/admin-users.html @@ -49,7 +49,7 @@ }" >{{ (element.id | slice: 0 : 5) + '...' }} - @if (element?.subscription?.type === 'Premium') { + @if (element.subscription?.expiresAt) {