From cac19b2e23dfdbf7b42101f4f854a360ebd8da0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20Andreassen=20Th=C3=B8gersen?= Date: Tue, 22 Oct 2024 16:49:35 +0200 Subject: [PATCH] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20totrinnsvurdering=20retur?= =?UTF-8?q?=20er=20historikkinnslag=20og=20knyttes=20til=20generasjon?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Christian Bülow Skovborg --- .../api/Totrinnsvurderingh\303\245ndterer.kt" | 6 ++++++ .../graphql/mutation/TotrinnsvurderingMutation.kt | 9 +++------ .../modell/periodehistorikk/HistorikkinnslagDto.kt | 11 +++++++++++ .../no/nav/helse/db/PgHistorikkinnslagRepository.kt | 12 ++++++++++++ .../nav/helse/db/TransactionalPeriodehistorikkDao.kt | 2 ++ .../totrinnsvurdering/TotrinnsvurderingService.kt | 10 ++++++++++ 6 files changed, 44 insertions(+), 6 deletions(-) diff --git "a/spesialist-api/src/main/kotlin/no/nav/helse/spesialist/api/Totrinnsvurderingh\303\245ndterer.kt" "b/spesialist-api/src/main/kotlin/no/nav/helse/spesialist/api/Totrinnsvurderingh\303\245ndterer.kt" index 87f53df20..813cd04ab 100644 --- "a/spesialist-api/src/main/kotlin/no/nav/helse/spesialist/api/Totrinnsvurderingh\303\245ndterer.kt" +++ "b/spesialist-api/src/main/kotlin/no/nav/helse/spesialist/api/Totrinnsvurderingh\303\245ndterer.kt" @@ -18,6 +18,12 @@ interface Totrinnsvurderinghåndterer { notat: Pair? = null, ) + fun totrinnsvurderingRetur( + oppgaveId: Long, + saksbehandlerFraApi: SaksbehandlerFraApi, + notat: String, + ) + fun avventerTotrinnsvurdering( oppgaveId: Long, saksbehandlerFraApi: SaksbehandlerFraApi, diff --git a/spesialist-api/src/main/kotlin/no/nav/helse/spesialist/api/graphql/mutation/TotrinnsvurderingMutation.kt b/spesialist-api/src/main/kotlin/no/nav/helse/spesialist/api/graphql/mutation/TotrinnsvurderingMutation.kt index 004c4f911..2782f74fb 100644 --- a/spesialist-api/src/main/kotlin/no/nav/helse/spesialist/api/graphql/mutation/TotrinnsvurderingMutation.kt +++ b/spesialist-api/src/main/kotlin/no/nav/helse/spesialist/api/graphql/mutation/TotrinnsvurderingMutation.kt @@ -12,10 +12,8 @@ import no.nav.helse.spesialist.api.Totrinnsvurderinghåndterer import no.nav.helse.spesialist.api.feilhåndtering.ManglerVurderingAvVarsler import no.nav.helse.spesialist.api.feilhåndtering.Modellfeil import no.nav.helse.spesialist.api.graphql.ContextValues.SAKSBEHANDLER -import no.nav.helse.spesialist.api.graphql.schema.NotatType import no.nav.helse.spesialist.api.graphql.schema.PaVentRequest import no.nav.helse.spesialist.api.oppgave.Oppgavehåndterer -import no.nav.helse.spesialist.api.periodehistorikk.PeriodehistorikkType import no.nav.helse.spesialist.api.saksbehandler.SaksbehandlerFraApi import org.slf4j.LoggerFactory @@ -118,11 +116,10 @@ class TotrinnsvurderingMutation( besluttendeSaksbehandler, ) - totrinnsvurderinghåndterer.lagrePeriodehistorikk( + totrinnsvurderinghåndterer.totrinnsvurderingRetur( oppgaveId = oppgavereferanse.toLong(), - saksbehandleroid = besluttendeSaksbehandler.oid, - type = PeriodehistorikkType.TOTRINNSVURDERING_RETUR, - notat = notatTekst to NotatType.Retur, + saksbehandlerFraApi = besluttendeSaksbehandler, + notat = notatTekst, ) log.info("OppgaveId $oppgavereferanse sendt i retur") diff --git a/spesialist-modell/src/main/kotlin/no/nav/helse/modell/periodehistorikk/HistorikkinnslagDto.kt b/spesialist-modell/src/main/kotlin/no/nav/helse/modell/periodehistorikk/HistorikkinnslagDto.kt index dfbfcf293..a1fc20044 100644 --- a/spesialist-modell/src/main/kotlin/no/nav/helse/modell/periodehistorikk/HistorikkinnslagDto.kt +++ b/spesialist-modell/src/main/kotlin/no/nav/helse/modell/periodehistorikk/HistorikkinnslagDto.kt @@ -41,6 +41,11 @@ sealed interface HistorikkinnslagDto { fun avventerTotrinnsvurdering(saksbehandler: SaksbehandlerDto): AvventerTotrinnsvurdering = AvventerTotrinnsvurdering(saksbehandler = saksbehandler, tidspunkt = LocalDateTime.now()) + + fun totrinnsvurderingRetur( + notat: NotatDto, + saksbehandler: SaksbehandlerDto, + ): TotrinnsvurderingRetur = TotrinnsvurderingRetur(notat = notat, saksbehandler = saksbehandler, tidspunkt = LocalDateTime.now()) } } @@ -88,3 +93,9 @@ data class AvventerTotrinnsvurdering( ) : HistorikkinnslagDto { override val notat: NotatDto? = null } + +data class TotrinnsvurderingRetur( + override val notat: NotatDto, + override val saksbehandler: SaksbehandlerDto, + override val tidspunkt: LocalDateTime, +) : HistorikkinnslagDto diff --git a/spesialist-selve/src/main/kotlin/no/nav/helse/db/PgHistorikkinnslagRepository.kt b/spesialist-selve/src/main/kotlin/no/nav/helse/db/PgHistorikkinnslagRepository.kt index a78dbbb30..2cae4a428 100644 --- a/spesialist-selve/src/main/kotlin/no/nav/helse/db/PgHistorikkinnslagRepository.kt +++ b/spesialist-selve/src/main/kotlin/no/nav/helse/db/PgHistorikkinnslagRepository.kt @@ -7,6 +7,7 @@ import no.nav.helse.modell.periodehistorikk.FjernetFraPåVent import no.nav.helse.modell.periodehistorikk.HistorikkinnslagDto import no.nav.helse.modell.periodehistorikk.LagtPåVent import no.nav.helse.modell.periodehistorikk.TotrinnsvurderingFerdigbehandlet +import no.nav.helse.modell.periodehistorikk.TotrinnsvurderingRetur import no.nav.helse.spesialist.api.graphql.schema.NotatType import no.nav.helse.spesialist.api.notat.NotatApiDao import no.nav.helse.spesialist.api.periodehistorikk.PeriodehistorikkType @@ -41,6 +42,17 @@ class PgHistorikkinnslagRepository( } is TotrinnsvurderingFerdigbehandlet -> lagre(historikkinnslag, generasjonId, null) is AvventerTotrinnsvurdering -> lagre(historikkinnslag, generasjonId, null) + is TotrinnsvurderingRetur -> { + val notatId = + notatDao + .opprettNotatForOppgaveId( + oppgaveId = historikkinnslag.notat.oppgaveId, + tekst = historikkinnslag.notat.tekst, + saksbehandlerOid = historikkinnslag.saksbehandler.oid, + type = NotatType.PaaVent, + )?.toInt() + lagre(historikkinnslag, generasjonId, notatId) + } } } diff --git a/spesialist-selve/src/main/kotlin/no/nav/helse/db/TransactionalPeriodehistorikkDao.kt b/spesialist-selve/src/main/kotlin/no/nav/helse/db/TransactionalPeriodehistorikkDao.kt index 5f1fb82a6..747086620 100644 --- a/spesialist-selve/src/main/kotlin/no/nav/helse/db/TransactionalPeriodehistorikkDao.kt +++ b/spesialist-selve/src/main/kotlin/no/nav/helse/db/TransactionalPeriodehistorikkDao.kt @@ -7,6 +7,7 @@ import no.nav.helse.modell.periodehistorikk.FjernetFraPåVent import no.nav.helse.modell.periodehistorikk.HistorikkinnslagDto import no.nav.helse.modell.periodehistorikk.LagtPåVent import no.nav.helse.modell.periodehistorikk.TotrinnsvurderingFerdigbehandlet +import no.nav.helse.modell.periodehistorikk.TotrinnsvurderingRetur import no.nav.helse.spesialist.api.periodehistorikk.PeriodehistorikkType import org.intellij.lang.annotations.Language import java.util.UUID @@ -49,6 +50,7 @@ class TransactionalPeriodehistorikkDao( is FjernetFraPåVent -> "FJERN_FRA_PA_VENT" // TODO: Mangler å migrere typen i databasen is TotrinnsvurderingFerdigbehandlet -> "TOTRINNSVURDERING_ATTESTERT" // TODO: Mangler å migrere typen i databasen is AvventerTotrinnsvurdering -> "TOTRINNSVURDERING_TIL_GODKJENNING" // TODO: Mangler å migrere typen i databasen + is TotrinnsvurderingRetur -> "TOTRINNSVURDERING_RETUR" // TODO: Mangler å migrere typen i databasen } override fun lagre( diff --git a/spesialist-selve/src/main/kotlin/no/nav/helse/modell/totrinnsvurdering/TotrinnsvurderingService.kt b/spesialist-selve/src/main/kotlin/no/nav/helse/modell/totrinnsvurdering/TotrinnsvurderingService.kt index 2eb0bed54..6db28cea9 100644 --- a/spesialist-selve/src/main/kotlin/no/nav/helse/modell/totrinnsvurdering/TotrinnsvurderingService.kt +++ b/spesialist-selve/src/main/kotlin/no/nav/helse/modell/totrinnsvurdering/TotrinnsvurderingService.kt @@ -5,6 +5,7 @@ import no.nav.helse.db.NotatRepository import no.nav.helse.db.OppgaveRepository import no.nav.helse.db.TotrinnsvurderingRepository import no.nav.helse.modell.periodehistorikk.HistorikkinnslagDto +import no.nav.helse.modell.periodehistorikk.NotatDto import no.nav.helse.modell.saksbehandler.SaksbehandlerDto import no.nav.helse.spesialist.api.Totrinnsvurderinghåndterer import no.nav.helse.spesialist.api.graphql.schema.NotatType @@ -53,6 +54,15 @@ class TotrinnsvurderingService( } } + override fun totrinnsvurderingRetur( + oppgaveId: Long, + saksbehandlerFraApi: SaksbehandlerFraApi, + notat: String, + ) { + val innslag = HistorikkinnslagDto.totrinnsvurderingRetur(notat = NotatDto(oppgaveId, notat), saksbehandlerFraApi.toDto()) + historikkinnslagRepository.lagre(innslag, oppgaveId) + } + override fun avventerTotrinnsvurdering( oppgaveId: Long, saksbehandlerFraApi: SaksbehandlerFraApi,