Skip to content

Commit

Permalink
Skriv om tilbakekrevingssammendrag
Browse files Browse the repository at this point in the history
  • Loading branch information
hestad committed Jan 16, 2024
1 parent af6b880 commit 4cc47e3
Show file tree
Hide file tree
Showing 21 changed files with 307 additions and 170 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -40,5 +40,6 @@ data class Behandlingssammendrag(
IVERKSATT,
AVSLUTTET,
ÅPEN,
AVBRUTT,
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -61,10 +61,10 @@ import no.nav.su.se.bakover.oppgave.infrastructure.OppgaveHendelsePostgresRepo
import no.nav.su.se.bakover.utenlandsopphold.infrastruture.persistence.UtenlandsoppholdPostgresRepo
import org.jetbrains.annotations.TestOnly
import satser.domain.supplerendestønad.SatsFactoryForSupplerendeStønad
import tilbakekreving.infrastructure.repo.BehandlingssammendragKravgrunnlagPostgresRepo
import tilbakekreving.infrastructure.repo.TilbakekrevingsbehandlingPostgresRepo
import tilbakekreving.infrastructure.repo.kravgrunnlag.KravgrunnlagPostgresRepo
import tilbakekreving.infrastructure.repo.kravgrunnlag.MapRåttKravgrunnlag
import tilbakekreving.infrastructure.repo.sammendrag.BehandlingssammendragKravgrunnlagPostgresRepo
import java.time.Clock
import javax.sql.DataSource

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,10 @@ import no.nav.su.se.bakover.common.tid.periode.Periode
import no.nav.su.se.bakover.database.klage.KlagePostgresRepo
import no.nav.su.se.bakover.database.revurdering.RevurderingsType
import no.nav.su.se.bakover.database.søknadsbehandling.SøknadsbehandlingStatusDB
import tilbakekreving.domain.TilbakekrevingsbehandlingRepo
import tilbakekreving.domain.kravgrunnlag.repo.BehandlingssammendragKravgrunnlagRepo

internal class FerdigeBehandlingerRepo(
private val dbMetrics: DbMetrics,
private val tilbakekrevingsbehandlingRepo: TilbakekrevingsbehandlingRepo,
private val behandlingssammendragKravgrunnlagRepo: BehandlingssammendragKravgrunnlagRepo,
private val sessionFactory: SessionFactory,
) {
Expand All @@ -30,7 +28,7 @@ internal class FerdigeBehandlingerRepo(
fun hentFerdigeBehandlinger(sessionContext: SessionContext? = null): List<Behandlingssammendrag> {
return sessionContext.withOptionalSession(sessionFactory) {
hentFerdigeBehandlingerUtenTilbakekreving(sessionContext).plus(
tilbakekrevingsbehandlingRepo.hentFerdigeBehandlingssamendrag(sessionContext),
behandlingssammendragKravgrunnlagRepo.hentFerdige(sessionContext),
).plus(
behandlingssammendragKravgrunnlagRepo.hentFerdige(sessionContext),
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,14 +59,12 @@ internal class SakPostgresRepo(

private val åpneBehandlingerRepo = ÅpneBehandlingerRepo(
dbMetrics = dbMetrics,
tilbakekrevingsbehandlingRepo = tilbakekrevingRepo,
behandlingssammendragKravgrunnlagRepo = behandlingssammendragKravgrunnlagRepo,
sessionFactory = sessionFactory,
)

private val ferdigeBehandlingerRepo = FerdigeBehandlingerRepo(
dbMetrics = dbMetrics,
tilbakekrevingsbehandlingRepo = tilbakekrevingRepo,
sessionFactory = sessionFactory,
behandlingssammendragKravgrunnlagRepo = behandlingssammendragKravgrunnlagRepo,
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,21 +14,19 @@ import no.nav.su.se.bakover.common.tid.periode.Periode
import no.nav.su.se.bakover.database.klage.KlagePostgresRepo
import no.nav.su.se.bakover.database.revurdering.RevurderingsType
import no.nav.su.se.bakover.database.søknadsbehandling.SøknadsbehandlingStatusDB
import tilbakekreving.domain.TilbakekrevingsbehandlingRepo
import tilbakekreving.domain.kravgrunnlag.repo.BehandlingssammendragKravgrunnlagRepo

internal class ÅpneBehandlingerRepo(
private val dbMetrics: DbMetrics,
private val tilbakekrevingsbehandlingRepo: TilbakekrevingsbehandlingRepo,
private val behandlingssammendragKravgrunnlagRepo: BehandlingssammendragKravgrunnlagRepo,
private val sessionFactory: SessionFactory,
) {
fun hentÅpneBehandlinger(sessionContext: SessionContext? = null): List<Behandlingssammendrag> {
return sessionContext.withOptionalSession(sessionFactory) {
åpneBehandlingerUtenTilbakekreving(sessionContext).plus(
tilbakekrevingsbehandlingRepo.hentÅpneBehandlingssammendrag(sessionContext),
behandlingssammendragKravgrunnlagRepo.hentÅpne(sessionContext),
).plus(
behandlingssammendragKravgrunnlagRepo.hentFerdige(sessionContext),
behandlingssammendragKravgrunnlagRepo.hentÅpne(sessionContext),
)
}
}
Expand Down
4 changes: 2 additions & 2 deletions test-common/src/main/kotlin/TilbakekrevingTestData.kt
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import no.nav.su.se.bakover.hendelse.domain.Hendelsesversjon
import no.nav.su.se.bakover.test.kravgrunnlag.kravgrunnlag
import tilbakekreving.domain.AvbruttHendelse
import tilbakekreving.domain.BrevTilbakekrevingsbehandlingHendelse
import tilbakekreving.domain.ForhåndsvarsleTilbakekrevingsbehandlingHendelse
import tilbakekreving.domain.ForhåndsvarsletTilbakekrevingsbehandlingHendelse
import tilbakekreving.domain.IverksattHendelse
import tilbakekreving.domain.OpprettetTilbakekrevingsbehandlingHendelse
import tilbakekreving.domain.TilAttesteringHendelse
Expand Down Expand Up @@ -119,7 +119,7 @@ fun nyForhåndsvarsletTilbakekrevingsbehandlingHendelse(
versjon: Hendelsesversjon = forrigeHendelse.versjon.inc(),
fritekst: String = "",
dokumentId: UUID = UUID.randomUUID(),
): ForhåndsvarsleTilbakekrevingsbehandlingHendelse = ForhåndsvarsleTilbakekrevingsbehandlingHendelse(
): ForhåndsvarsletTilbakekrevingsbehandlingHendelse = ForhåndsvarsletTilbakekrevingsbehandlingHendelse(
hendelseId = hendelseId,
sakId = forrigeHendelse.sakId,
hendelsestidspunkt = hendelsesTidspunkt,
Expand Down
10 changes: 8 additions & 2 deletions test-common/src/main/kotlin/persistence/TestDataHelper.kt
Original file line number Diff line number Diff line change
Expand Up @@ -177,10 +177,11 @@ import tilbakekreving.domain.TilbakekrevingsbehandlingHendelser
import tilbakekreving.domain.kravgrunnlag.påsak.KravgrunnlagDetaljerPåSakHendelse
import tilbakekreving.domain.kravgrunnlag.påsak.KravgrunnlagPåSakHendelser
import tilbakekreving.domain.kravgrunnlag.rått.RåttKravgrunnlagHendelse
import tilbakekreving.infrastructure.repo.BehandlingssammendragKravgrunnlagPostgresRepo
import tilbakekreving.infrastructure.repo.TilbakekrevingsbehandlingPostgresRepo
import tilbakekreving.infrastructure.repo.kravgrunnlag.KravgrunnlagPostgresRepo
import tilbakekreving.infrastructure.repo.kravgrunnlag.MapRåttKravgrunnlag
import tilbakekreving.infrastructure.repo.sammendrag.BehandlingssammendragKravgrunnlagPostgresRepo
import tilbakekreving.infrastructure.repo.sammendrag.BehandlingssammendragTilbakekrevingPostgresRepo
import tilbakekreving.presentation.consumer.KravgrunnlagDtoMapper
import vilkår.personligOppmøtevilkårAvslag
import økonomi.domain.avstemming.Avstemmingsnøkkel
Expand Down Expand Up @@ -241,12 +242,17 @@ class TestDataHelper(
kravgrunnlagRepo = kravgrunnlagPostgresRepo,
dokumentHendelseRepo = dokumentHendelseRepo,
)
val kravgrunnlagOgIverksatteTilbakekrevingerPostgresRepo =
val behandlingssammendragKravgrunnlagPostgresRepo =
BehandlingssammendragKravgrunnlagPostgresRepo(
dbMetrics = dbMetrics,
sessionFactory = sessionFactory,
)

val behandlingssammendragTilbakekrevingPostgresRepo = BehandlingssammendragTilbakekrevingPostgresRepo(
dbMetrics = dbMetrics,
sessionFactory = sessionFactory,
)

/**
* Oppretter og persisterer en ny sak (dersom den ikke finnes fra før) med søknad med tomt søknadsinnhold.
* Søknaden er uten journalføring og oppgave.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ import no.nav.su.se.bakover.hendelse.domain.Hendelseskonsument
import no.nav.su.se.bakover.hendelse.domain.HendelseskonsumentId
import no.nav.su.se.bakover.hendelse.domain.Hendelsesversjon
import org.slf4j.LoggerFactory
import tilbakekreving.domain.ForhåndsvarsleTilbakekrevingsbehandlingHendelse
import tilbakekreving.domain.ForhåndsvarsletTilbakekrevingsbehandlingHendelse
import tilbakekreving.domain.KanForhåndsvarsle
import tilbakekreving.domain.TilbakekrevingsbehandlingRepo
import tilbakekreving.domain.forhåndsvarsel.ForhåndsvarsleTilbakekrevingsbehandlingDokumentCommand
Expand All @@ -34,7 +34,7 @@ import java.time.Clock
import java.util.UUID

/**
* @see ForhåndsvarsleTilbakekrevingsbehandlingHendelse hendelsen som trigget konsumenten.
* @see ForhåndsvarsletTilbakekrevingsbehandlingHendelse hendelsen som trigget konsumenten.
*/
class GenererDokumentForForhåndsvarselTilbakekrevingKonsument(
private val sakService: SakService,
Expand Down Expand Up @@ -96,7 +96,7 @@ class GenererDokumentForForhåndsvarselTilbakekrevingKonsument(
}

val forhåndsvarsleHendelse =
(tilbakekrevingsbehandlingRepo.hentHendelse(hendelseId) as? ForhåndsvarsleTilbakekrevingsbehandlingHendelse)
(tilbakekrevingsbehandlingRepo.hentHendelse(hendelseId) as? ForhåndsvarsletTilbakekrevingsbehandlingHendelse)
?: return Unit.also {
log.error("Feil under generering av forhåndsvarseldokument: hendelsen var ikke av type ForhåndsvarsleTilbakekrevingsbehandlingHendelse for sak $sakId og hendelse $hendelseId")
}
Expand Down Expand Up @@ -131,7 +131,7 @@ class GenererDokumentForForhåndsvarselTilbakekrevingKonsument(
}

private fun opprettDokumentForForhåndsvarsel(
forhåndsvarsleHendelse: ForhåndsvarsleTilbakekrevingsbehandlingHendelse,
forhåndsvarsleHendelse: ForhåndsvarsletTilbakekrevingsbehandlingHendelse,
behandling: KanForhåndsvarsle,
nesteVersjon: Hendelsesversjon,
sakInfo: SakInfo,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ data class TilbakekrevingsbehandlingHendelser private constructor(
hendelseId to hendelse.applyToState(acc[hendelse.tidligereHendelseId]!!),
).minus(hendelse.tidligereHendelseId)

is ForhåndsvarsleTilbakekrevingsbehandlingHendelse -> acc.plus(
is ForhåndsvarsletTilbakekrevingsbehandlingHendelse -> acc.plus(
hendelseId to hendelse.applyToState(acc[hendelse.tidligereHendelseId]!!),
).minus(hendelse.tidligereHendelseId)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package tilbakekreving.domain

import no.nav.su.se.bakover.common.domain.sak.Behandlingssammendrag
import no.nav.su.se.bakover.common.persistence.SessionContext
import no.nav.su.se.bakover.hendelse.domain.DefaultHendelseMetadata
import no.nav.su.se.bakover.hendelse.domain.HendelseId
Expand All @@ -13,6 +12,7 @@ interface TilbakekrevingsbehandlingRepo {
meta: DefaultHendelseMetadata,
sessionContext: SessionContext? = null,
)

fun lagreIverksattTilbakekrevingshendelse(
hendelse: IverksattHendelse,
meta: IverksattHendelseMetadata,
Expand All @@ -30,7 +30,4 @@ interface TilbakekrevingsbehandlingRepo {
hendelse: TilbakekrevingsbehandlingHendelse,
sessionContext: SessionContext? = null,
): TilbakekrevingbehandlingsSerie

fun hentÅpneBehandlingssammendrag(sessionContext: SessionContext? = null): List<Behandlingssammendrag>
fun hentFerdigeBehandlingssamendrag(sessionContext: SessionContext? = null): List<Behandlingssammendrag>
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import java.util.UUID
*
* @see tilbakekreving.application.service.consumer.GenererDokumentForForhåndsvarselTilbakekrevingKonsument den asynkrone genereringen.
*/
data class ForhåndsvarsleTilbakekrevingsbehandlingHendelse(
data class ForhåndsvarsletTilbakekrevingsbehandlingHendelse(
override val hendelseId: HendelseId,
override val sakId: UUID,
override val hendelsestidspunkt: Tidspunkt,
Expand Down Expand Up @@ -60,8 +60,8 @@ fun KanForhåndsvarsle.leggTilForhåndsvarsel(
tidligereHendelsesId: HendelseId,
nesteVersjon: Hendelsesversjon,
clock: Clock,
): Pair<ForhåndsvarsleTilbakekrevingsbehandlingHendelse, UnderBehandling> =
ForhåndsvarsleTilbakekrevingsbehandlingHendelse(
): Pair<ForhåndsvarsletTilbakekrevingsbehandlingHendelse, UnderBehandling> =
ForhåndsvarsletTilbakekrevingsbehandlingHendelse(
hendelseId = HendelseId.generer(),
sakId = command.sakId,
hendelsestidspunkt = Tidspunkt.now(clock),
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package tilbakekreving.domain.kravgrunnlag.repo

import no.nav.su.se.bakover.common.domain.sak.Behandlingssammendrag
import no.nav.su.se.bakover.common.persistence.SessionContext

interface BehandlingssammendragTilbakekrevingRepo {
fun hentÅpne(sessionContext: SessionContext?): List<Behandlingssammendrag>
fun hentFerdige(sessionContext: SessionContext?): List<Behandlingssammendrag>
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import no.nav.su.se.bakover.hendelse.domain.HendelsekonsumenterRepo
import tilbakekreving.domain.TilbakekrevingsbehandlingRepo
import tilbakekreving.domain.kravgrunnlag.repo.KravgrunnlagRepo
import tilbakekreving.infrastructure.repo.kravgrunnlag.KravgrunnlagPostgresRepo
import tilbakekreving.infrastructure.repo.sammendrag.BehandlingssammendragKravgrunnlagPostgresRepo
import java.time.Clock

/**
Expand Down
Loading

0 comments on commit 4cc47e3

Please sign in to comment.