From 609194d7b5f9f7ca9e7009fc7bb9a038b9019317 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=BAnar=20Vestmann?=
<43557895+RunarVestmann@users.noreply.github.com>
Date: Wed, 14 Aug 2024 12:21:31 +0000
Subject: [PATCH] feat(web): Journeyman list - display national id field
(#15645)
* Add national id field to journeyman table view
* Display publication date
* Allow for national id search
* Add field to gql model
* Change table header display name
---------
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
---
.../JourneymanList/JourneymanList.tsx | 20 ++++++++++++++++---
.../TableLists/JourneymanList/queries.ts | 1 +
.../src/lib/models/journeymanLicence.ts | 3 +++
libs/clients/syslumenn/src/clientConfig.json | 10 ++++++++++
.../src/lib/syslumennClient.types.ts | 1 +
.../src/lib/syslumennClient.utils.ts | 1 +
6 files changed, 33 insertions(+), 3 deletions(-)
diff --git a/apps/web/components/connected/syslumenn/TableLists/JourneymanList/JourneymanList.tsx b/apps/web/components/connected/syslumenn/TableLists/JourneymanList/JourneymanList.tsx
index 760e71baf749..53a2af36f2e1 100644
--- a/apps/web/components/connected/syslumenn/TableLists/JourneymanList/JourneymanList.tsx
+++ b/apps/web/components/connected/syslumenn/TableLists/JourneymanList/JourneymanList.tsx
@@ -31,7 +31,11 @@ import { GET_JOURNEYMAN_LICENCES_QUERY } from './queries'
const DEFAULT_PAGE_SIZE = 20
const DEFAULT_TABLE_MIN_HEIGHT = '800px'
-const SEARCH_KEYS: (keyof JourneymanLicence)[] = ['name', 'dateOfPublication']
+const SEARCH_KEYS: (keyof JourneymanLicence)[] = [
+ 'name',
+ 'dateOfPublication',
+ 'nationalId',
+]
interface JourneymanListProps {
slice: ConnectedComponent
@@ -113,6 +117,7 @@ const JourneymanList = ({ slice }: JourneymanListProps) => {
n('csvHeaderName', 'Nafn') as string,
n('csvHeaderProfession', 'Iðngrein') as string,
n('csvHeaderDateOfPublication', 'Útgáfuár') as string,
+ n('csvHeaderNationalId', 'Kennitala') as string,
]
const dataRows = []
for (const licence of licences) {
@@ -122,6 +127,7 @@ const JourneymanList = ({ slice }: JourneymanListProps) => {
licence.dateOfPublication // Útgáfuár
? format(new Date(licence.dateOfPublication), 'yyyy')
: '',
+ licence.nationalId ?? '',
])
}
return resolve(prepareCsvString(headerRow, dataRows))
@@ -262,8 +268,9 @@ const JourneymanList = ({ slice }: JourneymanListProps) => {
{n('name', 'Nafn')}
{n('profession', 'Iðngrein')}
+ {n('dateOfPublication', 'Útgáfuár')}
- {n('dateOfPublication', 'Útgáfuár')}
+ {n('nationalId', 'Kennitala')}
@@ -287,7 +294,7 @@ const JourneymanList = ({ slice }: JourneymanListProps) => {
{licences.dateOfPublication && (
-
+
{format(
new Date(licences.dateOfPublication),
'yyyy',
@@ -296,6 +303,13 @@ const JourneymanList = ({ slice }: JourneymanListProps) => {
)}
+
+
+
+ {licences.nationalId}
+
+
+
)
})}
diff --git a/apps/web/components/connected/syslumenn/TableLists/JourneymanList/queries.ts b/apps/web/components/connected/syslumenn/TableLists/JourneymanList/queries.ts
index d72d515b84b1..6faeb6b8f72a 100644
--- a/apps/web/components/connected/syslumenn/TableLists/JourneymanList/queries.ts
+++ b/apps/web/components/connected/syslumenn/TableLists/JourneymanList/queries.ts
@@ -7,6 +7,7 @@ export const GET_JOURNEYMAN_LICENCES_QUERY = gql`
name
dateOfPublication
profession
+ nationalId
}
}
}
diff --git a/libs/api/domains/syslumenn/src/lib/models/journeymanLicence.ts b/libs/api/domains/syslumenn/src/lib/models/journeymanLicence.ts
index de8287ed8762..3c5e6917aa63 100644
--- a/libs/api/domains/syslumenn/src/lib/models/journeymanLicence.ts
+++ b/libs/api/domains/syslumenn/src/lib/models/journeymanLicence.ts
@@ -11,6 +11,9 @@ class JourneymanLicence {
@Field({ nullable: true })
profession?: string
+
+ @Field({ nullable: true })
+ nationalId?: string
}
@ObjectType()
diff --git a/libs/clients/syslumenn/src/clientConfig.json b/libs/clients/syslumenn/src/clientConfig.json
index 5c155ba8c2fb..31578562e47c 100644
--- a/libs/clients/syslumenn/src/clientConfig.json
+++ b/libs/clients/syslumenn/src/clientConfig.json
@@ -3210,6 +3210,9 @@
"nafn": {
"type": "string"
},
+ "kennitala": {
+ "type": "string"
+ },
"idngrein": {
"type": "string"
},
@@ -3432,6 +3435,9 @@
"nafn": {
"type": "string"
},
+ "kennitala": {
+ "type": "string"
+ },
"starfsrettindi": {
"type": "string"
}
@@ -4626,6 +4632,10 @@
},
"malsvari": {
"$ref": "#/definitions/Malsvari"
+ },
+ "arfshlutfall": {
+ "type": "number",
+ "format": "decimal"
}
}
},
diff --git a/libs/clients/syslumenn/src/lib/syslumennClient.types.ts b/libs/clients/syslumenn/src/lib/syslumennClient.types.ts
index f9ed22d03a28..2fbec7d0e4f1 100644
--- a/libs/clients/syslumenn/src/lib/syslumennClient.types.ts
+++ b/libs/clients/syslumenn/src/lib/syslumennClient.types.ts
@@ -397,6 +397,7 @@ export interface JourneymanLicence {
name?: string
dateOfPublication?: Date
profession?: string
+ nationalId?: string
}
export interface ProfessionRight {
diff --git a/libs/clients/syslumenn/src/lib/syslumennClient.utils.ts b/libs/clients/syslumenn/src/lib/syslumennClient.utils.ts
index 41c72fa36426..8571820129dc 100644
--- a/libs/clients/syslumenn/src/lib/syslumennClient.utils.ts
+++ b/libs/clients/syslumenn/src/lib/syslumennClient.utils.ts
@@ -556,6 +556,7 @@ export const mapJourneymanLicence = (
name: licence.nafn,
dateOfPublication: licence.gildirFra,
profession: licence.idngrein,
+ nationalId: licence.kennitala,
}
}