/
Uppdragsbeskrivning - Citizen & Employee

Uppdragsbeskrivning - Citizen & Employee

Bakgrund

För att möjliggöra paketeringar av applikationer byggda på komponenter i öppen källkod behöver vi implementera fristående mikrotjänster för citizen och employee, som ett alternativ till Metakatalogens implementation.

Uppdrag

Bygg två mikrotjänster, api-service-citizen och api-service-employee, som motsvarar en nödvändig delmängd av den funktionalitet som ligger i Metakatalogen idag. Respektive implementation ska innehålla en databas med en databasmodell som är härledd från respektive API-beskrivning.

Detaljerad uppdragsbeskrivning

Observera - ni kan kika på GitHub - Public-Service-as-a-Service/api-service-notes som ett exempel.

Citizen

Beskrivning av befintlig implementation

Citizen V2

Lösningsbeskrivning, ny implementation

Observera, integration mot Navet ingår inte i detta uppdrag och planeras in i kommande faser.

Att göra:

  • Skapa databasschema baserat på API-specifikationen; https://api-test.sundsvall.se/citizen/2.0/api-docs (se särskilt /api/v2/citizen/{personId})

  • Implementera mikrotjänst - repo finns förberett här:
    GitHub - Public-Service-as-a-Service/api-service-citizen

    • Implementera samtliga APIer att operera mot databas

    • APIet /api/v2/citizen/guidskall implementeras på följande sätt; om medborgaren redan finns i databasen, returnera dess guid. Om medborgaren inte finns i databasen ska en http 404 returneras (detta kommer att ersättas sen när integrationen mot Navet byggs).

  • Säkerställ att citizen fungerar att bygga och distribuera som helhet (mikrotjänst + databas) lokalt - testdata måste läggas in manuellt i databasen eftersom integrationen mot Navet görs senare.

Employee

Beskrivning av befintlig implementation

Employee

Lösningsbeskrivning, ny implementation

Att göra:

  • Skapa en första version som innehåller en delmängd av resurserna i nuvarande API (se mer nedan)

  • Skapa databasschema baserat på API-specifikationen; https://api-test.sundsvall.se/employee/api-docs och resursen /api/v1/employee/portalpersondata/{domain}/{loginName}

  • Implementera mikrotjänst - repo finns förberett här:
    GitHub - Public-Service-as-a-Service/api-service-employee

    • Implementera följande APIer att operera mot databas; /api/v1/employee/employed/{personalNumber}/loginname
      /api/v1/employee/portalpersondata/{domain}/{loginName}
      /api/v1/employee/portalpersondata/{email}
      (övriga APIer implementeras senare vid behov)

  • Säkerställ att employee fungerar att bygga och distribuera som helhet (mikrotjänst + databas) lokalt - testdata måste läggas in manuellt i databasen.

Demo-GUI

Skapa en webbapplikation i demo-syfte som integrerar med citizen och employee.

Lösningsbeskrivning

Att göra:

  • Skapa ett nytt repo; webb-app-ec-demo

  • Implementera Demo-GUI

    • Skall innehålla funktionalitet så att alla resurser i employee och citizen anropas