From ddb67fc40ddc644843b41dbf88e8331269d7decc Mon Sep 17 00:00:00 2001 From: Constantin Simonis Date: Thu, 9 Jan 2025 13:52:08 +0100 Subject: [PATCH] fix bug where tables reload on action cancel --- src/app/employee/create/create.component.ts | 2 +- src/app/employee/delete/delete.component.ts | 2 +- src/app/employee/edit/edit.component.ts | 2 +- src/app/employee/table/table.component.ts | 22 +++++++++++++-------- 4 files changed, 17 insertions(+), 11 deletions(-) diff --git a/src/app/employee/create/create.component.ts b/src/app/employee/create/create.component.ts index 83cb773..b377102 100644 --- a/src/app/employee/create/create.component.ts +++ b/src/app/employee/create/create.component.ts @@ -56,6 +56,6 @@ export class CreateComponent implements OnInit { } this.employeeService.create(this.employeeForm.value as Employee).subscribe(); - this.dialogRef.close(); + this.dialogRef.close(true); } } diff --git a/src/app/employee/delete/delete.component.ts b/src/app/employee/delete/delete.component.ts index b4af490..4d76523 100644 --- a/src/app/employee/delete/delete.component.ts +++ b/src/app/employee/delete/delete.component.ts @@ -31,6 +31,6 @@ export class DeleteComponent { deleteEmployee(id: number) { this.apiService.deleteById(id).subscribe(); - this.dialogRef.close() + this.dialogRef.close(true); } } diff --git a/src/app/employee/edit/edit.component.ts b/src/app/employee/edit/edit.component.ts index 535f94d..2259918 100644 --- a/src/app/employee/edit/edit.component.ts +++ b/src/app/employee/edit/edit.component.ts @@ -63,6 +63,6 @@ export class EditComponent implements OnInit { } this.employeeService.update(this.employeeForm.value as Employee, this.employee.id).subscribe(); - this.dialogRef.close(); + this.dialogRef.close(true); } } diff --git a/src/app/employee/table/table.component.ts b/src/app/employee/table/table.component.ts index 5ae8adb..0936016 100644 --- a/src/app/employee/table/table.component.ts +++ b/src/app/employee/table/table.component.ts @@ -40,7 +40,7 @@ import {DetailsComponent} from "../details/details.component"; templateUrl: './table.component.html', styleUrl: './table.component.css' }) -export class TableComponent implements OnInit{ +export class TableComponent implements OnInit { private readonly apiService: EmployeeApiService = inject(EmployeeApiService); private readonly snackBar: MatSnackBar = inject(MatSnackBar); private readonly matDialog: MatDialog = inject(MatDialog); @@ -76,24 +76,30 @@ export class TableComponent implements OnInit{ protected openDeleteDialogue(employee: Employee): void { this.matDialog.open(DeleteComponent, {data: employee}) .afterClosed() - .subscribe(() => { - this.employees$ = this.fetchEmployees(); + .subscribe((deleted: boolean) => { + if (deleted) { + this.employees$ = this.fetchEmployees(); + } }); } protected showCreateEmployeeModal() { this.matDialog.open(CreateComponent) .afterClosed() - .subscribe(() => { - this.employees$ = this.fetchEmployees(); - }); + .subscribe((created: boolean) => { + if (created) { + this.employees$ = this.fetchEmployees(); + } + }); } protected showEditEmployeeModal(employee: Employee) { this.matDialog.open(EditComponent, {data: employee}) .afterClosed() - .subscribe(() => { - this.employees$ = this.fetchEmployees(); + .subscribe((edited: boolean) => { + if (edited) { + this.employees$ = this.fetchEmployees(); + } }); } -- 2.47.2