diff --git a/berik-inntektsmelding-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/berikinntektsmeldingservice/BerikInntektsmeldingService.kt b/berik-inntektsmelding-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/berikinntektsmeldingservice/BerikInntektsmeldingService.kt index 08dc156e7..d4a61733c 100644 --- a/berik-inntektsmelding-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/berikinntektsmeldingservice/BerikInntektsmeldingService.kt +++ b/berik-inntektsmelding-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/berikinntektsmeldingservice/BerikInntektsmeldingService.kt @@ -4,8 +4,8 @@ import kotlinx.serialization.builtins.serializer import kotlinx.serialization.json.JsonElement import no.nav.helse.rapids_rivers.RapidsConnection import no.nav.helsearbeidsgiver.domene.inntektsmelding.Utils.convert -import no.nav.helsearbeidsgiver.domene.inntektsmelding.deprecated.Inntektsmelding import no.nav.helsearbeidsgiver.domene.inntektsmelding.v1.AarsakInnsending +import no.nav.helsearbeidsgiver.domene.inntektsmelding.v1.Inntektsmelding import no.nav.helsearbeidsgiver.domene.inntektsmelding.v1.skjema.SkjemaInntektsmelding import no.nav.helsearbeidsgiver.felles.BehovType import no.nav.helsearbeidsgiver.felles.EventName @@ -32,7 +32,7 @@ import no.nav.helsearbeidsgiver.utils.wrapper.Fnr import no.nav.helsearbeidsgiver.utils.wrapper.Orgnr import java.time.LocalDate import java.util.UUID -import no.nav.helsearbeidsgiver.domene.inntektsmelding.v1.Inntektsmelding as InntektsmeldingV1 +import no.nav.helsearbeidsgiver.domene.inntektsmelding.deprecated.Inntektsmelding as InntektsmeldingGammel private const val UKJENT_NAVN = "Ukjent navn" private const val UKJENT_VIRKSOMHET = "Ukjent virksomhet" @@ -57,9 +57,8 @@ data class Steg3( ) data class Steg4( - val inntektsmeldingV1: InntektsmeldingV1, - val bestemmendeFravaersdag: LocalDate, val inntektsmelding: Inntektsmelding, + val bestemmendeFravaersdag: LocalDate, val erDuplikat: Boolean, ) @@ -96,9 +95,8 @@ class BerikInntektsmeldingService( override fun lesSteg4(melding: Map): Steg4 = Steg4( - inntektsmeldingV1 = Key.INNTEKTSMELDING.les(InntektsmeldingV1.serializer(), melding), + inntektsmelding = Key.INNTEKTSMELDING.les(Inntektsmelding.serializer(), melding), bestemmendeFravaersdag = Key.BESTEMMENDE_FRAVAERSDAG.les(LocalDateSerializer, melding), - inntektsmelding = Key.INNTEKTSMELDING_DOKUMENT.les(Inntektsmelding.serializer(), melding), erDuplikat = Key.ER_DUPLIKAT_IM.les(Boolean.serializer(), melding), ) @@ -201,11 +199,13 @@ class BerikInntektsmeldingService( data .plus( mapOf( + // TODO slett etter overgangsperiode Key.FORESPOERSEL_ID to steg0.skjema.forespoerselId.toJson(), - Key.INNTEKTSMELDING to inntektsmelding.toJson(InntektsmeldingV1.serializer()), - // TODO vurder å flytte denne inn i InntektsmeldingV1 (ikke sikker om det er en god idé, så avventer til v1 er brukt overalt) + Key.INNTEKTSMELDING to inntektsmelding.toJson(Inntektsmelding.serializer()), + // TODO vurder å flytte denne inn i Inntektsmelding (ikke sikker om det er en god idé, så avventer til v1 er brukt overalt) Key.BESTEMMENDE_FRAVAERSDAG to bestemmendeFravaersdag.toJson(), - Key.INNTEKTSMELDING_DOKUMENT to inntektsmeldingGammeltFormat.toJson(Inntektsmelding.serializer()), + // TODO slett etter overgangsperiode + Key.INNTEKTSMELDING_DOKUMENT to inntektsmeldingGammeltFormat.toJson(InntektsmeldingGammel.serializer()), Key.INNSENDING_ID to steg0.innsendingId.toJson(Long.serializer()), ), ).toJson(), @@ -227,7 +227,7 @@ class BerikInntektsmeldingService( Key.EVENT_NAME to EventName.INNTEKTSMELDING_MOTTATT.toJson(), Key.UUID to steg0.transaksjonId.toJson(), Key.FORESPOERSEL_ID to steg0.skjema.forespoerselId.toJson(), - Key.INNTEKTSMELDING to steg4.inntektsmeldingV1.toJson(InntektsmeldingV1.serializer()), + Key.INNTEKTSMELDING to steg4.inntektsmelding.toJson(Inntektsmelding.serializer()), Key.BESTEMMENDE_FRAVAERSDAG to steg4.bestemmendeFravaersdag.toJson(), Key.INNSENDING_ID to steg0.innsendingId.toJson(Long.serializer()), ).mapValuesNotNull { it }, diff --git a/berik-inntektsmelding-service/src/test/kotlin/no.nav.helsearbeidsgiver.inntektsmelding.berikinntektsmeldingservice/BerikInntektsmeldingServiceTest.kt b/berik-inntektsmelding-service/src/test/kotlin/no.nav.helsearbeidsgiver.inntektsmelding.berikinntektsmeldingservice/BerikInntektsmeldingServiceTest.kt index 14f0a7054..fc3b4c440 100644 --- a/berik-inntektsmelding-service/src/test/kotlin/no.nav.helsearbeidsgiver.inntektsmelding.berikinntektsmeldingservice/BerikInntektsmeldingServiceTest.kt +++ b/berik-inntektsmelding-service/src/test/kotlin/no.nav.helsearbeidsgiver.inntektsmelding.berikinntektsmeldingservice/BerikInntektsmeldingServiceTest.kt @@ -9,7 +9,6 @@ import kotlinx.serialization.builtins.serializer import kotlinx.serialization.json.JsonElement import kotlinx.serialization.json.JsonObject import no.nav.helse.rapids_rivers.testsupport.TestRapid -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Utils.convert import no.nav.helsearbeidsgiver.domene.inntektsmelding.deprecated.Inntektsmelding import no.nav.helsearbeidsgiver.domene.inntektsmelding.v1.skjema.SkjemaInntektsmelding import no.nav.helsearbeidsgiver.felles.BehovType @@ -216,8 +215,7 @@ private object Mock { mapOf( Key.ER_DUPLIKAT_IM to false.toJson(Boolean.serializer()), Key.INNTEKTSMELDING to inntektsmelding.toJson(InntektsmeldingV1.serializer()), - Key.BESTEMMENDE_FRAVAERSDAG to 20.oktober.toJson(LocalDateSerializer), - Key.INNTEKTSMELDING_DOKUMENT to inntektsmelding.convert().toJson(Inntektsmelding.serializer()), + Key.BESTEMMENDE_FRAVAERSDAG to 20.oktober.toJson(), ) fun steg0(transaksjonId: UUID): Map = diff --git a/db/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreImRiver.kt b/db/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreImRiver.kt index 01cc7ef93..742f878f0 100644 --- a/db/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreImRiver.kt +++ b/db/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreImRiver.kt @@ -2,7 +2,8 @@ package no.nav.helsearbeidsgiver.inntektsmelding.db.river import kotlinx.serialization.builtins.serializer import kotlinx.serialization.json.JsonElement -import no.nav.helsearbeidsgiver.domene.inntektsmelding.deprecated.Inntektsmelding +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Utils.convert +import no.nav.helsearbeidsgiver.domene.inntektsmelding.v1.Inntektsmelding import no.nav.helsearbeidsgiver.felles.BehovType import no.nav.helsearbeidsgiver.felles.EventName import no.nav.helsearbeidsgiver.felles.Key @@ -15,10 +16,12 @@ import no.nav.helsearbeidsgiver.felles.rapidsrivers.river.ObjectRiver import no.nav.helsearbeidsgiver.felles.utils.Log import no.nav.helsearbeidsgiver.inntektsmelding.db.InntektsmeldingRepository import no.nav.helsearbeidsgiver.inntektsmelding.db.erDuplikatAv +import no.nav.helsearbeidsgiver.utils.json.serializer.LocalDateSerializer import no.nav.helsearbeidsgiver.utils.json.serializer.UuidSerializer import no.nav.helsearbeidsgiver.utils.json.toJson import no.nav.helsearbeidsgiver.utils.log.logger import no.nav.helsearbeidsgiver.utils.log.sikkerLogger +import java.time.LocalDate import java.util.UUID data class LagreImMelding( @@ -26,8 +29,8 @@ data class LagreImMelding( val behovType: BehovType, val transaksjonId: UUID, val data: Map, - val forespoerselId: UUID, val inntektsmelding: Inntektsmelding, + val bestemmendeFravaersdag: LocalDate, val innsendingId: Long, ) @@ -48,22 +51,24 @@ class LagreImRiver( behovType = Key.BEHOV.krev(BehovType.LAGRE_IM, BehovType.serializer(), json), transaksjonId = Key.UUID.les(UuidSerializer, json), data = data, - forespoerselId = Key.FORESPOERSEL_ID.les(UuidSerializer, data), - inntektsmelding = Key.INNTEKTSMELDING_DOKUMENT.les(Inntektsmelding.serializer(), data), + inntektsmelding = Key.INNTEKTSMELDING.les(Inntektsmelding.serializer(), data), + bestemmendeFravaersdag = Key.BESTEMMENDE_FRAVAERSDAG.les(LocalDateSerializer, data), innsendingId = Key.INNSENDING_ID.les(Long.serializer(), data), ) } override fun LagreImMelding.haandter(json: Map): Map { - val nyesteIm = imRepo.hentNyesteInntektsmelding(forespoerselId) + val inntektsmeldingGammeltFormat = inntektsmelding.convert().copy(bestemmendeFraværsdag = bestemmendeFravaersdag) + + val nyesteIm = imRepo.hentNyesteInntektsmelding(inntektsmelding.type.id) // TODO: Fjernes etter at vi har gått i prod med den nye innsending-flyten - val erDuplikat = nyesteIm?.erDuplikatAv(inntektsmelding) ?: false + val erDuplikat = nyesteIm?.erDuplikatAv(inntektsmeldingGammeltFormat) ?: false if (erDuplikat) { sikkerLogger.warn("Fant duplikat av inntektsmelding.") } else { - imRepo.oppdaterMedBeriketDokument(forespoerselId, innsendingId, inntektsmelding) + imRepo.oppdaterMedBeriketDokument(inntektsmelding.type.id, innsendingId, inntektsmeldingGammeltFormat) sikkerLogger.info("Lagret inntektsmelding.") } @@ -89,7 +94,7 @@ class LagreImRiver( feilmelding = "Klarte ikke lagre inntektsmelding i database.", event = eventName, transaksjonId = transaksjonId, - forespoerselId = forespoerselId, + forespoerselId = inntektsmelding.type.id, utloesendeMelding = json.toJson(), ) @@ -105,6 +110,6 @@ class LagreImRiver( Log.event(eventName), Log.behov(behovType), Log.transaksjonId(transaksjonId), - Log.forespoerselId(forespoerselId), + Log.forespoerselId(inntektsmelding.type.id), ) } diff --git a/db/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreImRiverTest.kt b/db/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreImRiverTest.kt index 961a9d1a8..c583d6662 100644 --- a/db/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreImRiverTest.kt +++ b/db/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreImRiverTest.kt @@ -15,8 +15,9 @@ import kotlinx.serialization.builtins.serializer import kotlinx.serialization.json.JsonElement import kotlinx.serialization.json.JsonNull import no.nav.helse.rapids_rivers.testsupport.TestRapid -import no.nav.helsearbeidsgiver.domene.inntektsmelding.deprecated.AarsakInnsending -import no.nav.helsearbeidsgiver.domene.inntektsmelding.deprecated.Inntektsmelding +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Utils.convert +import no.nav.helsearbeidsgiver.domene.inntektsmelding.v1.AarsakInnsending +import no.nav.helsearbeidsgiver.domene.inntektsmelding.v1.Inntektsmelding import no.nav.helsearbeidsgiver.domene.inntektsmelding.v1.til import no.nav.helsearbeidsgiver.felles.BehovType import no.nav.helsearbeidsgiver.felles.EventName @@ -24,12 +25,13 @@ import no.nav.helsearbeidsgiver.felles.Key import no.nav.helsearbeidsgiver.felles.json.toJson import no.nav.helsearbeidsgiver.felles.json.toMap import no.nav.helsearbeidsgiver.felles.rapidsrivers.model.Fail -import no.nav.helsearbeidsgiver.felles.test.mock.mockInntektsmelding +import no.nav.helsearbeidsgiver.felles.test.mock.mockInntektsmeldingV1 import no.nav.helsearbeidsgiver.felles.test.rapidsrivers.firstMessage import no.nav.helsearbeidsgiver.felles.test.rapidsrivers.sendJson import no.nav.helsearbeidsgiver.inntektsmelding.db.InntektsmeldingRepository import no.nav.helsearbeidsgiver.utils.json.toJson import no.nav.helsearbeidsgiver.utils.test.date.august +import no.nav.helsearbeidsgiver.utils.test.date.oktober import java.util.UUID class LagreImRiverTest : @@ -51,15 +53,15 @@ class LagreImRiverTest : mapOf( "hvis ingen andre inntektsmeldinger er mottatt" to null, "hvis ikke duplikat av tidligere inntektsmeldinger" to - mockInntektsmelding().copy( - fraværsperioder = listOf(9.august til 29.august), + mockInntektsmeldingV1().copy( + sykmeldingsperioder = listOf(9.august til 29.august), ), ), ) { eksisterendeInntektsmelding -> - every { mockImRepo.hentNyesteInntektsmelding(any()) } returns eksisterendeInntektsmelding + every { mockImRepo.hentNyesteInntektsmelding(any()) } returns eksisterendeInntektsmelding?.convert() every { mockImRepo.oppdaterMedBeriketDokument(any(), any(), any()) } just Runs - val nyInntektsmelding = mockInntektsmelding() + val nyInntektsmelding = mockInntektsmeldingV1() val innkommendeMelding = innkommendeMelding(innsendingId, nyInntektsmelding) @@ -73,32 +75,37 @@ class LagreImRiverTest : Key.UUID to innkommendeMelding.transaksjonId.toJson(), Key.DATA to mapOf( - Key.FORESPOERSEL_ID to innkommendeMelding.forespoerselId.toJson(), - Key.INNTEKTSMELDING_DOKUMENT to innkommendeMelding.inntektsmelding.toJson(Inntektsmelding.serializer()), + Key.INNTEKTSMELDING to innkommendeMelding.inntektsmelding.toJson(Inntektsmelding.serializer()), + Key.BESTEMMENDE_FRAVAERSDAG to bestemmendeFravaersdag.toJson(), Key.ER_DUPLIKAT_IM to false.toJson(Boolean.serializer()), Key.INNSENDING_ID to innsendingId.toJson(Long.serializer()), ).toJson(), ) verifySequence { - mockImRepo.hentNyesteInntektsmelding(innkommendeMelding.forespoerselId) - mockImRepo.oppdaterMedBeriketDokument(innkommendeMelding.forespoerselId, innsendingId, nyInntektsmelding) + mockImRepo.hentNyesteInntektsmelding(innkommendeMelding.inntektsmelding.type.id) + mockImRepo.oppdaterMedBeriketDokument(innkommendeMelding.inntektsmelding.type.id, innsendingId, nyInntektsmelding.convert()) } } } test("duplikat lagres ikke, men svarer OK") { - val nyInntektsmelding = mockInntektsmelding() + val nyInntektsmelding = mockInntektsmeldingV1() val duplikatIm = - nyInntektsmelding.copy( - vedtaksperiodeId = UUID.randomUUID(), - innsenderNavn = "Krokete Krølltang", - årsakInnsending = AarsakInnsending.NY, - tidspunkt = nyInntektsmelding.tidspunkt.minusDays(14), - ) + nyInntektsmelding.let { + it.copy( + vedtaksperiodeId = UUID.randomUUID(), + avsender = + it.avsender.copy( + navn = "Krokete Krølltang", + ), + aarsakInnsending = AarsakInnsending.Ny, + mottatt = nyInntektsmelding.mottatt.minusDays(14), + ) + } - every { mockImRepo.hentNyesteInntektsmelding(any()) } returns duplikatIm + every { mockImRepo.hentNyesteInntektsmelding(any()) } returns duplikatIm.convert() every { mockImRepo.oppdaterMedBeriketDokument(any(), any(), any()) } just Runs val innkommendeMelding = innkommendeMelding(innsendingId, nyInntektsmelding) @@ -113,18 +120,18 @@ class LagreImRiverTest : Key.UUID to innkommendeMelding.transaksjonId.toJson(), Key.DATA to mapOf( - Key.FORESPOERSEL_ID to innkommendeMelding.forespoerselId.toJson(), - Key.INNTEKTSMELDING_DOKUMENT to innkommendeMelding.inntektsmelding.toJson(Inntektsmelding.serializer()), + Key.INNTEKTSMELDING to innkommendeMelding.inntektsmelding.toJson(Inntektsmelding.serializer()), + Key.BESTEMMENDE_FRAVAERSDAG to bestemmendeFravaersdag.toJson(), Key.ER_DUPLIKAT_IM to true.toJson(Boolean.serializer()), Key.INNSENDING_ID to innsendingId.toJson(Long.serializer()), ).toJson(), ) verifySequence { - mockImRepo.hentNyesteInntektsmelding(innkommendeMelding.forespoerselId) + mockImRepo.hentNyesteInntektsmelding(innkommendeMelding.inntektsmelding.type.id) } verify(exactly = 0) { - mockImRepo.oppdaterMedBeriketDokument(innkommendeMelding.forespoerselId, innsendingId, nyInntektsmelding) + mockImRepo.oppdaterMedBeriketDokument(any(), any(), any()) } } @@ -140,7 +147,7 @@ class LagreImRiverTest : feilmelding = "Klarte ikke lagre inntektsmelding i database.", event = innkommendeMelding.eventName, transaksjonId = innkommendeMelding.transaksjonId, - forespoerselId = innkommendeMelding.forespoerselId, + forespoerselId = innkommendeMelding.inntektsmelding.type.id, utloesendeMelding = innkommendeMelding.toMap().toJson(), ) @@ -182,27 +189,26 @@ class LagreImRiverTest : } }) +private val bestemmendeFravaersdag = 20.oktober + private fun innkommendeMelding( innsendingId: Long, - inntektsmelding: Inntektsmelding = mockInntektsmelding(), -): LagreImMelding { - val forespoerselId = UUID.randomUUID() - - return LagreImMelding( + inntektsmelding: Inntektsmelding = mockInntektsmeldingV1(), +): LagreImMelding = + LagreImMelding( eventName = EventName.INNTEKTSMELDING_SKJEMA_LAGRET, behovType = BehovType.LAGRE_IM, transaksjonId = UUID.randomUUID(), data = mapOf( - Key.FORESPOERSEL_ID to forespoerselId.toJson(), - Key.INNTEKTSMELDING_DOKUMENT to inntektsmelding.toJson(Inntektsmelding.serializer()), + Key.INNTEKTSMELDING to inntektsmelding.toJson(Inntektsmelding.serializer()), + Key.BESTEMMENDE_FRAVAERSDAG to bestemmendeFravaersdag.toJson(), Key.INNSENDING_ID to innsendingId.toJson(Long.serializer()), ), - forespoerselId = forespoerselId, inntektsmelding = inntektsmelding, + bestemmendeFravaersdag = bestemmendeFravaersdag, innsendingId = innsendingId, ) -} private fun LagreImMelding.toMap(): Map = mapOf( diff --git a/db/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreJournalpostIdRiverTest.kt b/db/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreJournalpostIdRiverTest.kt index a667fc7c0..f163a1ad4 100644 --- a/db/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreJournalpostIdRiverTest.kt +++ b/db/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/db/river/LagreJournalpostIdRiverTest.kt @@ -30,7 +30,6 @@ import no.nav.helsearbeidsgiver.inntektsmelding.db.InntektsmeldingRepository import no.nav.helsearbeidsgiver.inntektsmelding.db.SelvbestemtImRepo import no.nav.helsearbeidsgiver.inntektsmelding.db.river.Mock.INNSENDING_ID import no.nav.helsearbeidsgiver.inntektsmelding.db.river.Mock.toMap -import no.nav.helsearbeidsgiver.utils.json.serializer.LocalDateSerializer import no.nav.helsearbeidsgiver.utils.json.toJson import no.nav.helsearbeidsgiver.utils.test.date.oktober import java.util.UUID @@ -65,7 +64,7 @@ class LagreJournalpostIdRiverTest : Key.EVENT_NAME to EventName.INNTEKTSMELDING_JOURNALFOERT.toJson(), Key.UUID to innkommendeMelding.transaksjonId.toJson(), Key.INNTEKTSMELDING to innkommendeMelding.inntektsmelding.toJson(Inntektsmelding.serializer()), - Key.BESTEMMENDE_FRAVAERSDAG to Mock.bestemmendeFravaersdag.toJson(LocalDateSerializer), + Key.BESTEMMENDE_FRAVAERSDAG to Mock.bestemmendeFravaersdag.toJson(), Key.JOURNALPOST_ID to innkommendeMelding.journalpostId.toJson(), ) @@ -249,7 +248,7 @@ private object Mock { Key.UUID to transaksjonId.toJson(), Key.JOURNALPOST_ID to journalpostId.toJson(), Key.INNTEKTSMELDING to inntektsmelding.toJson(Inntektsmelding.serializer()), - Key.BESTEMMENDE_FRAVAERSDAG to bestemmendeFravaersdag.toJson(LocalDateSerializer), + Key.BESTEMMENDE_FRAVAERSDAG to bestemmendeFravaersdag.toJson(), Key.INNSENDING_ID to INNSENDING_ID.toJson(Long.serializer()), ) diff --git a/joark/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/joark/JournalfoerImRiverTest.kt b/joark/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/joark/JournalfoerImRiverTest.kt index e46b85555..56d8783fb 100644 --- a/joark/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/joark/JournalfoerImRiverTest.kt +++ b/joark/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/joark/JournalfoerImRiverTest.kt @@ -32,7 +32,6 @@ import no.nav.helsearbeidsgiver.felles.test.rapidsrivers.firstMessage import no.nav.helsearbeidsgiver.felles.test.rapidsrivers.sendJson import no.nav.helsearbeidsgiver.inntektsmelding.joark.Mock.toMap import no.nav.helsearbeidsgiver.utils.collection.mapValuesNotNull -import no.nav.helsearbeidsgiver.utils.json.serializer.LocalDateSerializer import no.nav.helsearbeidsgiver.utils.json.toJson import no.nav.helsearbeidsgiver.utils.test.date.oktober import java.time.LocalDate @@ -321,7 +320,7 @@ private object Mock { Key.EVENT_NAME to eventName.toJson(), Key.UUID to transaksjonId.toJson(), imKey to inntektsmelding.toJson(InntektsmeldingV1.serializer()), - Key.BESTEMMENDE_FRAVAERSDAG to bestemmendeFravaersdag?.toJson(LocalDateSerializer), + Key.BESTEMMENDE_FRAVAERSDAG to bestemmendeFravaersdag?.toJson(), ).mapValuesNotNull { it } fun opprettOgFerdigstillResponse(journalpostId: String): OpprettOgFerdigstillResponse =