From be68be2846e61d71b07f16c6fd5ec9480d123dec Mon Sep 17 00:00:00 2001
From: Daniel Appelgren
Date: Tue, 28 Sep 2021 13:47:26 +0200
Subject: [PATCH] =?UTF-8?q?feature(Deltagarlista):=20Ny=20kolumn=20"Effekt?=
=?UTF-8?q?"=20i=20genomf=C3=B6randeh=C3=A4ndelser=20(TV-703)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Squashed commit of the following:
commit 4ee981be8779922ce12e4a3158a11186a8666ebe
Author: Daniel Appelgren
Date: Tue Sep 28 13:34:03 2021 +0200
Ny kolymn under genomförandehändelser
---
...agare-list-handelser-dialog.component.html | 58 ++++++++++---------
.../shared/models/deltagare-handelse.model.ts | 39 ++++++++++++-
.../api/deltagare-handelser-api.service.ts | 10 +++-
.../scripts/deltagare-handelser.js | 16 ++++-
4 files changed, 89 insertions(+), 34 deletions(-)
diff --git a/apps/mina-sidor-fa/src/app/pages/deltagare/components/deltagare-list/deltagare-list-handelser-dialog/deltagare-list-handelser-dialog.component.html b/apps/mina-sidor-fa/src/app/pages/deltagare/components/deltagare-list/deltagare-list-handelser-dialog/deltagare-list-handelser-dialog.component.html
index b530f48..b8e74ad 100644
--- a/apps/mina-sidor-fa/src/app/pages/deltagare/components/deltagare-list/deltagare-list-handelser-dialog/deltagare-list-handelser-dialog.component.html
+++ b/apps/mina-sidor-fa/src/app/pages/deltagare/components/deltagare-list/deltagare-list-handelser-dialog/deltagare-list-handelser-dialog.component.html
@@ -4,38 +4,40 @@
- 0; else noEvents"
- >
-
- Lista med alla händelser för {{deltagare?.fullName}}
-
-
- | Inkom |
- Händelse |
- Datum för händelse |
- Datum förklaring |
-
-
-
+ 0; else noEvents"
+ >
+
+ Lista med alla händelser för {{deltagare?.fullName}}
+
+
+ | Inkom |
+ Händelse |
+ Effekt |
+
+
+
-
- | {{handelse.receivedDate | date}} |
-
+ |
+ | {{handelse.receivedDate | date}} |
+
+ {{handelse.description}} |
+
+
+ {{handelse.effectDescription}}: {{handelse.effectDate | date }}
+
+ |
+
+
+
{{handelse.description}} |
- {{handelse.tidpunkt | date }} |
- {{handelse.tidpunktDescription}} |
-
-
-
- {{handelse.description}} |
-
-
+
+
-
-
-
+
+
+
diff --git a/apps/mina-sidor-fa/src/app/shared/models/deltagare-handelse.model.ts b/apps/mina-sidor-fa/src/app/shared/models/deltagare-handelse.model.ts
index 1f0a48e..b4480c5 100644
--- a/apps/mina-sidor-fa/src/app/shared/models/deltagare-handelse.model.ts
+++ b/apps/mina-sidor-fa/src/app/shared/models/deltagare-handelse.model.ts
@@ -1,4 +1,27 @@
+const GENOMFORANDEHANDELSE_EFFECT_MAP = {
+ Inrapporteringsdatum_GP: 'Inskickad datum',
+ Godkannandedatum_GP: 'Godkänd datum',
+ Avvisatdatum_GP: 'Ej godkänd datum',
+ Inrapporteringsdatum_PR: 'Inrapporterad datum',
+ Godkannandedatum_PR: 'Godkänd datum',
+ Avvisatdatum_PR: 'Ej godkänd datum',
+ Inrapporteringsdatum_SR: 'Inskickad datum',
+ Godkannandedatum_SR: 'Godkänd datum',
+ Avvisatdatum_SR: 'Ej godkänd datum',
+ Handlaggning_startad: 'Handläggning startad',
+ Andringsbeslutdatum: 'Ändringsbeslut datum',
+ Slut_avropsperiod: 'Nytt slutdatum',
+};
+
export interface DeltagareHandelse {
+ description: string;
+ receivedDate: Date;
+ isAvbrott: boolean;
+ effectDate: Date;
+ effectDescription: string;
+}
+
+interface DeltagareHandelseApiResponse {
description: string;
receivedDate: Date;
isAvbrott: boolean;
@@ -6,6 +29,18 @@ export interface DeltagareHandelse {
tidpunktDescription: string;
}
-export interface DeltagareHandelseApiResponse {
- data: DeltagareHandelse[];
+export interface DeltagareHandelserApiResponse {
+ data: DeltagareHandelseApiResponse[];
+}
+
+export function mapDeltagareHandelseApiResponse(
+ deltagareHandelseApiResponse: DeltagareHandelseApiResponse
+): DeltagareHandelse {
+ const { description, receivedDate, isAvbrott } = deltagareHandelseApiResponse;
+ const effectDate = deltagareHandelseApiResponse.tidpunkt;
+ const effectDescription =
+ GENOMFORANDEHANDELSE_EFFECT_MAP[deltagareHandelseApiResponse.tidpunktDescription] ??
+ deltagareHandelseApiResponse.tidpunktDescription ??
+ '';
+ return { description, receivedDate, isAvbrott, effectDate, effectDescription };
}
diff --git a/apps/mina-sidor-fa/src/app/shared/services/api/deltagare-handelser-api.service.ts b/apps/mina-sidor-fa/src/app/shared/services/api/deltagare-handelser-api.service.ts
index 6517ca2..4f44fce 100644
--- a/apps/mina-sidor-fa/src/app/shared/services/api/deltagare-handelser-api.service.ts
+++ b/apps/mina-sidor-fa/src/app/shared/services/api/deltagare-handelser-api.service.ts
@@ -1,7 +1,11 @@
import { HttpClient } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { environment } from '@msfa-environment';
-import { DeltagareHandelse, DeltagareHandelseApiResponse } from '@msfa-models/deltagare-handelse.model';
+import {
+ DeltagareHandelse,
+ DeltagareHandelserApiResponse,
+ mapDeltagareHandelseApiResponse,
+} from '@msfa-models/deltagare-handelse.model';
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators';
@@ -18,11 +22,11 @@ export class DeltagareHandelserApiService {
}
return this.httpClient
- .get(`${this._apiBaseUrl}/deltagare/${genomforandeReferens}/handelser`)
+ .get(`${this._apiBaseUrl}/deltagare/${genomforandeReferens}/handelser`)
.pipe(
map(({ data }) => {
if (data) {
- return data;
+ return data.map(genomforandeHandelse => mapDeltagareHandelseApiResponse(genomforandeHandelse));
}
})
);
diff --git a/mock-api/mina-sidor-fa/scripts/deltagare-handelser.js b/mock-api/mina-sidor-fa/scripts/deltagare-handelser.js
index 2a09b4d..77a734d 100644
--- a/mock-api/mina-sidor-fa/scripts/deltagare-handelser.js
+++ b/mock-api/mina-sidor-fa/scripts/deltagare-handelser.js
@@ -13,7 +13,21 @@ const HANDELSER = [
'Byte av leverantör bifall',
];
-const TIDPUNKT_DESCRIPTION = ['Handläggning startad', 'Inrapporteringsdatum slutredovisning'];
+const TIDPUNKT_DESCRIPTION = [
+ 'Inrapporteringsdatum_GP',
+ 'Godkannandedatum_GP',
+ 'Avvisatdatum_GP',
+ 'Inrapporteringsdatum_PR',
+ 'Godkannandedatum_PR',
+ 'Avvisatdatum_PR',
+ 'Inrapporteringsdatum_SR',
+ 'Godkannandedatum_SR',
+ 'Avvisatdatum_SR',
+ 'Handlaggning_startad',
+ 'Andringsbeslutdatum',
+ 'Slut_avropsperiod',
+ '',
+];
function generateHandelser(amount = 10) {
const handelser = [];