Skip to content

Commit

Permalink
Fjernet behov som ikke lenger spørres etter (Ble brukt av avslag på m…
Browse files Browse the repository at this point in the history
…insteinntekt prosess i Quiz)
  • Loading branch information
geiralund committed Jul 29, 2024
1 parent 567aaec commit 53b9d2c
Show file tree
Hide file tree
Showing 15 changed files with 80 additions and 532 deletions.
23 changes: 10 additions & 13 deletions src/main/kotlin/no/nav/dagpenger/oppslag/inntekt/Application.kt
Original file line number Diff line number Diff line change
@@ -1,25 +1,22 @@
package no.nav.dagpenger.oppslag.inntekt

import no.nav.dagpenger.oppslag.inntekt.rivers.avklaring.InntektNesteMånedService
import no.nav.dagpenger.oppslag.inntekt.rivers.avklaring.SykepengerLøsningService
import no.nav.dagpenger.oppslag.inntekt.rivers.opplysning.InntektBehovløser
import no.nav.dagpenger.oppslag.inntekt.rivers.opplysning.InntektIdBehovløser
import no.nav.dagpenger.oppslag.inntekt.rivers.quiz.GrunnbeløpService
import no.nav.dagpenger.oppslag.inntekt.rivers.quiz.InntektNesteMånedService
import no.nav.dagpenger.oppslag.inntekt.rivers.quiz.InntektService
import no.nav.dagpenger.oppslag.inntekt.rivers.quiz.InntektsrapporteringsperiodeLøsningService
import no.nav.helse.rapids_rivers.RapidApplication

fun main() {
val inntektClient =
InntektClient(
tokenProvider = { Configuration.dpInntektApiTokenProvider.clientCredentials(Configuration.dpInntektApiScope).accessToken },
)
RapidApplication.create(Configuration.asMap()).also { rapidsConnection ->
InntektService(rapidsConnection, inntektClient)
InntektNesteMånedService(rapidsConnection, inntektClient)
SykepengerLøsningService(rapidsConnection, inntektClient)
InntektsrapporteringsperiodeLøsningService(rapidsConnection)
GrunnbeløpService(rapidsConnection)
InntektBehovløser(rapidsConnection, inntektClient)
InntektIdBehovløser(rapidsConnection, inntektClient)
}.start()
RapidApplication
.create(Configuration.asMap())
.also { rapidsConnection ->
InntektNesteMånedService(rapidsConnection, inntektClient)
SykepengerLøsningService(rapidsConnection, inntektClient)
InntektBehovløser(rapidsConnection, inntektClient)
InntektIdBehovløser(rapidsConnection, inntektClient)
}.start()
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package no.nav.dagpenger.oppslag.inntekt.rivers.quiz
package no.nav.dagpenger.oppslag.inntekt.rivers.avklaring

import kotlinx.coroutines.runBlocking
import mu.KotlinLogging
Expand All @@ -16,22 +16,25 @@ import no.nav.helse.rapids_rivers.River
import no.nav.helse.rapids_rivers.asLocalDate
import java.time.YearMonth

internal class InntektNesteMånedService(rapidsConnection: RapidsConnection, private val inntektClient: InntektClient) :
River.PacketListener {
internal class InntektNesteMånedService(
rapidsConnection: RapidsConnection,
private val inntektClient: InntektClient,
) : River.PacketListener {
init {
River(rapidsConnection).apply {
validate {
it.demandAllOrAny("@behov", løserBehov)
it.forbid("@løsning")
it.requireKey("@id", "@behovId")
it.requireArray("identer") {
requireKey("type", "historisk", "id")
River(rapidsConnection)
.apply {
validate {
it.demandAllOrAny("@behov", løserBehov)
it.forbid("@løsning")
it.requireKey("@id", "@behovId")
it.requireArray("identer") {
requireKey("type", "historisk", "id")
}
it.require("identer", ::harAktørEllerFnr)
it.requireKey("Virkningstidspunkt")
it.interestedIn("søknad_uuid")
}
it.require("identer", ::harAktørEllerFnr)
it.requireKey("Virkningstidspunkt")
it.interestedIn("søknad_uuid")
}
}.register(this)
}.register(this)
}

companion object {
Expand Down Expand Up @@ -68,19 +71,22 @@ internal class InntektNesteMånedService(rapidsConnection: RapidsConnection, pri
)
}
val løsning =
packet["@behov"].map { it.asText() }.filter { it in løserBehov }.map { behov ->
behov to
when (behov) {
"HarRapportertInntektNesteMåned" ->
inntekt.harRapportertInntektForMåned(
YearMonth.from(
inntektsrapporteringsperiode.fom(),
),
)
packet["@behov"]
.map { it.asText() }
.filter { it in løserBehov }
.map { behov ->
behov to
when (behov) {
"HarRapportertInntektNesteMåned" ->
inntekt.harRapportertInntektForMåned(
YearMonth.from(
inntektsrapporteringsperiode.fom(),
),
)

else -> throw IllegalArgumentException("Ukjent behov $behov")
}
}.toMap()
else -> throw IllegalArgumentException("Ukjent behov $behov")
}
}.toMap()

packet["@løsning"] = løsning
log.info { "Løst behov for $søknadUUID" }
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
package no.nav.dagpenger.oppslag.inntekt.rivers.quiz
package no.nav.dagpenger.oppslag.inntekt.rivers.avklaring

import no.bekk.bekkopen.date.NorwegianDateUtil
import java.time.LocalDate
import java.time.ZoneId
import java.util.Date

class Inntektsrapporteringperiode(private val dato: LocalDate) {
class Inntektsrapporteringperiode(
private val dato: LocalDate,
) {
fun fom(): LocalDate {
val månederTilbake: Long = if (tom().month == dato.month) -1 else 0
return rapporteringsfrist(dato, månedOffset = månederTilbake).plusDays(1)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
package no.nav.dagpenger.oppslag.inntekt
package no.nav.dagpenger.oppslag.inntekt.rivers.avklaring

import kotlinx.coroutines.runBlocking
import mu.KotlinLogging
import mu.withLoggingContext
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 no.nav.helse.rapids_rivers.JsonMessage
import no.nav.helse.rapids_rivers.MessageContext
import no.nav.helse.rapids_rivers.MessageProblems
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@ import no.nav.helse.rapids_rivers.River
internal class InntektBehovløser(
rapidsConnection: RapidsConnection,
private val inntektClient: InntektClient,
) :
River.PacketListener {
) : River.PacketListener {
private val behovSomLøses = listOf("InntektSiste12Mnd", "InntektSiste36Mnd")

companion object {
Expand All @@ -23,15 +22,16 @@ internal class InntektBehovløser(

init {

River(rapidsConnection).apply {
validate { it ->
it.demandAllOrAny("@behov", behovSomLøses)
it.forbid("@løsning")
it.requireKey("@id", "@behovId")
it.interestedIn(*behovSomLøses.toTypedArray())
it.requireKey("ident", "behandlingId")
}
}.register(this)
River(rapidsConnection)
.apply {
validate { it ->
it.demandAllOrAny("@behov", behovSomLøses)
it.forbid("@løsning")
it.requireKey("@id", "@behovId")
it.interestedIn(*behovSomLøses.toTypedArray())
it.requireKey("ident", "behandlingId")
}
}.register(this)
}

@WithSpan
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,20 +16,20 @@ import no.nav.helse.rapids_rivers.asLocalDate
internal class InntektIdBehovløser(
rapidsConnection: RapidsConnection,
private val inntektClient: InntektClient,
) :
River.PacketListener {
) : River.PacketListener {
private val behov: String = "InntektId"

init {
River(rapidsConnection).apply {
validate { it ->
it.demandAllOrAny("@behov", listOf(behov))
it.forbid("@løsning")
it.requireKey("@id", "@behovId")
it.requireKey(behov)
it.requireKey("ident", "behandlingId")
}
}.register(this)
River(rapidsConnection)
.apply {
validate { it ->
it.demandAllOrAny("@behov", listOf(behov))
it.forbid("@løsning")
it.requireKey("@id", "@behovId")
it.requireKey(behov)
it.requireKey("ident", "behandlingId")
}
}.register(this)
}

companion object {
Expand Down

This file was deleted.

This file was deleted.

Loading

0 comments on commit 53b9d2c

Please sign in to comment.