feat(employee): Matched models to the API and adjusted mock-api. (TV-346)
Squashed commit of the following: commit 0f10a7864960cae47694212042f9d58053b05a0c Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se> Date: Wed Aug 18 14:13:15 2021 +0200 Changed tjanst and utforandeVerksamhet to plural commit 3ffe861d8721692d0b49b0f333f2f52186b23560 Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se> Date: Wed Aug 18 12:26:43 2021 +0200 Updated fetching single employee in mock-api commit ae101885a90367b86b77faadaa171816aa2ffcaa Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se> Date: Wed Aug 18 12:23:28 2021 +0200 Changed models for employees and fixed mock-api
This commit is contained in:
@@ -31,13 +31,17 @@
|
||||
<a [routerLink]="employee.id" class="employees-list__link">{{ employee.fullName }}</a>
|
||||
</th>
|
||||
<td>
|
||||
<ng-container *ngFor="let service of employee.services; let last = last">
|
||||
{{ service.name }}<ng-container *ngIf="!last">, </ng-container>
|
||||
<ng-container *ngIf="employee.tjanster.length">
|
||||
{{ employee.tjanster[0] }}<ng-container *ngIf="employee.tjanster.length > 1">
|
||||
(+{{employee.tjanster.length - 1}})</ng-container
|
||||
>
|
||||
</ng-container>
|
||||
</td>
|
||||
<td>
|
||||
<ng-container *ngFor="let organization of employee.organizations; let last = last">
|
||||
{{ organization.address.city }}<ng-container *ngIf="!last">, </ng-container>
|
||||
<ng-container *ngIf="employee.utforandeVerksamheter.length">
|
||||
{{ employee.utforandeVerksamheter[0] }}<ng-container *ngIf="employee.utforandeVerksamheter.length > 1">
|
||||
(+{{employee.utforandeVerksamheter.length - 1}})</ng-container
|
||||
>
|
||||
</ng-container>
|
||||
</td>
|
||||
<td>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
||||
import { SortOrder } from '@msfa-enums/sort-order.enum';
|
||||
import { Employee } from '@msfa-models/employee.model';
|
||||
import { EmployeeCompact } from '@msfa-models/employee.model';
|
||||
import { PaginationMeta } from '@msfa-models/pagination-meta.model';
|
||||
import { Sort } from '@msfa-models/sort.model';
|
||||
|
||||
@@ -11,21 +11,21 @@ import { Sort } from '@msfa-models/sort.model';
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
})
|
||||
export class EmployeesListComponent {
|
||||
@Input() employees: Employee[];
|
||||
@Input() employees: EmployeeCompact[];
|
||||
@Input() paginationMeta: PaginationMeta;
|
||||
@Input() sort: Sort<keyof Employee>;
|
||||
@Output() sorted = new EventEmitter<keyof Employee>();
|
||||
@Input() sort: Sort<keyof EmployeeCompact>;
|
||||
@Output() sorted = new EventEmitter<keyof EmployeeCompact>();
|
||||
@Output() paginated = new EventEmitter<number>();
|
||||
|
||||
columnHeaders: { label: string; key: keyof Employee }[] = [
|
||||
columnHeaders: { label: string; key: keyof EmployeeCompact }[] = [
|
||||
{ label: 'Namn', key: 'fullName' },
|
||||
{
|
||||
label: 'Tjänst',
|
||||
key: 'services',
|
||||
key: 'tjanster',
|
||||
},
|
||||
{
|
||||
label: 'Utförandeverksamheter',
|
||||
key: 'organizations',
|
||||
key: 'utforandeVerksamheter',
|
||||
},
|
||||
];
|
||||
|
||||
@@ -52,7 +52,7 @@ export class EmployeesListComponent {
|
||||
return end < this.count ? end : this.count;
|
||||
}
|
||||
|
||||
handleSort(key: keyof Employee): void {
|
||||
handleSort(key: keyof EmployeeCompact): void {
|
||||
this.sorted.emit(key);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
||||
import { IconType } from '@msfa-enums/icon-type.enum';
|
||||
import { Employee, EmployeesData } from '@msfa-models/employee.model';
|
||||
import { EmployeeCompact, EmployeesData } from '@msfa-models/employee.model';
|
||||
import { Sort } from '@msfa-models/sort.model';
|
||||
import { EmployeeService } from '@msfa-services/api/employee.service';
|
||||
import { BehaviorSubject, Observable } from 'rxjs';
|
||||
@@ -15,7 +15,7 @@ export class EmployeesComponent {
|
||||
private _searchValue$ = new BehaviorSubject<string>('');
|
||||
private _onlyEmployeesWithoutAuthorization$ = new BehaviorSubject<boolean>(false);
|
||||
employeesData$: Observable<EmployeesData> = this.employeeService.employeesData$;
|
||||
sort$: Observable<Sort<keyof Employee>> = this.employeeService.sort$;
|
||||
sort$: Observable<Sort<keyof EmployeeCompact>> = this.employeeService.sort$;
|
||||
iconType = IconType;
|
||||
|
||||
constructor(private employeeService: EmployeeService) {}
|
||||
@@ -32,7 +32,7 @@ export class EmployeesComponent {
|
||||
this._searchValue$.next($event.detail.target.value);
|
||||
}
|
||||
|
||||
handleEmployeesSort(key: keyof Employee): void {
|
||||
handleEmployeesSort(key: keyof EmployeeCompact): void {
|
||||
this.employeeService.setSort(key);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user