From a92b0b2f27382a2408d4ea452ec3fb4c542b4db5 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Wed, 12 Aug 2026 13:44:47 +0200 Subject: [PATCH] Limit type filter in activities table component to used types --- apps/api/src/app/user/user.service.ts | 12 ++++++++-- .../holding-detail-dialog.component.ts | 7 +++++- .../activities-table.component.html | 10 ++------ .../activities-table.component.ts | 23 +++++++------------ .../migration.sql | 5 +++- prisma/schema.prisma | 3 ++- 6 files changed, 32 insertions(+), 28 deletions(-) diff --git a/apps/api/src/app/user/user.service.ts b/apps/api/src/app/user/user.service.ts index 7f06dbcb4..dde9b9e71 100644 --- a/apps/api/src/app/user/user.service.ts +++ b/apps/api/src/app/user/user.service.ts @@ -61,7 +61,7 @@ import { Injectable, Logger } from '@nestjs/common'; import { EventEmitter2 } from '@nestjs/event-emitter'; import { InjectThrottlerStorage, ThrottlerStorage } from '@nestjs/throttler'; import { Prisma, Role, User } from '@prisma/client'; -import { differenceInDays, subDays } from 'date-fns'; +import { differenceInDays, min, subDays } from 'date-fns'; import { isNil, without } from 'lodash'; import { createHmac } from 'node:crypto'; @@ -171,8 +171,16 @@ export class UserService { }) .sort(); + const datesOfFirstActivityByType = activitiesGroupedByType.map( + ({ _min }) => { + return _min.date; + } + ); + const dateOfFirstActivity = - activitiesGroupedByType[0]?._min.date ?? new Date(); + datesOfFirstActivityByType.length > 0 + ? min(datesOfFirstActivityByType) + : new Date(); const resolvedUserSettings = resolveUserSettings({ impersonationUserSettings: impersonationUser?.settings diff --git a/apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.component.ts b/apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.component.ts index 22585efc6..e85c2bf6b 100644 --- a/apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.component.ts +++ b/apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.component.ts @@ -647,7 +647,12 @@ export class GfHoldingDetailDialogComponent implements OnInit { this.dataService .postActivity(activity) - .pipe(takeUntilDestroyed(this.destroyRef)) + .pipe( + switchMap(() => { + return this.userService.get(true); + }), + takeUntilDestroyed(this.destroyRef) + ) .subscribe(() => { this.router.navigate( internalRoutes.portfolio.subRoutes.activities.routerLink diff --git a/libs/ui/src/lib/activities-table/activities-table.component.html b/libs/ui/src/lib/activities-table/activities-table.component.html index 049324dc7..4035322c6 100644 --- a/libs/ui/src/lib/activities-table/activities-table.component.html +++ b/libs/ui/src/lib/activities-table/activities-table.component.html @@ -2,17 +2,11 @@ class="align-items-center d-flex justify-content-end justify-content-lg-between" >