From c5f527dcf5a68ddbbda608ea32bb87b0cf8cbbf8 Mon Sep 17 00:00:00 2001 From: bptrgx <47859535+bptrgx@users.noreply.github.com> Date: Sun, 9 Jul 2023 19:10:34 +0200 Subject: [PATCH] Toggle accounts visibility from accounts page --- .../accounts-table.component.html | 5 ++-- .../accounts-table.component.scss | 9 +++++++ .../accounts-table.component.ts | 5 ++++ .../pages/accounts/accounts-page.component.ts | 26 +++++++++++++++++++ .../src/app/pages/accounts/accounts-page.html | 1 + 5 files changed, 44 insertions(+), 2 deletions(-) diff --git a/apps/client/src/app/components/accounts-table/accounts-table.component.html b/apps/client/src/app/components/accounts-table/accounts-table.component.html index 0b859321f..79a7690fe 100644 --- a/apps/client/src/app/components/accounts-table/accounts-table.component.html +++ b/apps/client/src/app/components/accounts-table/accounts-table.component.html @@ -5,9 +5,10 @@ class="d-none d-lg-table-cell px-1" mat-header-cell > - +
- + +
(); + @Output() accountToggleExcluded = new EventEmitter(); @Output() accountToUpdate = new EventEmitter(); @ViewChild(MatSort) sort: MatSort; @@ -87,6 +88,10 @@ export class AccountsTableComponent implements OnChanges, OnDestroy, OnInit { } } + public onToggleExcluded(aAccount: AccountModel) { + this.accountToggleExcluded.emit(aAccount); + } + public onOpenAccountDetailDialog(accountId: string) { this.router.navigate([], { queryParams: { accountId, accountDetailDialog: true } diff --git a/apps/client/src/app/pages/accounts/accounts-page.component.ts b/apps/client/src/app/pages/accounts/accounts-page.component.ts index 96bd06816..d09e913e9 100644 --- a/apps/client/src/app/pages/accounts/accounts-page.component.ts +++ b/apps/client/src/app/pages/accounts/accounts-page.component.ts @@ -144,6 +144,32 @@ export class AccountsPageComponent implements OnDestroy, OnInit { }); } + public onToggleExcluded(aAccount: AccountModel) { + let account: UpdateAccountDto = { + accountType: aAccount.accountType, + balance: aAccount.balance, + comment: aAccount.comment, + currency: aAccount.currency, + id: aAccount.id, + isExcluded: !(aAccount.isExcluded), + name: aAccount.name, + platformId: aAccount.platformId + } + this.dataService + .putAccount(account) + .pipe(takeUntil(this.unsubscribeSubject)) + .subscribe({ + next: () => { + this.userService + .get(true) + .pipe(takeUntil(this.unsubscribeSubject)) + .subscribe(); + + this.fetchAccounts(); + } + }); + } + public onUpdateAccount(aAccount: AccountModel) { this.router.navigate([], { queryParams: { accountId: aAccount.id, editDialog: true } diff --git a/apps/client/src/app/pages/accounts/accounts-page.html b/apps/client/src/app/pages/accounts/accounts-page.html index 77c487f98..b54165549 100644 --- a/apps/client/src/app/pages/accounts/accounts-page.html +++ b/apps/client/src/app/pages/accounts/accounts-page.html @@ -13,6 +13,7 @@ [totalValueInBaseCurrency]="totalValueInBaseCurrency" [transactionCount]="transactionCount" (accountDeleted)="onDeleteAccount($event)" + (accountToggleExcluded)="onToggleExcluded($event)" (accountToUpdate)="onUpdateAccount($event)" >