CaseManagement

CaseManagement

Beskrivning

CaseManagement är en tjänst som hanterar ärenden mot ByggR, Ecos2 och vårt egna ärendehanteringssystem CaseData. CaseManagement fungerar som en ärendeförmedlare mellan ett externt system (idag främst Open ePlatform) och de underliggande systemen. CaseManagement tar emot ärenden i ett generiskt format och formaterar om ärendet så att det passar just det specifika system som det ska registreras i. CaseManagement håller även koll på kopplingen mellan det externa ärendet och det underliggande systemet och på så vis möjliggörs hämtning av status från det underliggande systemet, uppdateringar av ärendet med nya bilagor o.s.v. 

Uppdatering av ärenden

I version 8.0 av CaseManagement har det tillkommit stöd för att uppdatera underliggande ByggR-ärenden via Open-E. På grund av diverse begränsningar i integrationsadaptern som används av Open-E så kan de endast anropa en enda resurs i CaseManagement. För att ändå kunna hantera uppdatering av ärenden så har vi fått skapa en workaround där vi styr anropet vidare baserat på närvaron av en "extraparameter" i inkommande anrop. Om extraparametern "oepAction" finns med i anropet och har värdet "PUT" så hanteras ärendet istället som en uppdatering av ett underliggande ärende. Det finns stöd för olika typer av uppdateringar, och vilken typ av uppdatering styrs baserat på den angivna ärendetypen(caseType) i det inkommande anropet.

1. Svara på grannehörande. Ärendetyp: "NEIGHBORHOOD_NOTIFICATION".
2. Lägga till en certifierad inspektör. Ärendetyp: "BYGGR_ADD_CERTIFIED_INSPECTOR".
3. Lägga till ett dokument. Ärendetyp: "BYGGR_ADDITIONAL_DOCUMENTS".

Hämtning av statusar

CaseManagement har stöd för att hämta ärendestatusar på tre olika sätt. Det är ett behov som växt fram och därav finns det olika varianter.

getStatusByOrgNr - /{municipalityId}/organization/{organizationNumber}/cases/status

Hämtning av ärendestatusar baserat på ett angivet kommun id och organisationsnummer.
Vid detta anrop så hämtas ärenden från ByggR och Ecos. Ärendena omvandlas sedan till en lista med CaseStatusDTO som sedan returneras till klienten.

getStatusByExternalCaseId - /{municipalityId}/cases/{externalCaseId}/status

Hämtning av ärendestatusar baserat på ett angivet kommun id och "externalCaseId".
Vid detta anrop så kontrolleras det ifall det finns en CaseMapping som matchar angivna parametrar. Om det finns så gör anrop antingen mot ByggR, Ecos eller CaseData baserat på CaseMapping:ens systemvariabel, ärendet som hämtas omvandlas till en CaseStatusDTO och returnerastill klienten.

getStatusesByPartyId - /{municipalityId}/{partyId}/statuses

Hämtning av ärendestatusar baserat på ett angivet kommun id och partyId.
Vi detta anrop så hämtas ärenden från Alk-T, CaseData, ByggR och Ecos. Ärendena omvandlas till en lista med CaseStatusDTO:er som sedan returneras till klienten. 

CaseStatusDTO

Attribut

Beskrivning

Attribut

Beskrivning

system

Det underliggande systemet.

caseType

Vad det är för typ av ärende.

externalCaseId

Det externa ärende id:et (Kan saknas i vissa fall)

caseId

Ärendet id i det underliggande systemet.

status

Status på ärendet i det underliggande systemet.

serviceName

Vilken e-tjänst som skapat ärendet.

timestamp

När senaste uppdateringen av ärendet skedde.

Livscykelstatus

Produktion

Lösningsbeskrivning

We've encountered an issue exporting this macro. Please try exporting again later.

Hantering av personuppgifter

Vi tar in fältet “personId” och hämtar sedan det tillhörande personnumret från CitizenMapping för att kunna anropa Ecos2 och ByggR med personnummer. Vi kan inte påverka det faktum att dessa system kräver detta som indata. Ecos2 och ByggR ligger på det interna nätet på Sundsvalls kommun.

Medvetna avvikelser

  • Handläggarna i ByggR ville ha filnamnet på dokument i anteckningsfältet i ByggR för att få en bättre överblick. Egentligen ska fältet “note” i Attachment-objektet användas för detta i CaseManagaement's API, men p.g.a. begränsningar i OeP’s integrationsadapter som inte möjliggör att e-tjänsteutvecklaren kan konfigurera att detta skickas med så valde vi att lösa detta i CaseManagement’s backend istället.

    • Detta påverkar endast bygglovsärenden

API specifikation

We've encountered an issue exporting this macro. Please try exporting again later.





Säkerhetsklassning

Säkerhetsklass 1

Autentiseringsmetod: Oauth2

(Ref: Säkerhetsklassning av APIer )

Teknisk ägare

https://sundsvall.atlassian.net/wiki/spaces/API

Ansvarigt team: Team Unmasked

För tekniska frågor: teamunmasked@sundsvall.se 

Källkod

GitHub

FAQ

|