diff --git a/pom.xml b/pom.xml index 6fffd3c1f..c1f33a5a3 100644 --- a/pom.xml +++ b/pom.xml @@ -165,7 +165,7 @@ no.nav.familie baks-dokgen - 1.0_20240627141649_53c4360 + 1.0_20240829133759_de4a212 @@ -414,7 +414,8 @@ verify - + @@ -428,7 +429,8 @@ validate - + diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/ArkiverDokumentRequestMapper.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/ArkiverDokumentRequestMapper.kt" index 693573323..bfa34cc51 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/ArkiverDokumentRequestMapper.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/ArkiverDokumentRequestMapper.kt" @@ -1,14 +1,16 @@ package no.nav.familie.baks.mottak.søknad +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV8 +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknaddokumentasjon import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.DBBarnetrygdSøknad import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.DBVedlegg -import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.Vedlegg import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.VersjonertBarnetrygdSøknad import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.DBKontantstotteVedlegg import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.DBKontantstøtteSøknad import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV4 +import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV5 import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknaddokumentasjon import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.VersjonertKontantstøtteSøknad import no.nav.familie.kontrakter.ba.søknad.v4.Søknadstype @@ -31,10 +33,16 @@ object ArkiverDokumentRequestMapper { ): ArkiverDokumentRequest { val (søknadstype, dokumentasjon) = when (versjonertBarnetrygdSøknad) { - is SøknadV8 -> + is BarnetrygdSøknadV8 -> Pair( - versjonertBarnetrygdSøknad.søknad.søknadstype, - versjonertBarnetrygdSøknad.søknad.dokumentasjon.map { BarnetrygdSøknaddokumentasjon(it) }, + versjonertBarnetrygdSøknad.barnetrygdSøknad.søknadstype, + versjonertBarnetrygdSøknad.barnetrygdSøknad.dokumentasjon.map { BarnetrygdSøknaddokumentasjon(it) }, + ) + + is BarnetrygdSøknadV9 -> + Pair( + versjonertBarnetrygdSøknad.barnetrygdSøknad.søknadstype, + versjonertBarnetrygdSøknad.barnetrygdSøknad.dokumentasjon.map { BarnetrygdSøknaddokumentasjon(it) }, ) } @@ -95,6 +103,9 @@ object ArkiverDokumentRequestMapper { when (versjonertSøknad) { is KontantstøtteSøknadV4 -> versjonertSøknad.kontantstøtteSøknad.dokumentasjon.map { KontantstøtteSøknaddokumentasjon(it) } + + is KontantstøtteSøknadV5 -> + versjonertSøknad.kontantstøtteSøknad.dokumentasjon.map { KontantstøtteSøknaddokumentasjon(it) } } val søknadsdokumentJson = diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/PdfService.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/PdfService.kt" index d5fc95685..bede1445e 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/PdfService.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/PdfService.kt" @@ -1,11 +1,13 @@ package no.nav.familie.baks.mottak.søknad import no.nav.familie.baks.mottak.integrasjoner.PdfClient +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV8 +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.DBBarnetrygdSøknad -import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.VersjonertBarnetrygdSøknad import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.DBKontantstøtteSøknad import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV4 +import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV5 import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.VersjonertKontantstøtteSøknad import no.nav.familie.kontrakter.ba.søknad.v4.Søknadstype import org.slf4j.LoggerFactory @@ -30,9 +32,11 @@ class PdfService( val (søknadstype, navn) = when (versjonertBarnetrygdSøknad) { - is SøknadV8 -> { - Pair(versjonertBarnetrygdSøknad.søknad.søknadstype, versjonertBarnetrygdSøknad.søknad.søker.navn) - } + is BarnetrygdSøknadV8 -> + Pair(versjonertBarnetrygdSøknad.barnetrygdSøknad.søknadstype, versjonertBarnetrygdSøknad.barnetrygdSøknad.søker.navn) + + is BarnetrygdSøknadV9 -> + Pair(versjonertBarnetrygdSøknad.barnetrygdSøknad.søknadstype, versjonertBarnetrygdSøknad.barnetrygdSøknad.søker.navn) } val path: String = søknadstypeTilPath(søknadstype) @@ -47,7 +51,6 @@ class PdfService( else -> "Søknad om ordinær barnetrygd" }, ) - return familieDokumentPdfClient.lagPdf(path, barnetrygdSøknadMapForSpråk + ekstraFelterMap) } @@ -62,6 +65,7 @@ class PdfService( val navn = when (versjonertSøknad) { is KontantstøtteSøknadV4 -> versjonertSøknad.kontantstøtteSøknad.søker.navn + is KontantstøtteSøknadV5 -> versjonertSøknad.kontantstøtteSøknad.søker.navn } val ekstraFelterMap = @@ -71,7 +75,6 @@ class PdfService( fnr = dbKontantstøtteSøknad.fnr, label = "Søknad om kontantstøtte", ) - return familieDokumentPdfClient.lagPdf("kontantstotte-soknad", kontantstøtteSøknadMapForSpråk + ekstraFelterMap) } diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadSpr\303\245kvelgerService.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadSpr\303\245kvelgerService.kt" index b69f84015..8671ebf40 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadSpr\303\245kvelgerService.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadSpr\303\245kvelgerService.kt" @@ -3,10 +3,12 @@ package no.nav.familie.baks.mottak.søknad import com.fasterxml.jackson.databind.ObjectMapper import com.fasterxml.jackson.module.kotlin.convertValue import no.nav.familie.baks.mottak.søknad.barnetrygd.BarnetrygdSøknadObjectMapperModule -import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV8 +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.VersjonertBarnetrygdSøknad import no.nav.familie.baks.mottak.søknad.kontantstøtte.KontantstøtteObjectMapperModule import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV4 +import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV5 import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.VersjonertKontantstøtteSøknad import org.springframework.stereotype.Service import no.nav.familie.kontrakter.felles.objectMapper as getObjectMapper @@ -22,12 +24,14 @@ class SøknadSpråkvelgerService { val barnetrygdSøknadMapForSpråk = objectMapperForSpråk.convertValue>( when (versjonertBarnetrygdSøknad) { - is SøknadV8 -> versjonertBarnetrygdSøknad.søknad + is BarnetrygdSøknadV8 -> versjonertBarnetrygdSøknad.barnetrygdSøknad + is BarnetrygdSøknadV9 -> versjonertBarnetrygdSøknad.barnetrygdSøknad }, ) barnetrygdSøknadMapForSpråk["teksterUtenomSpørsmål"] = when (versjonertBarnetrygdSøknad) { - is SøknadV8 -> versjonertBarnetrygdSøknad.søknad.teksterUtenomSpørsmål + is BarnetrygdSøknadV8 -> versjonertBarnetrygdSøknad.barnetrygdSøknad.teksterUtenomSpørsmål + is BarnetrygdSøknadV9 -> versjonertBarnetrygdSøknad.barnetrygdSøknad.teksterUtenomSpørsmål }.mapValues { it.value[språk] } return barnetrygdSøknadMapForSpråk @@ -43,6 +47,7 @@ class SøknadSpråkvelgerService { objectMapperForSpråk.convertValue>( when (versjonertSøknad) { is KontantstøtteSøknadV4 -> versjonertSøknad.kontantstøtteSøknad + is KontantstøtteSøknadV5 -> versjonertSøknad.kontantstøtteSøknad }, ) return kontantstøtteSøknadMapForSpråk diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadController.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadController.kt" index 36cfb644d..7d96a8cee 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadController.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadController.kt" @@ -1,9 +1,12 @@ package no.nav.familie.baks.mottak.søknad.barnetrygd import no.nav.familie.baks.mottak.søknad.Kvittering +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV8 +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.FødselsnummerErNullException -import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.VersjonertBarnetrygdSøknad +import no.nav.familie.kontrakter.ba.søknad.v8.Søknad +import no.nav.familie.kontrakter.ba.søknad.v9.BarnetrygdSøknad import no.nav.familie.kontrakter.felles.Ressurs import no.nav.security.token.support.core.api.ProtectedWithClaims import no.nav.security.token.support.core.api.Unprotected @@ -15,7 +18,6 @@ import org.springframework.web.bind.annotation.PostMapping import org.springframework.web.bind.annotation.RequestMapping import org.springframework.web.bind.annotation.RequestPart import org.springframework.web.bind.annotation.RestController -import no.nav.familie.kontrakter.ba.søknad.v8.Søknad as SøknadKontraktV8 @RestController @RequestMapping(path = ["/api"], produces = [APPLICATION_JSON_VALUE]) @@ -26,9 +28,20 @@ class BarnetrygdSøknadController( ) { @PostMapping(value = ["/soknad/v8"], consumes = [MULTIPART_FORM_DATA_VALUE]) fun taImotSøknad( - @RequestPart("søknad") søknad: SøknadKontraktV8, + @RequestPart("søknad") søknad: Søknad, ): ResponseEntity> = - mottaVersjonertSøknadOgSendMetrikker(versjonertBarnetrygdSøknad = SøknadV8(søknad = søknad)) + mottaVersjonertSøknadOgSendMetrikker( + versjonertBarnetrygdSøknad = BarnetrygdSøknadV8(barnetrygdSøknad = søknad), + ) + + @PostMapping(value = ["/soknad/v9"], consumes = [MULTIPART_FORM_DATA_VALUE]) + fun taImotSøknad( + @RequestPart("søknad") søknad: BarnetrygdSøknad, + ): ResponseEntity> = + mottaVersjonertSøknadOgSendMetrikker( + versjonertBarnetrygdSøknad = + BarnetrygdSøknadV9(barnetrygdSøknad = søknad), + ) fun mottaVersjonertSøknadOgSendMetrikker(versjonertBarnetrygdSøknad: VersjonertBarnetrygdSøknad): ResponseEntity> = try { diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadMetrikkService.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadMetrikkService.kt" index 95957bf4c..8d7772a81 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadMetrikkService.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadMetrikkService.kt" @@ -1,7 +1,8 @@ package no.nav.familie.baks.mottak.søknad.barnetrygd import io.micrometer.core.instrument.Metrics -import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV8 +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.VersjonertBarnetrygdSøknad import no.nav.familie.kontrakter.ba.søknad.v4.Søknadstype import no.nav.familie.kontrakter.ba.søknad.v7.Dokumentasjonsbehov @@ -38,12 +39,14 @@ class BarnetrygdSøknadMetrikkService { fun sendMottakMetrikker(versjonertBarnetrygdSøknad: VersjonertBarnetrygdSøknad) { val (søknadstype, dokumentasjon) = when (versjonertBarnetrygdSøknad) { - is SøknadV8 -> Pair(versjonertBarnetrygdSøknad.søknad.søknadstype, versjonertBarnetrygdSøknad.søknad.dokumentasjon) + is BarnetrygdSøknadV8 -> Pair(versjonertBarnetrygdSøknad.barnetrygdSøknad.søknadstype, versjonertBarnetrygdSøknad.barnetrygdSøknad.dokumentasjon) + is BarnetrygdSøknadV9 -> Pair(versjonertBarnetrygdSøknad.barnetrygdSøknad.søknadstype, versjonertBarnetrygdSøknad.barnetrygdSøknad.dokumentasjon) } val harEøsSteg = when (versjonertBarnetrygdSøknad) { - is SøknadV8 -> versjonertBarnetrygdSøknad.søknad.antallEøsSteg > 0 + is BarnetrygdSøknadV8 -> versjonertBarnetrygdSøknad.barnetrygdSøknad.antallEøsSteg > 0 + is BarnetrygdSøknadV9 -> versjonertBarnetrygdSøknad.barnetrygdSøknad.antallEøsSteg > 0 } val erUtvidet = søknadstype == Søknadstype.UTVIDET @@ -55,7 +58,8 @@ class BarnetrygdSøknadMetrikkService { fun sendMottakFeiletMetrikker(versjonertBarnetrygdSøknad: VersjonertBarnetrygdSøknad) { val søknadstype = when (versjonertBarnetrygdSøknad) { - is SøknadV8 -> versjonertBarnetrygdSøknad.søknad.søknadstype + is BarnetrygdSøknadV8 -> versjonertBarnetrygdSøknad.barnetrygdSøknad.søknadstype + is BarnetrygdSøknadV9 -> versjonertBarnetrygdSøknad.barnetrygdSøknad.søknadstype } if (søknadstype == Søknadstype.UTVIDET) søknadUtvidetMottattFeil.increment() else søknadMottattFeil.increment() } diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadService.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadService.kt" index a27f892ef..c9c57cbe8 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadService.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/BarnetrygdS\303\270knadService.kt" @@ -1,11 +1,12 @@ package no.nav.familie.baks.mottak.søknad.barnetrygd import no.nav.familie.baks.mottak.integrasjoner.FamilieDokumentClient +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV8 +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.DBBarnetrygdSøknad import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.DBVedlegg import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.FødselsnummerErNullException import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadRepository -import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadVedleggRepository import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.VersjonertBarnetrygdSøknad import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.tilDBSøknad @@ -30,8 +31,12 @@ class BarnetrygdSøknadService( fun motta(versjonertBarnetrygdSøknad: VersjonertBarnetrygdSøknad): DBBarnetrygdSøknad { val (dbSøknad, dokumentasjon) = when (versjonertBarnetrygdSøknad) { - is SøknadV8 -> { - Pair(versjonertBarnetrygdSøknad.søknad.tilDBSøknad(), versjonertBarnetrygdSøknad.søknad.dokumentasjon) + is BarnetrygdSøknadV8 -> { + Pair(versjonertBarnetrygdSøknad.barnetrygdSøknad.tilDBSøknad(), versjonertBarnetrygdSøknad.barnetrygdSøknad.dokumentasjon) + } + + is BarnetrygdSøknadV9 -> { + Pair(versjonertBarnetrygdSøknad.barnetrygdSøknad.tilDBSøknad(), versjonertBarnetrygdSøknad.barnetrygdSøknad.dokumentasjon) } } diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/domene/DBBarnetrygdS\303\270knad.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/domene/DBBarnetrygdS\303\270knad.kt" index 666e7aa93..a87a770df 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/domene/DBBarnetrygdS\303\270knad.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/domene/DBBarnetrygdS\303\270knad.kt" @@ -11,7 +11,8 @@ import jakarta.persistence.Table import no.nav.familie.kontrakter.ba.søknad.v7.Søknadsvedlegg import no.nav.familie.kontrakter.felles.objectMapper import java.time.LocalDateTime -import no.nav.familie.kontrakter.ba.søknad.v8.Søknad as SøknadV8 +import no.nav.familie.kontrakter.ba.søknad.v8.Søknad as BarnetrygdSøknadV8 +import no.nav.familie.kontrakter.ba.søknad.v9.BarnetrygdSøknad as BarnetrygdSøknadV9 @Entity(name = "Soknad") @Table(name = "Soknad") @@ -28,24 +29,12 @@ data class DBBarnetrygdSøknad( @Column(name = "journalpost_id") val journalpostId: String? = null, ) { - private fun hentSøknadV8(): SøknadV8 = objectMapper.readValue(søknadJson) - - private fun hentSøknadVersjon(): String = - try { - val søknad = objectMapper.readTree(søknadJson) - if (søknad.get("kontraktVersjon")?.asInt() == 8) { - "v8" - } else { - "v7" - } - } catch (e: Error) { - "v7" - } - fun hentVersjonertSøknad(): VersjonertBarnetrygdSøknad { - val versjon = this.hentSøknadVersjon() + val søknad = objectMapper.readTree(søknadJson) + val versjon = søknad.get("kontraktVersjon")?.asInt() return when (versjon) { - "v8" -> SøknadV8(søknad = hentSøknadV8()) + 8 -> BarnetrygdSøknadV8(barnetrygdSøknad = objectMapper.readValue(søknadJson)) + 9 -> BarnetrygdSøknadV9(barnetrygdSøknad = objectMapper.readValue(søknadJson)) else -> error("Ikke støttet versjon $versjon av kontrakt for Barnetrygd") } } @@ -68,7 +57,20 @@ interface Vedlegg { val data: ByteArray } -fun SøknadV8.tilDBSøknad(): DBBarnetrygdSøknad { +fun BarnetrygdSøknadV8.tilDBSøknad(): DBBarnetrygdSøknad { + try { + return DBBarnetrygdSøknad( + søknadJson = objectMapper.writeValueAsString(this), + fnr = + this.søker.ident.verdi + .getValue("nb"), + ) + } catch (e: KotlinNullPointerException) { + throw FødselsnummerErNullException() + } +} + +fun BarnetrygdSøknadV9.tilDBSøknad(): DBBarnetrygdSøknad { try { return DBBarnetrygdSøknad( søknadJson = objectMapper.writeValueAsString(this), @@ -95,7 +97,8 @@ fun DBBarnetrygdSøknad.harEøsSteg(): Boolean { val versjonertSøknad = this.hentVersjonertSøknad() return when (versjonertSøknad) { - is no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 -> versjonertSøknad.søknad.søker.harEøsSteg + is no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV8 -> versjonertSøknad.barnetrygdSøknad.søker.harEøsSteg + is no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 -> versjonertSøknad.barnetrygdSøknad.søker.harEøsSteg } } diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/domene/VersjonertBarnetrygdS\303\270knad.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/domene/VersjonertBarnetrygdS\303\270knad.kt" index 7066e6518..57095bceb 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/domene/VersjonertBarnetrygdS\303\270knad.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/barnetrygd/domene/VersjonertBarnetrygdS\303\270knad.kt" @@ -1,9 +1,14 @@ package no.nav.familie.baks.mottak.søknad.barnetrygd.domene -import no.nav.familie.kontrakter.ba.søknad.v8.Søknad as SøknadV8 +import no.nav.familie.kontrakter.ba.søknad.v8.Søknad as BarnetrygdSøknadV8 +import no.nav.familie.kontrakter.ba.søknad.v9.BarnetrygdSøknad as BarnetrygdSøknadV9 sealed class VersjonertBarnetrygdSøknad -data class SøknadV8( - val søknad: SøknadV8, +data class BarnetrygdSøknadV8( + val barnetrygdSøknad: BarnetrygdSøknadV8, +) : VersjonertBarnetrygdSøknad() + +data class BarnetrygdSøknadV9( + val barnetrygdSøknad: BarnetrygdSøknadV9, ) : VersjonertBarnetrygdSøknad() diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadController.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadController.kt" index 95647c719..dc0247832 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadController.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadController.kt" @@ -3,6 +3,7 @@ package no.nav.familie.baks.mottak.søknad.kontantstøtte import no.nav.familie.baks.mottak.søknad.Kvittering import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.FødselsnummerErNullException import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV4 +import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV5 import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.VersjonertKontantstøtteSøknad import no.nav.familie.kontrakter.felles.Ressurs import no.nav.security.token.support.core.api.ProtectedWithClaims @@ -16,6 +17,7 @@ import org.springframework.web.bind.annotation.RequestMapping import org.springframework.web.bind.annotation.RequestPart import org.springframework.web.bind.annotation.RestController import no.nav.familie.kontrakter.ks.søknad.v4.KontantstøtteSøknad as KontantstøtteSøknadKontraktV4 +import no.nav.familie.kontrakter.ks.søknad.v5.KontantstøtteSøknad as KontantstøtteSøknadKontraktV5 @RestController @RequestMapping(path = ["/api/kontantstotte/"], produces = [APPLICATION_JSON_VALUE]) @@ -30,6 +32,12 @@ class KontantstøtteSøknadController( ): ResponseEntity> = mottaVersjonertSøknadOgSendMetrikker(versjonertKontantstøtteSøknad = KontantstøtteSøknadV4(kontantstøtteSøknad = søknad)) + @PostMapping(value = ["/soknad/v5"], consumes = [MULTIPART_FORM_DATA_VALUE]) + fun taImotSøknad( + @RequestPart("søknad") søknad: KontantstøtteSøknadKontraktV5, + ): ResponseEntity> = + mottaVersjonertSøknadOgSendMetrikker(versjonertKontantstøtteSøknad = KontantstøtteSøknadV5(kontantstøtteSøknad = søknad)) + fun mottaVersjonertSøknadOgSendMetrikker(versjonertKontantstøtteSøknad: VersjonertKontantstøtteSøknad): ResponseEntity> = try { val dbKontantstøtteSøknad = diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadMetrikkService.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadMetrikkService.kt" index c29693c83..b5b6c871b 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadMetrikkService.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadMetrikkService.kt" @@ -2,6 +2,7 @@ package no.nav.familie.baks.mottak.søknad.kontantstøtte import io.micrometer.core.instrument.Metrics import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV4 +import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV5 import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.VersjonertKontantstøtteSøknad import no.nav.familie.kontrakter.ks.søknad.v1.Dokumentasjonsbehov import no.nav.familie.kontrakter.ks.søknad.v1.Søknaddokumentasjon @@ -25,11 +26,13 @@ class KontantstøtteSøknadMetrikkService { val dokumentasjon = when (versjonertKontantstøtteSøknad) { is KontantstøtteSøknadV4 -> versjonertKontantstøtteSøknad.kontantstøtteSøknad.dokumentasjon + is KontantstøtteSøknadV5 -> versjonertKontantstøtteSøknad.kontantstøtteSøknad.dokumentasjon } val harEøsSteg = when (versjonertKontantstøtteSøknad) { is KontantstøtteSøknadV4 -> versjonertKontantstøtteSøknad.kontantstøtteSøknad.antallEøsSteg > 0 + is KontantstøtteSøknadV5 -> versjonertKontantstøtteSøknad.kontantstøtteSøknad.antallEøsSteg > 0 } sendSøknadMetrikker(harEøsSteg) diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadService.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadService.kt" index a081c74fc..7bd470da7 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadService.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadService.kt" @@ -6,6 +6,7 @@ import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.DBKontantstøtte import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.FødselsnummerErNullException import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadRepository import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV4 +import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV5 import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteVedleggRepository import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.VersjonertKontantstøtteSøknad import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.tilDBKontantstøtteSøknad @@ -18,7 +19,8 @@ import org.springframework.stereotype.Service import org.springframework.transaction.annotation.Transactional import java.util.Properties -@Service class KontantstøtteSøknadService( +@Service +class KontantstøtteSøknadService( private val kontantstøtteSøknadRepository: KontantstøtteSøknadRepository, private val kontantstøtteVedleggRepository: KontantstøtteVedleggRepository, private val taskService: TaskService, @@ -35,6 +37,13 @@ import java.util.Properties versjonertKontantstøtteSøknad.kontantstøtteSøknad.dokumentasjon, ) } + + is KontantstøtteSøknadV5 -> { + Pair( + versjonertKontantstøtteSøknad.kontantstøtteSøknad.tilDBKontantstøtteSøknad(), + versjonertKontantstøtteSøknad.kontantstøtteSøknad.dokumentasjon, + ) + } } lagreDBKontantstøtteSøknad(dbKontantstøtteSøknad) diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/domene/DBKontantst\303\270tteS\303\270knad.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/domene/DBKontantst\303\270tteS\303\270knad.kt" index df15cc849..d698a7cf9 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/domene/DBKontantst\303\270tteS\303\270knad.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/domene/DBKontantst\303\270tteS\303\270knad.kt" @@ -13,6 +13,7 @@ import no.nav.familie.kontrakter.felles.objectMapper import no.nav.familie.kontrakter.ks.søknad.v1.Søknadsvedlegg import java.time.LocalDateTime import no.nav.familie.kontrakter.ks.søknad.v4.KontantstøtteSøknad as KontantstøtteSøknadV4 +import no.nav.familie.kontrakter.ks.søknad.v5.KontantstøtteSøknad as KontantstøtteSøknadV5 @Entity(name = "kontantstotte_soknad") @Table(name = "kontantstotte_soknad") @@ -33,21 +34,12 @@ data class DBKontantstøtteSøknad( @Column(name = "journalpost_id") val journalpostId: String? = null, ) { - private fun hentSøknadV4(): KontantstøtteSøknadV4 = objectMapper.readValue(søknadJson) - - private fun hentSøknadVersjon(): String { - val søknad = objectMapper.readTree(søknadJson) - return if (søknad.get("kontraktVersjon")?.asInt() == 4) { - "v4" - } else { - "v3" - } - } - fun hentVersjonertKontantstøtteSøknad(): VersjonertKontantstøtteSøknad { - val versjon = this.hentSøknadVersjon() + val søknad = objectMapper.readTree(søknadJson) + val versjon = søknad.get("kontraktVersjon")?.asInt() return when (versjon) { - "v4" -> KontantstøtteSøknadV4(kontantstøtteSøknad = hentSøknadV4()) + 4 -> KontantstøtteSøknadV4(kontantstøtteSøknad = objectMapper.readValue(søknadJson)) + 5 -> KontantstøtteSøknadV5(kontantstøtteSøknad = objectMapper.readValue(søknadJson)) else -> error("Ikke støttet versjon $versjon av kontrakt for Kontantstøtte") } } @@ -58,6 +50,7 @@ fun DBKontantstøtteSøknad.harEøsSteg(): Boolean { return when (versjonertSøknad) { is no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV4 -> versjonertSøknad.kontantstøtteSøknad.søker.harEøsSteg + is no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV5 -> versjonertSøknad.kontantstøtteSøknad.søker.harEøsSteg } } @@ -85,6 +78,19 @@ fun KontantstøtteSøknadV4.tilDBKontantstøtteSøknad(): DBKontantstøtteSøkna } } +fun KontantstøtteSøknadV5.tilDBKontantstøtteSøknad(): DBKontantstøtteSøknad { + try { + return DBKontantstøtteSøknad( + søknadJson = objectMapper.writeValueAsString(this), + fnr = + this.søker.ident.verdi + .getValue("nb"), + ) + } catch (e: KotlinNullPointerException) { + throw FødselsnummerErNullException() + } +} + fun Søknadsvedlegg.tilDBKontantstøtteVedlegg( søknad: DBKontantstøtteSøknad, data: ByteArray, diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/domene/VersjonertKontantst\303\270tteS\303\270knad.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/domene/VersjonertKontantst\303\270tteS\303\270knad.kt" index ee0d81745..accef336d 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/domene/VersjonertKontantst\303\270tteS\303\270knad.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/domene/VersjonertKontantst\303\270tteS\303\270knad.kt" @@ -1,9 +1,14 @@ package no.nav.familie.baks.mottak.søknad.kontantstøtte.domene import no.nav.familie.kontrakter.ks.søknad.v4.KontantstøtteSøknad as KontantstøtteSøknadV4 +import no.nav.familie.kontrakter.ks.søknad.v5.KontantstøtteSøknad as KontantstøtteSøknadV5 sealed class VersjonertKontantstøtteSøknad data class KontantstøtteSøknadV4( val kontantstøtteSøknad: KontantstøtteSøknadV4, ) : VersjonertKontantstøtteSøknad() + +data class KontantstøtteSøknadV5( + val kontantstøtteSøknad: KontantstøtteSøknadV5, +) : VersjonertKontantstøtteSøknad() diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/task/Journalf\303\270rKontantst\303\270tteS\303\270knadTask.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/task/Journalf\303\270rKontantst\303\270tteS\303\270knadTask.kt" index ffb5c9b56..4a166a587 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/task/Journalf\303\270rKontantst\303\270tteS\303\270knadTask.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/task/Journalf\303\270rKontantst\303\270tteS\303\270knadTask.kt" @@ -5,6 +5,7 @@ import no.nav.familie.baks.mottak.søknad.PdfService import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.DBKontantstøtteSøknad import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadRepository import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV4 +import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV5 import no.nav.familie.http.client.RessursException import no.nav.familie.prosessering.AsyncTaskStep import no.nav.familie.prosessering.TaskStepBeskrivelse @@ -45,6 +46,7 @@ class JournalførKontantstøtteSøknadTask( val orginalspråk = when (versjonertSøknad) { is KontantstøtteSøknadV4 -> versjonertSøknad.kontantstøtteSøknad.originalSpråk + is KontantstøtteSøknadV5 -> versjonertSøknad.kontantstøtteSøknad.originalSpråk } val orginalspråkPdf: ByteArray = diff --git "a/src/main/kotlin/no/nav/familie/baks/mottak/task/Journalf\303\270rS\303\270knadTask.kt" "b/src/main/kotlin/no/nav/familie/baks/mottak/task/Journalf\303\270rS\303\270knadTask.kt" index 6481e9d69..c31b8fc49 100644 --- "a/src/main/kotlin/no/nav/familie/baks/mottak/task/Journalf\303\270rS\303\270knadTask.kt" +++ "b/src/main/kotlin/no/nav/familie/baks/mottak/task/Journalf\303\270rS\303\270knadTask.kt" @@ -2,9 +2,10 @@ package no.nav.familie.baks.mottak.task import no.nav.familie.baks.mottak.søknad.JournalføringService import no.nav.familie.baks.mottak.søknad.PdfService +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV8 +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.DBBarnetrygdSøknad import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadRepository -import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.VersjonertBarnetrygdSøknad import no.nav.familie.http.client.RessursException import no.nav.familie.prosessering.AsyncTaskStep @@ -32,7 +33,8 @@ class JournalførSøknadTask( val søknadstype = when (versjonertBarnetrygdSøknad) { - is SøknadV8 -> versjonertBarnetrygdSøknad.søknad.søknadstype + is BarnetrygdSøknadV8 -> versjonertBarnetrygdSøknad.barnetrygdSøknad.søknadstype + is BarnetrygdSøknadV9 -> versjonertBarnetrygdSøknad.barnetrygdSøknad.søknadstype } log.info("Generer pdf og journalfør søknad om ${søknadstype.name.lowercase()} barnetrygd") val bokmålPdf = @@ -45,7 +47,8 @@ class JournalførSøknadTask( val orginalspråk = when (versjonertBarnetrygdSøknad) { - is SøknadV8 -> versjonertBarnetrygdSøknad.søknad.originalSpråk + is BarnetrygdSøknadV8 -> versjonertBarnetrygdSøknad.barnetrygdSøknad.originalSpråk + is BarnetrygdSøknadV9 -> versjonertBarnetrygdSøknad.barnetrygdSøknad.originalSpråk } val orginalspråkPdf: ByteArray = diff --git "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/ArkiverDokumentRequestMapperTest.kt" "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/ArkiverDokumentRequestMapperTest.kt" index f282ba983..0e501fdb7 100644 --- "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/ArkiverDokumentRequestMapperTest.kt" +++ "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/ArkiverDokumentRequestMapperTest.kt" @@ -3,20 +3,20 @@ package no.nav.familie.baks.mottak.søknad import io.mockk.every import io.mockk.junit5.MockKExtension import io.mockk.mockk +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.DBBarnetrygdSøknad import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.DBVedlegg -import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.DBKontantstotteVedlegg import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.DBKontantstøtteSøknad -import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV4 +import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV5 import no.nav.familie.kontrakter.ba.søknad.v4.Søknadstype -import no.nav.familie.kontrakter.ba.søknad.v8.Søknad +import no.nav.familie.kontrakter.ba.søknad.v9.BarnetrygdSøknad import no.nav.familie.kontrakter.felles.dokarkiv.Dokumenttype import no.nav.familie.kontrakter.felles.dokarkiv.v2.Filtype import no.nav.familie.kontrakter.ks.søknad.v1.Dokumentasjonsbehov import no.nav.familie.kontrakter.ks.søknad.v1.Søknaddokumentasjon import no.nav.familie.kontrakter.ks.søknad.v1.TekstPåSpråkMap -import no.nav.familie.kontrakter.ks.søknad.v4.KontantstøtteSøknad +import no.nav.familie.kontrakter.ks.søknad.v5.KontantstøtteSøknad import org.junit.jupiter.api.Test import org.junit.jupiter.api.extension.ExtendWith import kotlin.test.assertEquals @@ -57,7 +57,7 @@ class ArkiverDokumentRequestMapperTest { val arkiverDokumentRequest = ArkiverDokumentRequestMapper.toDto( dbKontantstøtteSøknad, - KontantstøtteSøknadV4(kontantstøtteSøknad = kontantstøtteSøknad), + KontantstøtteSøknadV5(kontantstøtteSøknad = kontantstøtteSøknad), ByteArray(0), vedleggMap, ByteArray(0), @@ -89,7 +89,7 @@ class ArkiverDokumentRequestMapperTest { @Test fun `toDto - skal opprette ArkiverDokumentRequest basert på BarnetrygdSøknad`() { - val søknad: Søknad = mockk() + val barnetrygdSøknad: BarnetrygdSøknad = mockk() val dokumentasjon = no.nav.familie.kontrakter.ba.søknad.v7.Søknaddokumentasjon( no.nav.familie.kontrakter.ba.søknad.v7.Dokumentasjonsbehov.AVTALE_DELT_BOSTED, @@ -109,11 +109,11 @@ class ArkiverDokumentRequestMapperTest { ), ), ) - every { søknad.dokumentasjon } returns + every { barnetrygdSøknad.dokumentasjon } returns listOf( dokumentasjon, ) - every { søknad.søknadstype } returns Søknadstype.ORDINÆR + every { barnetrygdSøknad.søknadstype } returns Søknadstype.ORDINÆR val dbBarnetrygdSøknad = DBBarnetrygdSøknad(søknadJson = "{}", fnr = "12345678910") val vedleggMap = @@ -123,7 +123,7 @@ class ArkiverDokumentRequestMapperTest { val arkiverDokumentRequest = ArkiverDokumentRequestMapper.toDto( dbBarnetrygdSøknad, - SøknadV8(søknad), + BarnetrygdSøknadV9(barnetrygdSøknad), ByteArray(0), vedleggMap, ByteArray(0), diff --git "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/EksternReferanseIdTest.kt" "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/EksternReferanseIdTest.kt" index fedf55018..511059205 100644 --- "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/EksternReferanseIdTest.kt" +++ "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/EksternReferanseIdTest.kt" @@ -28,7 +28,7 @@ class EksternReferanseIdTest( @Autowired val journalførSøknadTask: JournalførSøknadTask, ) { - val søknad = SøknadTestData.søknadV8() + val søknad = SøknadTestData.barnetrygdSøknad() val dbSøknad = søknad.tilDBSøknad() @Test diff --git "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/Journalf\303\270ringTest.kt" "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/Journalf\303\270ringTest.kt" index 9b51c15c5..f84b53826 100644 --- "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/Journalf\303\270ringTest.kt" +++ "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/Journalf\303\270ringTest.kt" @@ -31,7 +31,7 @@ class JournalføringTest( @Autowired val kontantstøtteSøknadService: KontantstøtteSøknadService, ) { - val søknad = SøknadTestData.søknadV8() + val søknad = SøknadTestData.barnetrygdSøknad() val dbSøknad = søknad.tilDBSøknad() val kontantstøtteSøknad = KontantstøtteSøknadTestData.kontantstøtteSøknad() val dbKontantstøtteSøknad = kontantstøtteSøknad.tilDBKontantstøtteSøknad() diff --git "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/PdfServiceTest.kt" "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/PdfServiceTest.kt" index b90869e0b..4345cbc8c 100644 --- "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/PdfServiceTest.kt" +++ "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/PdfServiceTest.kt" @@ -8,14 +8,14 @@ import io.mockk.every import io.mockk.mockk import io.mockk.slot import no.nav.familie.baks.mottak.integrasjoner.PdfClient +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.DBBarnetrygdSøknad -import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.tilDBSøknad +import no.nav.familie.kontrakter.ba.søknad.v9.BarnetrygdSøknad import org.assertj.core.api.Assertions.assertThat import org.junit.jupiter.api.Test import org.junit.jupiter.api.TestInstance import java.io.File -import no.nav.familie.kontrakter.ba.søknad.v8.Søknad as SøknadKontraktV8 @TestInstance(TestInstance.Lifecycle.PER_CLASS) internal class PdfServiceTest { @@ -36,14 +36,14 @@ internal class PdfServiceTest { val jsonString: String = File("./src/test/kotlin/no/nav/familie/baks/mottak/søknad/testdata/testdata1.json") .readText(Charsets.UTF_8) - val søknad: SøknadKontraktV8 = mapper.readValue(jsonString) - val dbBarnetrygdSøknad: DBBarnetrygdSøknad = søknad.tilDBSøknad() - pdfService.lagBarnetrygdPdf(SøknadV8(søknad = søknad), dbBarnetrygdSøknad, språk = "nb") + val barnetrygdSøknad: BarnetrygdSøknad = mapper.readValue(jsonString) + val dbBarnetrygdSøknad: DBBarnetrygdSøknad = barnetrygdSøknad.tilDBSøknad() + pdfService.lagBarnetrygdPdf(BarnetrygdSøknadV9(barnetrygdSøknad = barnetrygdSøknad), dbBarnetrygdSøknad, språk = "nb") // Kommenter inn dette for å logge generert json til console // val jsonToDokgen: String = mapper.writeValueAsString(jsonSlot) // println(jsonToDokgen) - assertThat(jsonSlot.captured["kontraktVersjon"]).isEqualTo(8) + assertThat(jsonSlot.captured["kontraktVersjon"]).isEqualTo(9) } } diff --git "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadSpr\303\245kvelgerServiceTest.kt" "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadSpr\303\245kvelgerServiceTest.kt" index 7ab75835b..e20555723 100644 --- "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadSpr\303\245kvelgerServiceTest.kt" +++ "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadSpr\303\245kvelgerServiceTest.kt" @@ -4,13 +4,13 @@ import com.fasterxml.jackson.databind.JsonNode import io.mockk.every import io.mockk.junit5.MockKExtension import io.mockk.mockk -import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV4 +import no.nav.familie.baks.mottak.søknad.kontantstøtte.domene.KontantstøtteSøknadV5 import no.nav.familie.kontrakter.felles.objectMapper import no.nav.familie.kontrakter.ks.søknad.v1.Søknaddokumentasjon import no.nav.familie.kontrakter.ks.søknad.v1.Søknadsfelt import no.nav.familie.kontrakter.ks.søknad.v1.TekstPåSpråkMap import no.nav.familie.kontrakter.ks.søknad.v4.Barn -import no.nav.familie.kontrakter.ks.søknad.v4.KontantstøtteSøknad +import no.nav.familie.kontrakter.ks.søknad.v5.KontantstøtteSøknad import org.junit.jupiter.api.Test import org.junit.jupiter.api.extension.ExtendWith import kotlin.test.assertEquals @@ -54,7 +54,7 @@ class SøknadSpråkvelgerServiceTest { dokumentasjon, ) - val versjonertKontantstøtteSøknad = KontantstøtteSøknadV4(kontantstøtteSøknad = kontantstøtteSøknad) + val versjonertKontantstøtteSøknad = KontantstøtteSøknadV5(kontantstøtteSøknad = kontantstøtteSøknad) // Bokmål var kontantstøtteMapForSpråk = diff --git "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadTest.kt" "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadTest.kt" index d110d7810..e6f75481e 100644 --- "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadTest.kt" +++ "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadTest.kt" @@ -2,8 +2,8 @@ package no.nav.familie.baks.mottak.søknad import no.nav.familie.baks.mottak.DevLauncherPostgres import no.nav.familie.baks.mottak.søknad.barnetrygd.BarnetrygdSøknadService +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.DBBarnetrygdSøknad -import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.tilDBSøknad import no.nav.familie.baks.mottak.util.DbContainerInitializer import no.nav.familie.kontrakter.felles.objectMapper @@ -26,46 +26,46 @@ import kotlin.test.assertEquals class SøknadTest( @Autowired val barnetrygdSøknadService: BarnetrygdSøknadService, ) { - val søknadV8 = SøknadTestData.søknadV8() + val barnetrygdSøknad = SøknadTestData.barnetrygdSøknad() @Test fun `Lagring av søknad`() { - val dbSøknadFraMapper = søknadV8.tilDBSøknad() - assertThat(dbSøknadFraMapper.hentVersjonertSøknad() is SøknadV8).isTrue + val dbSøknadFraMapper = barnetrygdSøknad.tilDBSøknad() + assertThat(dbSøknadFraMapper.hentVersjonertSøknad() is BarnetrygdSøknadV9).isTrue val dbSøknadFraDB = barnetrygdSøknadService.lagreDBSøknad(dbSøknadFraMapper) val hentetSøknad = barnetrygdSøknadService.hentDBSøknad(dbSøknadFraDB.id) assertEquals(dbSøknadFraDB.id, hentetSøknad!!.id) - assertThat(hentetSøknad.hentVersjonertSøknad() is SøknadV8) + assertThat(hentetSøknad.hentVersjonertSøknad() is BarnetrygdSøknadV9) } @Test - fun `Få riktig versjon v8 ved mapping fra DBSøknad`() { - val dbSøknadFraMapper = søknadV8.tilDBSøknad() + fun `Få riktig versjon 9 ved mapping fra DBSøknad`() { + val dbSøknadFraMapper = barnetrygdSøknad.tilDBSøknad() val versjon: Int? = when (val versjonertSøknad = dbSøknadFraMapper.hentVersjonertSøknad()) { - is SøknadV8 -> versjonertSøknad.søknad.kontraktVersjon + is BarnetrygdSøknadV9 -> versjonertSøknad.barnetrygdSøknad.kontraktVersjon else -> { null } } - assertEquals(søknadV8.kontraktVersjon, versjon) + assertEquals(barnetrygdSøknad.kontraktVersjon, versjon) val dbSøknadFraDB = barnetrygdSøknadService.lagreDBSøknad(dbSøknadFraMapper) val hentetSøknad = barnetrygdSøknadService.hentDBSøknad(dbSøknadFraDB.id) assertEquals(dbSøknadFraDB.id, hentetSøknad!!.id) - assertThat(hentetSøknad.hentVersjonertSøknad() is SøknadV8).isTrue + assertThat(hentetSøknad.hentVersjonertSøknad() is BarnetrygdSøknadV9).isTrue } @Test fun `Version detection ved henting av søknad fra database`() { - val lagraV8SøknadData = objectMapper.writeValueAsString(SøknadTestData.søknadV8()) - val v8DbBarnetrygdSøknad = + val barnetrygdSøknadSomString = objectMapper.writeValueAsString(SøknadTestData.barnetrygdSøknad()) + val dbBarnetrygdSøknad = DBBarnetrygdSøknad( id = 2L, - søknadJson = lagraV8SøknadData, + søknadJson = barnetrygdSøknadSomString, fnr = "1234123412", ) - assertThat(v8DbBarnetrygdSøknad.hentVersjonertSøknad() is SøknadV8).isTrue + assertThat(dbBarnetrygdSøknad.hentVersjonertSøknad() is BarnetrygdSøknadV9).isTrue } } diff --git "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadTestData.kt" "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadTestData.kt" index df17e3d60..678c79c61 100644 --- "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadTestData.kt" +++ "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadTestData.kt" @@ -7,10 +7,10 @@ import no.nav.familie.kontrakter.ba.søknad.v5.RegistrertBostedType import no.nav.familie.kontrakter.ba.søknad.v7.Dokumentasjonsbehov import no.nav.familie.kontrakter.ba.søknad.v7.Søknaddokumentasjon import no.nav.familie.kontrakter.ba.søknad.v7.Søknadsvedlegg +import no.nav.familie.kontrakter.ba.søknad.v9.BarnetrygdSøknad import no.nav.familie.kontrakter.ba.søknad.v4.Søknadsfelt as SøknadsfeltV4 import no.nav.familie.kontrakter.ba.søknad.v8.Barn as BarnV8 import no.nav.familie.kontrakter.ba.søknad.v8.Søker as SøkerV8 -import no.nav.familie.kontrakter.ba.søknad.v8.Søknad as SøknadV8 fun søknadsfelt( label: String, @@ -78,10 +78,10 @@ object SøknadTestData { ), ) - fun søknadV8(): SøknadV8 = - SøknadV8( + fun barnetrygdSøknad(): BarnetrygdSøknad = + BarnetrygdSøknad( antallEøsSteg = 3, - kontraktVersjon = 8, + kontraktVersjon = 9, søknadstype = Søknadstype.ORDINÆR, søker = søkerV8(), barn = barnV8(), @@ -104,5 +104,6 @@ object SøknadTestData { ), originalSpråk = "nb", teksterUtenomSpørsmål = mapOf(), + finnesPersonMedAdressebeskyttelse = false, ) } diff --git "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadsfeltSpr\303\245kTest.kt" "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadsfeltSpr\303\245kTest.kt" index 228c807c1..6b3f07d5c 100644 --- "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadsfeltSpr\303\245kTest.kt" +++ "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/S\303\270knadsfeltSpr\303\245kTest.kt" @@ -4,10 +4,10 @@ import com.fasterxml.jackson.databind.JsonNode import io.mockk.every import io.mockk.mockk import no.nav.familie.baks.mottak.DevLauncherPostgres -import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.SøknadV8 +import no.nav.familie.baks.mottak.søknad.barnetrygd.domene.BarnetrygdSøknadV9 import no.nav.familie.baks.mottak.util.DbContainerInitializer import no.nav.familie.kontrakter.ba.søknad.v4.Søknadsfelt -import no.nav.familie.kontrakter.ba.søknad.v8.Søknad +import no.nav.familie.kontrakter.ba.søknad.v9.BarnetrygdSøknad import no.nav.familie.kontrakter.felles.objectMapper import org.junit.jupiter.api.Tag import org.junit.jupiter.api.Test @@ -30,9 +30,9 @@ class SøknadsfeltSpråkTest( ) { @Test fun `Kan velge språk for søknadsfelter`() { - val søknad: Søknad = mockk() - every { søknad.originalSpråk } returns "nb" - every { søknad.spørsmål } returns + val barnetrygdSøknad: BarnetrygdSøknad = mockk() + every { barnetrygdSøknad.originalSpråk } returns "nb" + every { barnetrygdSøknad.spørsmål } returns mapOf( "testSpørsmål" to Søknadsfelt( @@ -48,22 +48,22 @@ class SøknadsfeltSpråkTest( ), ), ) - every { søknad.teksterUtenomSpørsmål } returns mapOf() + every { barnetrygdSøknad.teksterUtenomSpørsmål } returns mapOf() - var barnetrygdSøknadMap = søknadSpråkvelgerService.konverterBarnetrygdSøknadTilMapForSpråk(SøknadV8(søknad = søknad), "en") + var barnetrygdSøknadMap = søknadSpråkvelgerService.konverterBarnetrygdSøknadTilMapForSpråk(BarnetrygdSøknadV9(barnetrygdSøknad = barnetrygdSøknad), "en") var barnetrygdSøknadJsonNode = objectMapper.valueToTree(barnetrygdSøknadMap) assertEquals("TestAnswer", barnetrygdSøknadJsonNode["spørsmål"]["testSpørsmål"]["verdi"].textValue()) - barnetrygdSøknadMap = søknadSpråkvelgerService.konverterBarnetrygdSøknadTilMapForSpråk(SøknadV8(søknad = søknad), "nb") + barnetrygdSøknadMap = søknadSpråkvelgerService.konverterBarnetrygdSøknadTilMapForSpråk(BarnetrygdSøknadV9(barnetrygdSøknad = barnetrygdSøknad), "nb") barnetrygdSøknadJsonNode = objectMapper.valueToTree(barnetrygdSøknadMap) assertEquals("TestSvar", barnetrygdSøknadJsonNode["spørsmål"]["testSpørsmål"]["verdi"].textValue()) } @Test fun `Påvirker ikke global objectmapping`() { - val søknad: Søknad = mockk() - every { søknad.originalSpråk } returns "nb" - every { søknad.spørsmål } returns + val barnetrygdSøknad: BarnetrygdSøknad = mockk() + every { barnetrygdSøknad.originalSpråk } returns "nb" + every { barnetrygdSøknad.spørsmål } returns mapOf( "testSpørsmål" to Søknadsfelt( @@ -80,7 +80,7 @@ class SøknadsfeltSpråkTest( ), ) - val asJson = objectMapper.writeValueAsString(søknad) + val asJson = objectMapper.writeValueAsString(barnetrygdSøknad) assertNotEquals(-1, asJson.indexOf("TestSpørsmål")) assertNotEquals(-1, asJson.indexOf("TestSvar")) assertNotEquals(-1, asJson.indexOf("TestQuestion")) @@ -89,9 +89,9 @@ class SøknadsfeltSpråkTest( @Test fun `Håndterer nested SøknadsFelter korrekt`() { - val søknad: Søknad = mockk() - every { søknad.originalSpråk } returns "nb" - every { søknad.spørsmål } returns + val barnetrygdSøknad: BarnetrygdSøknad = mockk() + every { barnetrygdSøknad.originalSpråk } returns "nb" + every { barnetrygdSøknad.spørsmål } returns mapOf( "testSpørsmål" to Søknadsfelt( @@ -131,18 +131,18 @@ class SøknadsfeltSpråkTest( ), ), ) - every { søknad.teksterUtenomSpørsmål } returns mapOf() + every { barnetrygdSøknad.teksterUtenomSpørsmål } returns mapOf() - val barnetrygdSøknadMap = søknadSpråkvelgerService.konverterBarnetrygdSøknadTilMapForSpråk(SøknadV8(søknad = søknad), "nb") + val barnetrygdSøknadMap = søknadSpråkvelgerService.konverterBarnetrygdSøknadTilMapForSpråk(BarnetrygdSøknadV9(barnetrygdSøknad = barnetrygdSøknad), "nb") val barnetrygdSøknadJsonNode = objectMapper.valueToTree(barnetrygdSøknadMap) assertEquals("TestNøstetVerdi", barnetrygdSøknadJsonNode["spørsmål"]["testSpørsmål"]["verdi"]["verdi"].textValue()) } @Test fun `Håndterer språkvalg for ekstratekster`() { - val søknad: Søknad = mockk() - every { søknad.originalSpråk } returns "nb" - every { søknad.teksterUtenomSpørsmål } returns + val barnetrygdSøknad: BarnetrygdSøknad = mockk() + every { barnetrygdSøknad.originalSpråk } returns "nb" + every { barnetrygdSøknad.teksterUtenomSpørsmål } returns mapOf( "test.tekst" to mapOf( @@ -151,7 +151,7 @@ class SøknadsfeltSpråkTest( ), ) - val barnetrygdSøknadMap = søknadSpråkvelgerService.konverterBarnetrygdSøknadTilMapForSpråk(SøknadV8(søknad = søknad), "nb") + val barnetrygdSøknadMap = søknadSpråkvelgerService.konverterBarnetrygdSøknadTilMapForSpråk(BarnetrygdSøknadV9(barnetrygdSøknad = barnetrygdSøknad), "nb") val barnetrygdSøknadJsonNode = objectMapper.valueToTree(barnetrygdSøknadMap) assertEquals("TestTekst", barnetrygdSøknadJsonNode["teksterUtenomSpørsmål"]["test.tekst"].textValue()) } diff --git "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadTestData.kt" "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadTestData.kt" index 58dd5ec69..84f7d8c18 100644 --- "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadTestData.kt" +++ "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/kontantst\303\270tte/Kontantst\303\270tteS\303\270knadTestData.kt" @@ -2,8 +2,8 @@ package no.nav.familie.baks.mottak.søknad.kontantstøtte import no.nav.familie.kontrakter.ks.søknad.v1.SIVILSTANDTYPE import no.nav.familie.kontrakter.ks.søknad.v1.Søknadsfelt -import no.nav.familie.kontrakter.ks.søknad.v4.KontantstøtteSøknad import no.nav.familie.kontrakter.ks.søknad.v4.Søker +import no.nav.familie.kontrakter.ks.søknad.v5.KontantstøtteSøknad fun søknadsfelt( label: String, @@ -13,7 +13,7 @@ fun søknadsfelt( object KontantstøtteSøknadTestData { fun kontantstøtteSøknad(): KontantstøtteSøknad = KontantstøtteSøknad( - kontraktVersjon = 4, + kontraktVersjon = 5, antallEøsSteg = 2, søker = lagSøker(), barn = emptyList(), @@ -28,6 +28,7 @@ object KontantstøtteSøknadTestData { mottarKontantstøtteForBarnFraAnnetEøsland = søknadsfelt("Kontantstøtte annet land", "NEI"), harEllerTildeltBarnehageplass = søknadsfelt("Har barnehageplass", "NEI"), erAvdødPartnerForelder = null, + finnesPersonMedAdressebeskyttelse = false, ) private fun lagSøker(): Søker = diff --git "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/testdata/dokgen/testdata_input.json" "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/testdata/dokgen/testdata_input.json" index cbc2bd697..7b68dcc5a 100644 --- "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/testdata/dokgen/testdata_input.json" +++ "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/testdata/dokgen/testdata_input.json" @@ -1,5 +1,5 @@ { - "kontraktVersjon": 8, + "kontraktVersjon": 9, "antallEøsSteg": 2, "søknadstype": "ORDINÆR", "søker": { diff --git "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/testdata/testdata1.json" "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/testdata/testdata1.json" index 25184b064..ba6079e38 100644 --- "a/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/testdata/testdata1.json" +++ "b/src/test/kotlin/no/nav/familie/baks/mottak/s\303\270knad/testdata/testdata1.json" @@ -1,6 +1,6 @@ { "søknadstype": "ORDINÆR", - "kontraktVersjon": 8, + "kontraktVersjon": 9, "antallEøsSteg": 2, "søker": { "harEøsSteg": true,