Teamets interne dokumentasjon: her

NAVs systemer utveksler kodeverdier fra mange forskjellige kodeverk. Denne applikasjonen er en master for disse kodeverkene, og den tilbyr diverse grensesnitt som konsumenter kan benytte seg av for å hente ut informasjonen om de kodeverkene de er interesserte i.

1. For konsumenter

Dette kapittelet er for deg som har behov for å hente informasjon om et gitt kodeverk programmatisk til bruk i applikasjonen din.

Kodeverk forvaltes av Team Rocket. Om du har innspill, spørsmål eller problemer, så ta kontakt i #felles-kodeverk-kanalen på Slack, så skal vi prøve å hjelpe!

1.1. Brukerbehov

Nedenfor er en samling med brukerbehovene som oftest går igjen blant konsumentene av tjenestene som tilbys. Dersom du har et behov som skiller seg ut fra de som er listet opp, så si gjerne ifra slik at det kan tas i betraktning ved eventuell videreutvikling.

Brukerbehov 1
Som et system som eksponerer en webtjeneste for andre konsumenter
trenger jeg alle tilgjengelige koder for et gitt kodeverk
slik at jeg kan validere om innkommende koder er gyldige.
Brukerbehov 2
Som et system med et grafisk brukergrensesnitt
trenger jeg en menneskeleselig representasjon av alle koder for et gitt kodeverk
slik at jeg kan populere nedtrekksmenyer for brukerne mine.

1.2. REST-tjenester

NB: API’et har tradisjonelt sett ikke krevd noen form for access tokens, men dette er i ferd med å endre seg. Vi anbefaler derfor alle konsumenter å sende access tokens i kallene sine. Dersom applikasjonen din må pre-authorizes kan du kontakte oss i #felles-kodeverk eller #team-rocket på Slack

For å teste ut REST-API’et kan du bruke Swagger.

2. For kodeverksforvaltere og -eiere

Den letteste måten å se og administrere kodeverkene er gjennom kodeverk-web, også kalt kodeverkseklienten. Kodeverksklienten i produksjon er tilgjengelig gjennom NAV applikasjoner, enten direkte gjennom Kodeverksklient-applikasjonen eller ved å gå gjennom Chrome SKSS til kodeverk-web.nais.adeo.no. Gjennom Chrome SKSS vil du også kunne nå Kodeverksklienten i preprod ved å navigere til kodeverk-web.nais.preprod.local.

Med Naisdevice (påkoblet onprem-k8s-prod) kan kodeverksklienten nås direkte:
Prod - kodeverk-web.intern.nav.no

Skal du derimot inn med mange koder samtidig, er det oftest lettest og raskest at utviklerte av som jobber med Kodeverk gjør det direkte mot databasen. Dette kan bestilles ved å lage kodeverk-sak i Jira.

2.1. Tilganger

Kodeverksklienten har flere funksjonaliteter for å se og administrere kodeverkene. Noen av disse handlingene er helt åpne for alle, mens andre trenger innlogging og visse AD-roller for å få tilgang. Se nedenfor for å få oversikt over nødvendige roller.

Table 1. Tilgangsstyring i kodeverksklienten
Handling Hvilke roller trengs for å ha tilgang?

Se kodeverk, koder og konsumenter

Åpen for alle

Opprette kode

0000-ga-is01_kodeverksforvalter,
0000-ga-is01_kodeverkseier,
0000-ga-kodeverk_produkteier

Redigere kode

0000-ga-is01_kodeverksforvalter,
0000-ga-is01_kodeverkseier,
0000-ga-kodeverk_produkteier

Godkjenne kode

0000-ga-is01_kodeverkseier,
0000-ga-kodeverk_produkteier

Produksjonssette kode

0000-ga-is01_produksjonssetter

Administrere kodeverkseier

0000-ga-kodeverk_produkteier

Opprette kodeverk

0000-ga-kodeverk_produkteier

For å sjekke om du har de rette AD-rollene kan du søke på identen din i igruppe.adeo.no. Hvis du oppdager du mangler AD-roller du mener du burde hatt kan du ta kontakt med Geir Vesterdal eller Kenneth Arnesen.

2.2. Frontend brukerveiledning

Brukergrensesnittet til felles kodeverk viser på forsiden 8 valg.

Kodeverk fremside

Hvis du ikke har de tilgangene du behøver (kan sjekkes på https://igruppe.adeo.no/) må du ta kontakt med Geir Vesterdal eller Kenneth Arnesen. Innloggingen skjer når du trykker på en av knappene som krever innlogging.

Table 2. Tilganger

Nr

Kever innlogging

Tittel/Valg

AD rolle(r) som har tilgang

1

Nei

Se alle kodeverk

Alle har tilgang

2

Nei

Søk etter koder eller termer

Alle har tilgang

3

Nei

Finn konsumenter

Alle har tilgang

4

Ja

Status til kodeverk

0000-ga-is01_kodeverksforvalter
0000-ga-is01_kodeverkseier
0000-ga-kodeverk_produkteier

5

Ja

Opprett nye koder

0000-ga-is01_kodeverksforvalter
0000-ga-is01_kodeverkseier
0000-ga-kodeverk_produkteier

6

Ja

Rediger koder

0000-ga-is01_kodeverksforvalter
0000-ga-is01_kodeverkseier
0000-ga-kodeverk_produkteier

7

Ja

Administrere kodeverkseier

0000-ga-kodeverk_produkteier

8

Ja

Opprett nytt kodeverk

0000-ga-kodeverk_produkteier

2.2.1. Knapp 8 - Opprettelse av nytt kodeverk

  1. Her vil det kun være produkteier som har tilgang.

  2. Skriv inn navn på det nye kodeverket. Dette må ikke være likt et annet eksisterende kodeverk.

  3. Skriv inn identen til den som skal være kodeverkseier til det nye kodeverket. Dette kan endres senere i "Administrere kodeverkseiere", men er ett påbudt felt her.

  4. Om ønskelig, kan også kodeverksforvalter bli satt her.

Opprett nytt kodeverk

2.2.2. Knapp 7 - Administrering av kodeverkseiere

  1. Her vil det kun være produkteier som har tilgang.

  2. Den første siden viser oversikt over alle kodeverk og alle rollene som ligger i databasen.

  3. Ved trykk på "Administrer kodeverkseiere" vil denne modulen åpne.

    Administrere kodeverk
  4. Velg av kodeverk vil gi alle rollene i databasen for det kodeverket.

  5. Markering av en rad gir muligheten til å slette raden fra databasen, Legg Til vil åpne felt for ident og rolle man må fylle inn for å legge til nye kodeverkseiere til kodeverket.

2.2.3. Knapp 6 - Rediger koder (Endre på term, opprette ny term til eksisterende kode)

  1. For å redigere en kode må du ha rettigheter til det spesifikke kodeverket du har lov til å utføre endringer på. I dette eksempelet har brukeren rettigheter på kodeverket "Arbeidsforholdstyper" og "Enhetstyper".

  2. Velg kodeverket du ønsker å gjøre endringer på. NB! Om du ikke finner det kodeverket du ønsker å endre på må du ta kontakt med Geir Vesterdal eller Kenneth Arnesen.

    Rediger kode
  3. Velg koden du ønsker å gjøre endringer på og trykk "Rediger":

    Rediger kode 2
Det er det to primære funksjoner du kan gjøre med eksisterende koder:
  1. Endre innholdet på en eksisterende term

    1. Denne funksjonen kan ofte være at man ønsker å endre på en term som har feil term eller tekst, eller at termen skal utgå eller starte på et nytt tidspunkt.

    2. Det vil ikke være mulig å endre gyldig fra om termen har tidligere termer enn den du har i skjermbildet.

    3. Det vil ikke være mulig å endre gyldig til om termen har senere termer enn den du har i skjermbildet.

    4. Det vil være mulig å legge til et nytt språk ved å velge språk fra listen og trykke på + tegnet til høyre. Da legger du inn ett nytt språk til den termen du har i skjermbildet. Se skjermbildet under punkt 2 for hvordan du legger inn flere språk.

      1. Når endringene er ferdige trykker du "lagre".

      2. Etter lagre vil endringene ligge under knapp 5 Du må da gå dit å se over og sende disse videre til godkjenning.

        Rediger kodeverk
  2. Legge til en ny term, og la den gamle termen utgå

    1. Ved å trykke på "OPPRETT NY TERM" som skjermbildet ovenfor viser. Vil du få opp vinduet nedenfor

      Rediger kodeverk 2
    2. Her vil du få mulighet til å legge inn en helt ny term som vil fungere ut i fra hva du setter inn på "Gyldig fra" og "Gyldig til".

    3. Når du oppretter en ny term vil den gamle termen sette datoen dagen før verdigen "Gyldig fra". Slik som dette tilfellet vil den gamle termen få verdien "Gyldig til" som 28.10.2019.

      1. Her har du også mulighet til å legge til flere språk til den nye termen. Ved å trykke på plusstegnet vil du få opp dette skjermbildet:

        Rediger kodeverk 3
    4. Språk - NB: Norsk bokmål, NN: Ny norsk, EN: engelsk, SE: Samisk.

    5. Alle termer må ha en term på Norsk bokmål som vil være en default verdi. Skjermbildet ovenfor vil være det samme under redigering av termer.

    6. Når du er ferdig trykker du "Lagre".

    7. Etter lagre vil endringene ligge under knapp 5. Du må da gå dit å se over og sende disse videre til godkjenning.

2.2.4. Knapp 5: Legge til nye koder til eksisterende kodeverk:

  1. For å opprette nye koder er det mulighet for å velge antall.

    1. Om det er et stort antall nye koder (10+ca) å legge inn via brukergrensesnittet kan du gjøre en bestilling via: Felles kodeverk (Fane nr.3)

    2. Bildet under viser hvordan du velger et nytt kodeverk og endrer antall på hvor mange du legger inn (kan også endres senere).

    3. Trykk "Opprett" når du vil gå videre.

      Opprett kode
  2. Bildet under viser hvor man skriver inn nye koder. Her legger du inn navnet til koden, gyldig fra, gyldig til, term og tekst.

    1. Her kan du lagre de nye kodene etter hvert, eventuelt slette om du har opprettet for mange vinduer.

    2. For å legge til språk vil skjermbildet være det samme slik som det er ovenfor

      Opprett koder
  3. Når alle boksene har blitt lagret vil skjermbildet være slik:

    1. Her kan du endre ved å trykke på blyant ikonet

    2. Slette ved å trykke på søppelboks

    3. Eller "Opprett" når du er fornøyd. Da vil alle kodene gå til godkjenning.

      Opprett koder 2

2.2.5. Knapp 4: Stegprossess for godkjenning av nye koder, endringer på eksisterende koder eller opprettelse av nytt kodeverk:

Dette bildet vil vise alle endringene som er under status utkast.

  1. Alle

    Oversikt ikke prodsatt koder
    1. Ved å trykke på en av endringene vil du få opp et bilde som viser hvor koden er i godkjenningsprosessen.

    2. Du vil også kunne sende dette videre om du har rettigheter til det.

  2. Utkast

    Oversikt ikke prodsatt koder 2
    1. Etter du har lagt inn koder må du inn i dette vinduet å se over dine endringer å sende disse til godkjenning.

    2. Det vil være mulig å redigere og slette utkastet også.

    3. I dette vinduet må du minst ha rollen "0000-ga-is01_kodeverksforvalter" for å sende koden til godkjenning.

  3. Under godkjenning

    1. Opprettet kode:

      1. Rollene 0000-ga-is01_kodeverkseier / 0000-ga-kodeverk_produkteier kan sende koden videre. Da vil bildet være slikt:

        Oversikt koder under godkjenning
      2. Hvis du avviser går denne tilbake til status "UTKAST"

      3. Det vil kun være mulig å se knappen "KLAR TIL PRODUKSJON" og "AVVIS" om du har tilganger til dette.

    2. Redigert kode:

      1. Rollene 0000-ga-is01_kodeverkseier / 0000-ga-kodeverk_produkteier kan sende koden videre. Da vil bildet være slikt:

        Oversikt koder under godkjenning2
      2. Hvis du avviser går denne tilbake til status "UTKAST"

      3. Det vil kun være mulig å se knappen "KLAR TIL PRODUKSJON" og "AVVIS" om du har tilganger til dette.

  4. Klar til prodsetting

    Oversikt koder klar til prodsetting
    1. For å prodsette en kode er det rollen 0000-ga-is01_produksjonssetter som må inn å produksjonssette denne.

    2. Hvis du avviser går denne tilbake til status "UTKAST"

    3. Det vil kun være mulig å se knappen "PRODSETT" og "AVVIS" om du har tilganger til dette.