Skip to content

Commit

Permalink
VedtaksperiodeId i selvbestemt IM (#673)
Browse files Browse the repository at this point in the history
* bumper hag-domene-versjon - inkluder vedtaksperiodeId i selvbestemt
* vedtaksperiodeId fra skjema til selvbestemt im
* logg dersom bestemmendeFraværsdag er inkonsistent

Co-authored-by: Magnus Sælensminde <[email protected]>
  • Loading branch information
mortenbyhring and magnusae committed Sep 16, 2024
1 parent 94e5db3 commit 15c6af9
Show file tree
Hide file tree
Showing 12 changed files with 32 additions and 24 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -288,7 +288,8 @@ private fun Inntektsmelding.hardcodedJson(): String =
"inntekt": ${inntekt?.hardcodedJson()},
"refusjon": ${refusjon?.hardcodedJson()},
"aarsakInnsending": "$aarsakInnsending",
"mottatt": "$mottatt"
"mottatt": "$mottatt",
"vedtaksperiodeId": "$vedtaksperiodeId"
}
""".removeJsonWhitespace()

Expand All @@ -298,8 +299,7 @@ private fun Inntektsmelding.Type.hardcodedJson(): String =
"""
{
"type": "Forespurt",
"id": "$id",
"vedtaksperiodeId": "$vedtaksperiodeId"
"id": "$id"
}
"""

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,8 @@ class LagreSelvbestemtImRouteKtTest : ApiTest() {
"perioder": [{"fom": "2024-02-14", "tom": "2024-02-15"}, {"fom": "2024-02-21", "tom": "2024-02-21"}]
}
},
"refusjon": null
"refusjon": null,
"vedtaksperiodeId": null
}
""".removeJsonWhitespace()
.parseJson()
Expand Down Expand Up @@ -185,7 +186,7 @@ class LagreSelvbestemtImRouteKtTest : ApiTest() {
}

@Test
fun `skal returnere bad reqest hvis arbeidsforhold mangler`() =
fun `skal returnere bad request hvis arbeidsforhold mangler`() =
testApi {
val expectedFeilmelding = "Mangler arbeidsforhold i perioden"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -225,9 +225,19 @@ class BerikInntektsmeldingService(
sikkerLogger.error(it)
}
}

val inntektsmeldingGammeltFormat = inntektsmelding.convert().copy(bestemmendeFraværsdag = bestemmendeFravaersdag)

val gammeltFormat = inntektsmelding.convert()
val defaultUtregnetGammeltFormat = gammeltFormat.bestemmendeFraværsdag
if (bestemmendeFravaersdag != defaultUtregnetGammeltFormat) {
(
"Utledning av bestemmendeFraværsdag er ikke konsistent for id ${inntektsmelding.id}. " +
"Utledet var: $bestemmendeFravaersdag, konvertert gir: $defaultUtregnetGammeltFormat"
).also {
logger.error(it)
sikkerLogger.error(it)
}
}
// TODO: hvorfor utleder vi to ganger!? Droppe copy..?
val inntektsmeldingGammeltFormat = gammeltFormat.copy(bestemmendeFraværsdag = bestemmendeFravaersdag)
rapid
.publish(
Key.EVENT_NAME to eventName.toJson(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,6 @@ fun mapInntektsmelding(
type =
Inntektsmelding.Type.Forespurt(
id = skjema.forespoerselId,
vedtaksperiodeId = forespoersel.vedtaksperiodeId,
),
sykmeldt =
Sykmeldt(
Expand All @@ -78,5 +77,6 @@ fun mapInntektsmelding(
refusjon = refusjon,
aarsakInnsending = aarsakInnsending,
mottatt = ZonedDateTime.now().toOffsetDateTime(),
vedtaksperiodeId = forespoersel.vedtaksperiodeId,
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,6 @@ class MapInntektsmeldingKtTest :
type shouldBe
Inntektsmelding.Type.Forespurt(
id = skjema.forespoerselId,
vedtaksperiodeId = forespoersel.vedtaksperiodeId,
)

sykmeldt shouldBe
Expand Down Expand Up @@ -81,6 +80,8 @@ class MapInntektsmeldingKtTest :

aarsakInnsending shouldBe AarsakInnsending.Endring

vedtaksperiodeId shouldBe forespoersel.vedtaksperiodeId

mottatt.shouldBeWithin(5.seconds.toJavaDuration(), ZonedDateTime.now().toOffsetDateTime())
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ 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.felles.BehovType
import no.nav.helsearbeidsgiver.felles.EventName
import no.nav.helsearbeidsgiver.felles.Key
Expand Down Expand Up @@ -47,18 +46,15 @@ class LagreJournalpostIdRiver(
} else {
val forespoerselId = Key.FORESPOERSEL_ID.lesOrNull(UuidSerializer, json)
val selvbestemtId = Key.SELVBESTEMT_ID.lesOrNull(UuidSerializer, json)

val inntektsmelding = Key.INNTEKTSMELDING_DOKUMENT.les(Inntektsmelding.serializer(), json)
val vedtaksperiodeId = inntektsmelding.vedtaksperiodeId

val inntektsmeldingType =
if (forespoerselId != null && vedtaksperiodeId != null) {
if (forespoerselId != null) {
InntektsmeldingV1.Type.Forespurt(
id = forespoerselId,
vedtaksperiodeId = vedtaksperiodeId,
)
} else if (selvbestemtId != null) {
InntektsmeldingV1.Type.Selvbestemt(selvbestemtId)
InntektsmeldingV1.Type.Selvbestemt(
id = selvbestemtId,
)
} else {
null
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,6 @@ class LagreJournalpostIdRiverTest :
Mock.innkommendeMelding(
InntektsmeldingV1.Type.Forespurt(
id = UUID.randomUUID(),
vedtaksperiodeId = UUID.randomUUID(),
),
)

Expand Down Expand Up @@ -123,7 +122,6 @@ class LagreJournalpostIdRiverTest :
Mock.innkommendeMelding(
InntektsmeldingV1.Type.Forespurt(
id = UUID.randomUUID(),
vedtaksperiodeId = UUID.randomUUID(),
),
)

Expand All @@ -148,7 +146,6 @@ class LagreJournalpostIdRiverTest :
Mock.innkommendeMelding(
InntektsmeldingV1.Type.Forespurt(
id = UUID.randomUUID(),
vedtaksperiodeId = UUID.randomUUID(),
),
)

Expand Down Expand Up @@ -229,7 +226,6 @@ class LagreJournalpostIdRiverTest :
.innkommendeMelding(
InntektsmeldingV1.Type.Forespurt(
id = UUID.randomUUID(),
vedtaksperiodeId = UUID.randomUUID(),
),
).toMap()
.plus(uoensketKeyMedVerdi),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ fun mockSkjemaInntektsmeldingSelvbestemt(): SkjemaInntektsmeldingSelvbestemt {
agp = inntektsmelding.agp,
inntekt = inntektsmelding.inntekt!!,
refusjon = inntektsmelding.refusjon,
vedtaksperiodeId = UUID.randomUUID(),
)
}

Expand All @@ -77,7 +78,6 @@ fun mockInntektsmeldingV1(): InntektsmeldingV1 =
type =
InntektsmeldingV1.Type.Forespurt(
id = UUID.randomUUID(),
vedtaksperiodeId = UUID.randomUUID(),
),
sykmeldt =
Sykmeldt(
Expand Down Expand Up @@ -144,6 +144,7 @@ fun mockInntektsmeldingV1(): InntektsmeldingV1 =
),
aarsakInnsending = AarsakInnsendingV1.Endring,
mottatt = 14.mars.kl(14, 41, 42, 0).atOffset(ZoneOffset.ofHours(1)),
vedtaksperiodeId = UUID.randomUUID(),
)

fun mockInntektsmeldingGammeltFormat(): Inntektsmelding = mockInntektsmeldingV1().convert()
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ kotlinVersion=2.0.0
kotlinterVersion=4.4.0

# Dependency versions
hagDomeneInntektsmeldingVersion=0.1.2
hagDomeneInntektsmeldingVersion=0.1.3
junitJupiterVersion=5.10.3
kotestVersion=5.9.1
kotlinCoroutinesVersion=1.8.1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -449,6 +449,7 @@ class LagreSelvbestemtIT : EndToEndTest() {
navn = "Jan Eggum",
),
aarsakInnsending = AarsakInnsending.Endring,
vedtaksperiodeId = skjema.vedtaksperiodeId.shouldNotBeNull(),
)
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -386,5 +386,6 @@ fun tilInntektsmelding(
refusjon = skjema.refusjon,
aarsakInnsending = aarsakInnsending,
mottatt = OffsetDateTime.now(),
vedtaksperiodeId = skjema.vedtaksperiodeId,
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -514,6 +514,7 @@ private object Mock {
),
sluttdato = 30.mars,
),
vedtaksperiodeId = null,
)

val inntektsmelding =
Expand Down

0 comments on commit 15c6af9

Please sign in to comment.