diff --git a/apps/red-ui/src/app/modules/dossier/dialogs/confirm-archive-dossier-dialog/confirm-archive-dossier-dialog.component.ts b/apps/red-ui/src/app/modules/dossier/dialogs/confirm-archive-dossier-dialog/confirm-archive-dossier-dialog.component.ts index 161eabde6..95df1236c 100644 --- a/apps/red-ui/src/app/modules/dossier/dialogs/confirm-archive-dossier-dialog/confirm-archive-dossier-dialog.component.ts +++ b/apps/red-ui/src/app/modules/dossier/dialogs/confirm-archive-dossier-dialog/confirm-archive-dossier-dialog.component.ts @@ -6,6 +6,7 @@ import { firstValueFrom } from 'rxjs'; import { Dossier } from '@red/domain'; import { ActiveDossiersService } from '@services/entity-services/active-dossiers.service'; import { ArchivedDossiersService } from '@services/entity-services/archived-dossiers.service'; +import { Router } from '@angular/router'; @Component({ templateUrl: './confirm-archive-dossier-dialog.component.html', @@ -20,6 +21,7 @@ export class ConfirmArchiveDossierDialogComponent { private readonly _activeDossiersService: ActiveDossiersService, private readonly _archivedDossiersService: ArchivedDossiersService, private readonly _toaster: Toaster, + private readonly _router: Router, @Inject(MAT_DIALOG_DATA) readonly dossier: Dossier, readonly dialogRef: MatDialogRef, ) {} @@ -32,6 +34,7 @@ export class ConfirmArchiveDossierDialogComponent { if (this.valid) { this._loadingService.start(); await firstValueFrom(this._archivedDossiersService.archive([this.dossier])); + await this._router.navigate(['main', 'dossiers']); this._toaster.success(_('dossier-listing.archive.archive-succeeded'), { params: this.dossier }); this.dialogRef.close(true); this._loadingService.stop(); diff --git a/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/general-info/edit-dossier-general-info.component.ts b/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/general-info/edit-dossier-general-info.component.ts index 7ea5e5616..710b299c3 100644 --- a/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/general-info/edit-dossier-general-info.component.ts +++ b/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/general-info/edit-dossier-general-info.component.ts @@ -8,7 +8,7 @@ import { PermissionsService } from '@services/permissions.service'; import { Router } from '@angular/router'; import { MatDialogRef } from '@angular/material/dialog'; import { EditDossierDialogComponent } from '../edit-dossier-dialog.component'; -import { ConfirmationDialogInput, IconButtonTypes, TitleColors, Toaster } from '@iqser/common-ui'; +import { ConfirmationDialogInput, IconButtonTypes, LoadingService, TitleColors, Toaster } from '@iqser/common-ui'; import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker'; import { DossierTemplatesService } from '@services/entity-services/dossier-templates.service'; import { DossierStatsService } from '@services/entity-services/dossier-stats.service'; @@ -47,6 +47,7 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti private readonly _router: Router, private readonly _editDossierDialogRef: MatDialogRef, private readonly _toaster: Toaster, + private readonly _loadingService: LoadingService, private readonly _translateService: TranslateService, ) {} @@ -141,9 +142,12 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti }, }); this._dialogService.openDialog('confirm', null, data, async () => { + this._loadingService.start(); await firstValueFrom(this._trashDossiersService.delete(this.dossier)); this._editDossierDialogRef.close(); - this._router.navigate(['main', 'dossiers']).then(() => this.#notifyDossierDeleted()); + await this._router.navigate(['main', 'dossiers']); + this._loadingService.stop(); + this._toaster.success(_('edit-dossier-dialog.delete-successful'), { params: this.dossier }); }); } @@ -172,10 +176,6 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti }); } - #notifyDossierDeleted() { - this._toaster.success(_('edit-dossier-dialog.delete-successful'), { params: this.dossier }); - } - #filterInvalidDossierTemplates() { this.dossierTemplates = this._dossierTemplatesService.all.filter(r => { if (this.dossier?.dossierTemplateId === r.dossierTemplateId) {