From e4f5802f976fd5eb3f490a1e016b7b0f23c68d14 Mon Sep 17 00:00:00 2001 From: Erik Tiekstra Date: Wed, 1 Sep 2021 10:26:05 +0200 Subject: [PATCH] Changes to some models and data coming from API --- .../employee-card.component.html | 19 +++++------- .../employee-card/employee-card.component.ts | 3 +- .../employee-form/employee-form.component.ts | 12 +++---- .../employees-list.component.html | 13 +++++--- .../deltagare-card.component.html | 6 ++-- .../src/app/shared/enums/role.enum.ts | 9 +++--- .../src/app/shared/models/role.model.ts | 31 ++++++++----------- .../shared/services/api/avrop-api.service.ts | 14 ++++++--- .../shared/services/api/employee.service.ts | 10 +++--- 9 files changed, 55 insertions(+), 62 deletions(-) diff --git a/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-card/employee-card.component.html b/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-card/employee-card.component.html index f520b2d..39ca6cc 100644 --- a/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-card/employee-card.component.html +++ b/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-card/employee-card.component.html @@ -2,7 +2,9 @@
- Redigera + Redigera

{{ employee.fullName }}

Här kan du se och ändra personalkontots behörigheter. Ändra behörighet genom att klicka på redigera.

@@ -40,7 +42,7 @@ Kontot har behörighet till alla utförande verksamheter och utförande adresser inom organisationen.

-
+
- + - {{ accordionExpanded ? 'Dölj' : 'Visa' }} - {{utforandeverksamhet.adresser.length}} + {{ accordionExpanded ? 'Dölj' : 'Visa' }} {{utforandeverksamhet.adresser.length}} {{utforandeverksamhet.adresser.length === 1 ? 'adress' : 'adresser'}}
    @@ -106,9 +105,7 @@ -

    - - Info saknas -

    + + Info saknas
    diff --git a/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-card/employee-card.component.ts b/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-card/employee-card.component.ts index 69a050b..7016250 100644 --- a/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-card/employee-card.component.ts +++ b/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-card/employee-card.component.ts @@ -1,6 +1,5 @@ import { ChangeDetectionStrategy, Component } from '@angular/core'; import { ActivatedRoute } from '@angular/router'; -import { RoleEnum } from '@msfa-enums/role.enum'; import { Employee } from '@msfa-models/employee.model'; import { Role } from '@msfa-models/role.model'; import { EmployeeService } from '@msfa-services/api/employee.service'; @@ -15,7 +14,7 @@ import { BehaviorSubject, Observable } from 'rxjs'; export class EmployeeCardComponent { private _pendingSelectedParticipants$ = new BehaviorSubject([]); employee$: Observable = this.employeeService.employee$; - allRoles: Role[] = Object.entries(RoleEnum).map(([key, value]) => ({ type: key as RoleEnum, name: value })); + allRoles: Role[] = this.employeeService.allRoles; constructor(private activatedRoute: ActivatedRoute, private employeeService: EmployeeService) { this.employeeService.setCurrentEmployeeId(this.activatedRoute.snapshot.params.employeeId); diff --git a/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-form/employee-form.component.ts b/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-form/employee-form.component.ts index f29e096..720867d 100644 --- a/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-form/employee-form.component.ts +++ b/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-form/employee-form.component.ts @@ -25,7 +25,7 @@ export class EmployeeFormComponent extends UnsubscribeDirective implements OnIni tjanster$: Observable = this.tjanstService.tjanster$; availableTjanster: FormSelectItem[] | null = null; - selectableRoles: Role[] | null = this.employeeService.getAllRoles(); + selectableRoles: Role[] = this.employeeService.allRoles; currentEmployeeRoles: Role[] | undefined | null = null; constructor( @@ -41,22 +41,18 @@ export class EmployeeFormComponent extends UnsubscribeDirective implements OnIni this.employeeService.setCurrentEmployeeId(this.activatedRoute.snapshot.params['employeeId']); const employeeDataSub = this.employee$.subscribe(employee => { this.employee = employee; - this.currentEmployeeRoles = employee?.roles - .map(role => mapRoleResponseToRoleObject(role)); + this.currentEmployeeRoles = employee?.roles.map(role => mapRoleResponseToRoleObject(role)); }); const tjanstRelatedDataSub = this.tjanster$.subscribe(tjanster => { const tjanstOptions: FormSelectItem[] = []; tjanster?.forEach(tjanst => { - tjanstOptions.push({name: tjanst?.name, value: tjanst?.code}); + tjanstOptions.push({ name: tjanst?.name, value: tjanst?.code }); }); this.availableTjanster = tjanstOptions; }); - this.subscriptionsList.push( - employeeDataSub, - tjanstRelatedDataSub - ); + this.subscriptionsList.push(employeeDataSub, tjanstRelatedDataSub); } updateEmployee(editEmployeeFormData: EditEmployeeFormData): void { diff --git a/apps/mina-sidor-fa/src/app/pages/administration/pages/employees/components/employees-list/employees-list.component.html b/apps/mina-sidor-fa/src/app/pages/administration/pages/employees/components/employees-list/employees-list.component.html index af518cb..f6fd359 100644 --- a/apps/mina-sidor-fa/src/app/pages/administration/pages/employees/components/employees-list/employees-list.component.html +++ b/apps/mina-sidor-fa/src/app/pages/administration/pages/employees/components/employees-list/employees-list.component.html @@ -31,17 +31,15 @@ {{ employee.fullName }} - + {{ employee.tjanster[0] }} (+{{employee.tjanster.length - 1}}) - - {{ employee.utforandeVerksamheter[0]['namn'] }} + + {{ employee.utforandeVerksamheter[0] }} (+{{employee.utforandeVerksamheter.length - 1}}) @@ -87,3 +85,8 @@ >
+ + + + Info saknas + diff --git a/apps/mina-sidor-fa/src/app/pages/deltagare/pages/deltagare-card/deltagare-card.component.html b/apps/mina-sidor-fa/src/app/pages/deltagare/pages/deltagare-card/deltagare-card.component.html index bd75462..a96c484 100644 --- a/apps/mina-sidor-fa/src/app/pages/deltagare/pages/deltagare-card/deltagare-card.component.html +++ b/apps/mina-sidor-fa/src/app/pages/deltagare/pages/deltagare-card/deltagare-card.component.html @@ -203,9 +203,7 @@ -

- - Info saknas -

+ + Info saknas
diff --git a/apps/mina-sidor-fa/src/app/shared/enums/role.enum.ts b/apps/mina-sidor-fa/src/app/shared/enums/role.enum.ts index d030759..c11c713 100644 --- a/apps/mina-sidor-fa/src/app/shared/enums/role.enum.ts +++ b/apps/mina-sidor-fa/src/app/shared/enums/role.enum.ts @@ -1,7 +1,6 @@ export enum RoleEnum { - OrganizationUser = 'OrganizationUser', // Default role - ReportAndPlanning = 'ReportAndPlanning', - ReceiveDeltagare = 'ReceiveDeltagare', - AuthAdmin = 'AuthAdmin', - ContactPerson = 'ContactPerson', + MSFA_AuthAdmin = 'MSFA_AuthAdmin', + MSFA_ReceiveDeltagare = 'MSFA_ReceiveDeltagare', + MSFA_ReportAndPlanning = 'MSFA_ReportAndPlanning', + MSFA_Standard = 'MSFA_Standard', // Default role } diff --git a/apps/mina-sidor-fa/src/app/shared/models/role.model.ts b/apps/mina-sidor-fa/src/app/shared/models/role.model.ts index 93ede18..49a06e5 100644 --- a/apps/mina-sidor-fa/src/app/shared/models/role.model.ts +++ b/apps/mina-sidor-fa/src/app/shared/models/role.model.ts @@ -6,33 +6,28 @@ export interface Role { } export function mapRoleResponseToRoleObject(type: string): Role { - switch(type) { - case 'OrganizationUser': + switch (type) { + case 'MSFA_Standard': return { - name: 'Basanvändare', - type: RoleEnum[type] + name: 'Basanvändare', + type: RoleEnum[type], }; - case 'ReportAndPlanning': + case 'MSFA_ReportAndPlanning': return { - name: 'Rapportering, planering och information om deltagare', - type: RoleEnum[type] + name: 'Rapportering, planering och information om deltagare', + type: RoleEnum[type], }; - case 'ReceiveDeltagare': + case 'MSFA_ReceiveDeltagare': return { name: 'Ta emot deltagare', - type: RoleEnum[RoleEnum[type]] + type: RoleEnum[RoleEnum[type]], }; - case 'AuthAdmin': + case 'MSFA_AuthAdmin': return { - name: 'Administrera behörigheter', - type: RoleEnum[RoleEnum[type]] - }; - case 'ContactPerson': - return { - name: 'Kontaktperson', - type: RoleEnum[type] + name: 'Administrera behörigheter', + type: RoleEnum[RoleEnum[type]], }; default: return; } -} \ No newline at end of file +} diff --git a/apps/mina-sidor-fa/src/app/shared/services/api/avrop-api.service.ts b/apps/mina-sidor-fa/src/app/shared/services/api/avrop-api.service.ts index 7498923..b3e82ee 100644 --- a/apps/mina-sidor-fa/src/app/shared/services/api/avrop-api.service.ts +++ b/apps/mina-sidor-fa/src/app/shared/services/api/avrop-api.service.ts @@ -50,12 +50,16 @@ export class AvropApiService { this._lockedAvropSnapshot$.next(avrop); - return this.httpClient.get<{ data: HandledareResponse[] }>(`${this._apiBaseUrl}/handledare`).pipe( - map(({ data }) => data.map(handledare => mapHandledareResponseToHandledare(handledare))), - tap(handledare => { - this._availableHandledareSnapshot$.next(handledare); + return this.httpClient + .get<{ data: HandledareResponse[] }>(`${this._apiBaseUrl}/handledare`, { + params: { avropIds: avrop.map(a => a.id) }, }) - ); + .pipe( + map(({ data }) => data.map(handledare => mapHandledareResponseToHandledare(handledare))), + tap(handledare => { + this._availableHandledareSnapshot$.next(handledare); + }) + ); } fetchAvailableTjanster$(params: Params): Observable { diff --git a/apps/mina-sidor-fa/src/app/shared/services/api/employee.service.ts b/apps/mina-sidor-fa/src/app/shared/services/api/employee.service.ts index 9a02a01..2a1766d 100644 --- a/apps/mina-sidor-fa/src/app/shared/services/api/employee.service.ts +++ b/apps/mina-sidor-fa/src/app/shared/services/api/employee.service.ts @@ -190,15 +190,17 @@ export class EmployeeService extends UnsubscribeDirective { } public updateEmployeeData(employeeData: Employee): Observable { - return /* this.httpClient.put<{ id: string }>(`${this._apiBaseUrl}/${employeeData.id}`, + return; /* this.httpClient.put<{ id: string }>(`${this._apiBaseUrl}/${employeeData.id}`, mapEmployeeToRequestData(employeeData), API_HEADERS).pipe( map(({ id }) => id), catchError(error => throwError({ message: error as string, type: ErrorType.API })) ); */ } - public getAllRoles(): Role[] { - const allAuths: string[] = Object.keys(RoleEnum).filter((item) => {return isNaN(Number(item))}); - return allAuths.map(key => mapRoleResponseToRoleObject(key)); + public get allRoles(): Role[] { + const allAuths: string[] = Object.keys(RoleEnum).filter(item => { + return isNaN(Number(item)); + }); + return allAuths.map(key => mapRoleResponseToRoleObject(key)); } }