From 804157c2aae39b8d8b81dad9742bb40c755c4ecc Mon Sep 17 00:00:00 2001 From: Emil Elton Nilsen Date: Wed, 12 Feb 2025 12:12:25 +0100 Subject: [PATCH] Bruke common for oms meldt in endring --- .../JournalfoerOmsMeldtInnEndringService.kt | 1 + .../OmsMeldtInnEndringRiver.kt | 53 +++++++------------ .../omsendring/OmsMeldtInnEndringRiverTest.kt | 11 ++-- gradle/libs.versions.toml | 2 +- 4 files changed, 27 insertions(+), 40 deletions(-) diff --git a/apps/etterlatte-behandling-kafka/src/main/kotlin/no/nav/etterlatte/brukerdialog/omsmeldinnendring/JournalfoerOmsMeldtInnEndringService.kt b/apps/etterlatte-behandling-kafka/src/main/kotlin/no/nav/etterlatte/brukerdialog/omsmeldinnendring/JournalfoerOmsMeldtInnEndringService.kt index 65b4b34fd1..19f2b3f782 100644 --- a/apps/etterlatte-behandling-kafka/src/main/kotlin/no/nav/etterlatte/brukerdialog/omsmeldinnendring/JournalfoerOmsMeldtInnEndringService.kt +++ b/apps/etterlatte-behandling-kafka/src/main/kotlin/no/nav/etterlatte/brukerdialog/omsmeldinnendring/JournalfoerOmsMeldtInnEndringService.kt @@ -14,6 +14,7 @@ import no.nav.etterlatte.brukerdialog.soeknad.journalfoering.OpprettJournalpostR import no.nav.etterlatte.brukerdialog.soeknad.pdf.PdfGeneratorKlient import no.nav.etterlatte.libs.common.RetryResult import no.nav.etterlatte.libs.common.innsendtsoeknad.common.PDFMal +import no.nav.etterlatte.libs.common.omsmeldinnendring.OmsMeldtInnEndring import no.nav.etterlatte.libs.common.retry import no.nav.etterlatte.libs.common.sak.Sak import no.nav.etterlatte.libs.common.sak.SakId diff --git a/apps/etterlatte-behandling-kafka/src/main/kotlin/no/nav/etterlatte/brukerdialog/omsmeldinnendring/OmsMeldtInnEndringRiver.kt b/apps/etterlatte-behandling-kafka/src/main/kotlin/no/nav/etterlatte/brukerdialog/omsmeldinnendring/OmsMeldtInnEndringRiver.kt index 723aa25ae5..be9b36f60d 100644 --- a/apps/etterlatte-behandling-kafka/src/main/kotlin/no/nav/etterlatte/brukerdialog/omsmeldinnendring/OmsMeldtInnEndringRiver.kt +++ b/apps/etterlatte-behandling-kafka/src/main/kotlin/no/nav/etterlatte/brukerdialog/omsmeldinnendring/OmsMeldtInnEndringRiver.kt @@ -9,6 +9,7 @@ import no.nav.etterlatte.libs.common.behandling.SakType import no.nav.etterlatte.libs.common.event.EventnameHendelseType import no.nav.etterlatte.libs.common.logging.getCorrelationId import no.nav.etterlatte.libs.common.objectMapper +import no.nav.etterlatte.libs.common.omsmeldinnendring.OmsMeldtInnEndring import no.nav.etterlatte.libs.common.oppgave.NyOppgaveDto import no.nav.etterlatte.libs.common.oppgave.OppgaveKilde import no.nav.etterlatte.libs.common.oppgave.OppgaveType @@ -21,8 +22,6 @@ import no.nav.helse.rapids_rivers.JsonMessage import no.nav.helse.rapids_rivers.MessageContext import no.nav.helse.rapids_rivers.RapidsConnection import org.slf4j.LoggerFactory -import java.time.Instant -import java.time.temporal.ChronoUnit import java.util.UUID internal class OmsMeldtInnEndringRiver( @@ -47,7 +46,7 @@ internal class OmsMeldtInnEndringRiver( try { val sak = runBlocking { - behandlingKlient.finnEllerOpprettSak(endringer.fnr, SakType.OMSTILLINGSSTOENAD) + behandlingKlient.finnEllerOpprettSak(endringer.fnr.value, SakType.OMSTILLINGSSTOENAD) } val journalpostResponse = @@ -81,26 +80,27 @@ internal class OmsMeldtInnEndringRiver( private fun mottatMeldtInnEndringFullfoert( sakId: SakId, - meldtInnEndringId: UUID + meldtInnEndringId: UUID, ) { logger.info("Mottakk av meldt inn endring fullført, sender melding til selvbetjening sak=$sakId") val correlationId = getCorrelationId() val hendelsetype = OmsMeldtInnEndringHendelsetype.MOTTAK_FULLOERT.lagEventnameForType() - rapidsConnection.publish( - "mottak-meld-inn-endring-fullfoert-$sakId", - JsonMessage - .newMessage( - hendelsetype, - mapOf( - CORRELATION_ID_KEY to correlationId, - TEKNISK_TID_KEY to Tidspunkt.now(), - "meldt_inn_endring_id" to meldtInnEndringId - ) - ).toJson() - ).also { - logger.info("Publiserte $hendelsetype for $sakId") - } + rapidsConnection + .publish( + "mottak-meld-inn-endring-fullfoert-$sakId", + JsonMessage + .newMessage( + hendelsetype, + mapOf( + CORRELATION_ID_KEY to correlationId, + TEKNISK_TID_KEY to Tidspunkt.now(), + "meldt_inn_endring_id" to meldtInnEndringId, + ), + ).toJson(), + ).also { + logger.info("Publiserte $hendelsetype for $sakId") + } } private fun JsonMessage.omsMeldtInnEndringer(): OmsMeldtInnEndring = @@ -117,23 +117,8 @@ enum class OmsMeldtInnEndringHendelsetype( val eventname: String, ) : EventnameHendelseType { MOTTATT(HENDELSE_KEY), - MOTTAK_FULLOERT(MOTTAK_FULLFOERT_KEY) + MOTTAK_FULLOERT(MOTTAK_FULLFOERT_KEY), ; override fun lagEventnameForType(): String = this.eventname } - -// TODO i lib -data class OmsMeldtInnEndring( - val id: UUID = UUID.randomUUID(), - val fnr: String, - val endring: OmsEndring, - val beskrivelse: String, - val tidspunkt: Instant = Instant.now().truncatedTo(ChronoUnit.SECONDS), -) - -enum class OmsEndring { - INNTEKT, - AKTIVITET_OG_INNTEKT, - ANNET, -} diff --git a/apps/etterlatte-behandling-kafka/src/test/kotlin/no/nav/etterlatte/brukerdialog/omsendring/OmsMeldtInnEndringRiverTest.kt b/apps/etterlatte-behandling-kafka/src/test/kotlin/no/nav/etterlatte/brukerdialog/omsendring/OmsMeldtInnEndringRiverTest.kt index 50f42abe7a..46c25a11cf 100644 --- a/apps/etterlatte-behandling-kafka/src/test/kotlin/no/nav/etterlatte/brukerdialog/omsendring/OmsMeldtInnEndringRiverTest.kt +++ b/apps/etterlatte-behandling-kafka/src/test/kotlin/no/nav/etterlatte/brukerdialog/omsendring/OmsMeldtInnEndringRiverTest.kt @@ -10,8 +10,6 @@ import io.mockk.mockk import io.mockk.slot import no.nav.etterlatte.brukerdialog.omsmeldinnendring.ArkiverOmsMeldtInnEndring import no.nav.etterlatte.brukerdialog.omsmeldinnendring.JournalfoerOmsMeldtInnEndringService -import no.nav.etterlatte.brukerdialog.omsmeldinnendring.OmsEndring -import no.nav.etterlatte.brukerdialog.omsmeldinnendring.OmsMeldtInnEndring import no.nav.etterlatte.brukerdialog.omsmeldinnendring.OmsMeldtInnEndringHendelseKeys import no.nav.etterlatte.brukerdialog.omsmeldinnendring.OmsMeldtInnEndringRiver import no.nav.etterlatte.brukerdialog.soeknad.client.BehandlingClient @@ -26,8 +24,11 @@ import no.nav.etterlatte.common.Enheter import no.nav.etterlatte.libs.common.behandling.SakType import no.nav.etterlatte.libs.common.innsendtsoeknad.common.PDFMal import no.nav.etterlatte.libs.common.objectMapper +import no.nav.etterlatte.libs.common.omsmeldinnendring.OmsEndring +import no.nav.etterlatte.libs.common.omsmeldinnendring.OmsMeldtInnEndring import no.nav.etterlatte.libs.common.oppgave.OppgaveKilde import no.nav.etterlatte.libs.common.oppgave.OppgaveType +import no.nav.etterlatte.libs.common.person.Foedselsnummer import no.nav.etterlatte.libs.common.sak.Sak import no.nav.etterlatte.libs.common.sak.SakId import no.nav.etterlatte.libs.common.toJson @@ -50,11 +51,11 @@ class OmsMeldtInnEndringRiverTest { @Test fun `Skal journalføre meldt inn endring for OMS og lage oppgave`() { - val sak = Sak("123", SakType.OMSTILLINGSSTOENAD, SakId(321), Enheter.PORSGRUNN.enhetNr) + val sak = Sak("15507143951", SakType.OMSTILLINGSSTOENAD, SakId(321), Enheter.PORSGRUNN.enhetNr) val endring = OmsMeldtInnEndring( id = UUID.randomUUID(), - fnr = "123", + fnr = Foedselsnummer.of("15507143951"), endring = OmsEndring.ANNET, beskrivelse = "Endringer fra bruker..", tidspunkt = Instant.parse("2024-08-01T05:06:07Z"), @@ -84,7 +85,7 @@ class OmsMeldtInnEndringRiverTest { val pdfDataSlot = slot() coVerify(exactly = 1) { - behandlingKlientMock.finnEllerOpprettSak("123", SakType.OMSTILLINGSSTOENAD) + behandlingKlientMock.finnEllerOpprettSak("15507143951", SakType.OMSTILLINGSSTOENAD) dokarkivKlientMock.opprettJournalpost(capture(journalRequest)) pdfgenKlient.genererPdf(capture(pdfDataSlot), "oms_meldt_inn_endring_v1") diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f1e0ccb508..d659d6b5c0 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -57,7 +57,7 @@ ktor2-serverresources = { module = "io.ktor:ktor-server-resources", version.ref ktor2-servertests = { module = "io.ktor:ktor-server-tests", version.ref = "ktor2-version" } ktor2-webjars = { module = "io.ktor:ktor-server-webjars", version.ref = "ktor2-version" } -etterlatte-common = { module = "pensjon-etterlatte-felles:common", version = "2025.02.10-15.38.d7eefb49b44a" } +etterlatte-common = { module = "pensjon-etterlatte-felles:common", version = "2025.02.12-11.23.ce4c7e2277c7" } teamdokumenthandtering-avroschemas = { module = "no.nav.teamdokumenthandtering:teamdokumenthandtering-avro-schemas", version = "08c0b2d2" } logging-slf4japi = { module = "org.slf4j:slf4j-api", version = "2.0.16" }