Skip to content

Commit

Permalink
Fjernet parametere til behovene som ikke lenger gjelder (ble brukt av…
Browse files Browse the repository at this point in the history
… dp-quiz)
  • Loading branch information
geiralund committed Dec 5, 2024
1 parent b92bfdc commit f22a178
Show file tree
Hide file tree
Showing 8 changed files with 44 additions and 77 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@ internal class InntektClient(
private val sikkerLogg = KotlinLogging.logger("tjenestekall.InntektClient")

suspend fun hentKlassifisertInntekt(
knadUUID: UUID,
aktørId: String?,
behandlingId: UUID,
aktørId: String? = null,
dselsnummer: String? = null,
virkningsTidspunkt: LocalDate,
callId: String? = null,
Expand All @@ -46,7 +46,7 @@ internal class InntektClient(
InntektRequest(
aktørId = aktørId,
fødselsnummer = fødselsnummer,
regelkontekst = RegelKontekst(id = søknadUUID.toString(), type = "saksbehandling"),
regelkontekst = RegelKontekst(id = behandlingId.toString(), type = "saksbehandling"),
beregningsDato = virkningsTidspunkt,
),
)
Expand Down
11 changes: 7 additions & 4 deletions src/main/kotlin/no/nav/dagpenger/oppslag/inntekt/SerDer.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,14 @@ package no.nav.dagpenger.oppslag.inntekt
import com.fasterxml.jackson.databind.JsonNode
import com.github.navikt.tbd_libs.rapids_and_rivers.JsonMessage

internal fun JsonMessage.aktorId(): String? =
this["identer"].firstOrNull { it["type"].asText() == "aktørid" && !it["historisk"].asBoolean() }?.get("id")?.asText()

internal fun JsonMessage.fodselsnummer(): String? =
this["identer"].firstOrNull { it["type"].asText() == "folkeregisterident" && !it["historisk"].asBoolean() }?.get("id")?.asText()
this.ident()
?: this["identer"]
.firstOrNull { it["type"].asText() == "folkeregisterident" && !it["historisk"].asBoolean() }
?.get("id")
?.asText()

internal fun JsonMessage.ident(): String? = this["ident"].asText()

internal fun harAktørEllerFnr(jsonNode: JsonNode) {
require(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ import mu.KotlinLogging
import mu.withLoggingContext
import no.nav.dagpenger.inntekt.v1.Inntekt
import no.nav.dagpenger.oppslag.inntekt.InntektClient
import no.nav.dagpenger.oppslag.inntekt.aktorId
import no.nav.dagpenger.oppslag.inntekt.asUUID
import no.nav.dagpenger.oppslag.inntekt.fodselsnummer
import no.nav.dagpenger.oppslag.inntekt.harAktørEllerFnr
Expand Down Expand Up @@ -46,7 +45,8 @@ internal class InntektNesteMånedService(
}
it.require("identer", ::harAktørEllerFnr)
it.requireKey("Virkningstidspunkt")
it.interestedIn("søknad_uuid")
it.interestedIn("ident")
it.interestedIn("avklaringId", "behandlingId")
}
}.register(this)
}
Expand All @@ -57,21 +57,20 @@ internal class InntektNesteMånedService(
metadata: MessageMetadata,
meterRegistry: MeterRegistry,
) {
val søknadUUID = packet["søknad_uuid"].asUUID()
val behovId = packet["@behovId"].asText()
val callId = "dp-oppslag-inntekt:$behovId"

val behandlingId = packet["behandlingId"].asUUID()
withLoggingContext(
"behovId" to behovId,
"søknad_uuid" to søknadUUID.toString(),
"avklaringId" to packet["avklaringId"].asText(),
"behandlingId" to behandlingId.toString(),
"callId" to callId,
) {
val inntektsrapporteringsperiode = Inntektsrapporteringperiode(packet["Virkningstidspunkt"].asLocalDate())
val inntekt =
runBlocking {
inntektClient.hentKlassifisertInntekt(
søknadUUID = søknadUUID,
aktørId = packet.aktorId(),
behandlingId = behandlingId,
fødselsnummer = packet.fodselsnummer(),
virkningsTidspunkt = inntektsrapporteringsperiode.neste().fom(),
callId = callId,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,9 @@ import mu.withLoggingContext
import no.nav.dagpenger.inntekt.v1.Inntekt
import no.nav.dagpenger.inntekt.v1.InntektKlasse
import no.nav.dagpenger.oppslag.inntekt.InntektClient
import no.nav.dagpenger.oppslag.inntekt.aktorId
import no.nav.dagpenger.oppslag.inntekt.asUUID
import no.nav.dagpenger.oppslag.inntekt.fodselsnummer
import no.nav.dagpenger.oppslag.inntekt.harAktørEllerFnr
import java.util.UUID

internal class SykepengerLøsningService(
rapidsConnection: RapidsConnection,
Expand All @@ -39,7 +37,8 @@ internal class SykepengerLøsningService(
}
it.require("identer", ::harAktørEllerFnr)
it.requireKey("Virkningstidspunkt")
it.interestedIn("søknad_uuid", "avklaringId", "behandlingId")
it.interestedIn("ident")
it.interestedIn("avklaringId", "behandlingId")
}
}.register(this)
}
Expand All @@ -59,21 +58,19 @@ internal class SykepengerLøsningService(
metadata: MessageMetadata,
meterRegistry: MeterRegistry,
) {
val søknadUUID = packet["søknad_uuid"].asUUID()
val callId = "dp-oppslag-inntekt-${UUID.randomUUID()}"

val behovId = packet["@behovId"].asText()
val callId = "dp-oppslag-inntekt-$behovId"
val behandlingId = packet["behandlingId"].asUUID()
withLoggingContext(
"behovId" to packet["@behovId"].asText(),
"behovId" to behovId,
"avklaringId" to packet["avklaringId"].asText(),
"behandlingId" to packet["behandlingId"].asText(),
"søknad_uuid" to søknadUUID.toString(),
"behandlingId" to behandlingId.toString(),
"callId" to callId,
) {
val inntekt =
runBlocking {
inntektClient.hentKlassifisertInntekt(
søknadUUID = søknadUUID,
aktørId = packet.aktorId(),
behandlingId = behandlingId,
fødselsnummer = packet.fodselsnummer(),
virkningsTidspunkt = packet["Virkningstidspunkt"].asLocalDate(),
callId = callId,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,7 @@ internal class InntektBehovløser(
kotlin
.runCatching {
inntektClient.hentKlassifisertInntekt(
søknadUUID = behandlingId,
aktørId = null,
behandlingId = behandlingId,
fødselsnummer = packet["ident"].asText(),
virkningsTidspunkt = virkningsdato,
callId = behovId,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ import java.time.YearMonth
import java.util.UUID
import kotlin.test.assertEquals

class InntektNesteMånedServiceTest {
private val søknadUUID = UUID.fromString("41621ac0-f5ee-4cce-b1f5-88a79f25f1a5")
internal class InntektNesteMånedServiceTest {
private val behandlingId = UUID.fromString("41621ac0-f5ee-4cce-b1f5-88a79f25f1a5")
private val testRapid = TestRapid()

@AfterEach
Expand Down Expand Up @@ -52,10 +52,9 @@ class InntektNesteMånedServiceTest {
mockk<InntektClient>().also {
coEvery {
it.hentKlassifisertInntekt(
søknadUUID,
"32542134",
"32542134",
LocalDate.parse("2021-06-08"),
behandlingId = behandlingId,
fødselsnummer = "12345678911",
virkningsTidspunkt = LocalDate.parse("2021-06-08"),
callId = any(),
)
} returns inntekt
Expand Down Expand Up @@ -84,7 +83,8 @@ class InntektNesteMånedServiceTest {
"@id": "930e2beb-d394-4024-b713-dbeb6ad3d4bf",
"@behovId": "930e2beb-d394-4024-b713-dbeb6ad3d4bf",
"Virkningstidspunkt": "2021-05-06",
"søknad_uuid": "$søknadUUID",
"behandlingId" : "$behandlingId",
"ident" : "12345678911",
"identer":[{"id":"32542134","type":"aktørid","historisk":false},{"id":"32542134","type":"folkeregisterident","historisk":false}],
"FangstOgFiske": false,
"fakta": [
Expand All @@ -108,7 +108,8 @@ class InntektNesteMånedServiceTest {
"@id": "930e2beb-d394-4024-b713-dbeb6ad3d4bf",
"@behovId": "930e2beb-d394-4024-b713-dbeb6ad3d4bf",
"Virkningstidspunkt": "2021-05-06",
"søknad_uuid": "$søknadUUID",
"behandlingId" : "$behandlingId",
"ident" : "12345678911",
"identer":[],
"FangstOgFiske": false,
"fakta": [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ import java.util.UUID
import kotlin.test.assertEquals

internal class SykepengerLøsningServiceTest {
private val søknadUUID = UUID.fromString("41621ac0-f5ee-4cce-b1f5-88a79f25f1a5")
private val behandlingId = UUID.fromString("41621ac0-f5ee-4cce-b1f5-88a79f25f1a5")
private val testRapid = TestRapid()

@AfterEach
Expand Down Expand Up @@ -51,10 +51,9 @@ internal class SykepengerLøsningServiceTest {
mockk<InntektClient>().also {
coEvery {
it.hentKlassifisertInntekt(
søknadUUID,
"32542134",
"32542134",
LocalDate.parse("2020-11-18"),
behandlingId = behandlingId,
fødselsnummer = "12345678911",
virkningsTidspunkt = LocalDate.parse("2020-11-18"),
callId = any(),
)
} returns inntekt
Expand All @@ -68,22 +67,14 @@ internal class SykepengerLøsningServiceTest {
Assertions.assertTrue(testRapid.inspektør.message(0)["@løsning"]["SykepengerSiste36Måneder"].asBoolean())
coVerify {
inntektClient.hentKlassifisertInntekt(
søknadUUID,
"32542134",
"32542134",
LocalDate.parse("2020-11-18"),
behandlingId = behandlingId,
fødselsnummer = "12345678911",
virkningsTidspunkt = LocalDate.parse("2020-11-18"),
callId = any(),
)
}
}

@Test
fun `skal droppe behov hvor aktørid mangler`() {
SykepengerLøsningService(testRapid, mockk())
testRapid.sendTestMessage(behovUtenIdent)
assertEquals(0, testRapid.inspektør.size)
}

// language=JSON
private val behovJson =
"""
Expand All @@ -93,7 +84,8 @@ internal class SykepengerLøsningServiceTest {
"@id": "930e2beb-d394-4024-b713-dbeb6ad3d4bf",
"@behovId": "930e2beb-d394-4024-b713-dbeb6ad3d4bf",
"Virkningstidspunkt": "2020-11-18",
"søknad_uuid": "$søknadUUID",
"behandlingId": "$behandlingId",
"ident" : "12345678911",
"identer":[{"id":"32542134","type":"aktørid","historisk":false}, {"id":"32542134","type":"folkeregisterident","historisk":false}],
"FangstOgFiskeInntektSiste36mnd": false,
"fakta": [
Expand All @@ -107,28 +99,4 @@ internal class SykepengerLøsningServiceTest {
]
}
""".trimIndent()

// language=JSON
private val behovUtenIdent =
"""
{
"@event_name": "faktum_svar",
"@opprettet": "2020-11-18T11:04:32.867824",
"@id": "930e2beb-d394-4024-b713-dbeb6ad3d4bf",
"@behovId": "930e2beb-d394-4024-b713-dbeb6ad3d4bf",
"Virkningstidspunkt": "2020-11-18",
"søknad_uuid": "$søknadUUID",
"identer":[],
"FangstOgFiskeInntektSiste36mnd": false,
"fakta": [
{
"id": "29",
"behov": "SykepengerSiste36Måneder"
}
],
"@behov": [
"SykepengerSiste36Måneder"
]
}
""".trimIndent()
}
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ internal class InntektBehovløserTest {
mockk<InntektClient>().also {
coEvery {
it.hentKlassifisertInntekt(
søknadUUID = any(),
behandlingId = any(),
aktørId = any(),
fødselsnummer = "12345678911",
virkningsTidspunkt = LocalDate.parse("2024-01-01"),
Expand Down

0 comments on commit f22a178

Please sign in to comment.