Skip to content

Commit

Permalink
GenerasjonForkastet & AvsluttetMedVedtak
Browse files Browse the repository at this point in the history
  • Loading branch information
fraadsbrandth committed Jan 29, 2024
1 parent 25be27a commit ef83e8a
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ internal data class Behandling(
KomplettFraBruker,
AvsluttetUtenVedtak,
AvsluttetMedVedtak,
BehandlesIInfotrygd
}

private val utenMagiskeTimestamps get() = copy(funksjonellTid = LocalDateTime.MIN, tekniskTid = LocalDateTime.MIN)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,16 @@ import no.nav.helse.spre.styringsinfo.teamsak.behandling.BehandlingDao
import java.time.LocalDateTime
import java.util.*

internal class VedtakFattet(
internal class AvsluttetMedVedtak(
override val id: UUID,
override val opprettet: LocalDateTime,
override val blob: JsonNode,
private val generasjonId: UUID
) : Hendelse {
override val type = "vedtak_fattet"
override val type = "avsluttet_med_vedtak"

override fun håndter(behandlingDao: BehandlingDao) {
val builder = behandlingDao.initialiser(generasjonId) ?: return // Vedtak fattet for noe vi ikke har fått generasjon opprettet for
val builder = behandlingDao.initialiser(generasjonId) ?: return // Avsluttet med vedtak for noe vi ikke har fått generasjon opprettet for
val ny = builder
.behandlingStatus(Behandling.BehandlingStatus.AvsluttetMedVedtak)
.funksjonellTid(opprettet)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package no.nav.helse.spre.styringsinfo.teamsak.hendelse

import com.fasterxml.jackson.databind.JsonNode
import no.nav.helse.spre.styringsinfo.teamsak.behandling.Behandling
import no.nav.helse.spre.styringsinfo.teamsak.behandling.BehandlingDao
import java.time.LocalDateTime
import java.util.*

internal class GenerasjonForkastet(
override val id: UUID,
override val opprettet: LocalDateTime,
override val blob: JsonNode,
private val generasjonId: UUID
) : Hendelse {
override val type = "generasjon_forkastet"

override fun håndter(behandlingDao: BehandlingDao) {
val builder = behandlingDao.initialiser(generasjonId) ?: return
val ny = builder
.behandlingStatus(Behandling.BehandlingStatus.BehandlesIInfotrygd)
.funksjonellTid(opprettet)
.build()
?: return
behandlingDao.lagre(ny)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@ import no.nav.helse.spre.styringsinfo.teamsak.behandling.Behandling
import no.nav.helse.spre.styringsinfo.teamsak.behandling.BehandlingDao
import no.nav.helse.spre.styringsinfo.teamsak.hendelse.AvsluttetUtenVedtak
import no.nav.helse.spre.styringsinfo.teamsak.hendelse.GenerasjonOpprettet
import no.nav.helse.spre.styringsinfo.teamsak.hendelse.VedtakFattet
import no.nav.helse.spre.styringsinfo.teamsak.hendelse.AvsluttetMedVedtak
import no.nav.helse.spre.styringsinfo.teamsak.hendelse.GenerasjonForkastet
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Assertions.assertNull
import org.junit.jupiter.api.Test
Expand All @@ -28,14 +29,14 @@ class TeamSakTest {
val generasjonOpprettet = GenerasjonOpprettet(UUID.randomUUID(), LocalDateTime.now(),
blob, vedtaksperiodeId, generasjonId, aktørId, innsendt, registrert)

val vedtakFattet = VedtakFattet(UUID.randomUUID(), LocalDateTime.now(), blob, generasjonId)
val avsluttetMedVedtak = AvsluttetMedVedtak(UUID.randomUUID(), LocalDateTime.now(), blob, generasjonId)

assertNull(behandlingDao.hent(generasjonId))
generasjonOpprettet.håndter(behandlingDao)
var behandling = checkNotNull(behandlingDao.hent(generasjonId))
assertEquals(Behandling.BehandlingStatus.KomplettFraBruker, behandling.behandlingStatus)

vedtakFattet.håndter(behandlingDao)
avsluttetMedVedtak.håndter(behandlingDao)
behandling = checkNotNull(behandlingDao.hent(generasjonId))
assertEquals(Behandling.BehandlingStatus.AvsluttetMedVedtak, behandling.behandlingStatus)
}
Expand Down Expand Up @@ -64,6 +65,29 @@ class TeamSakTest {
assertEquals(Behandling.BehandlingStatus.AvsluttetUtenVedtak, behandling.behandlingStatus)
}

@Test
fun `start og slutt for forkastet periode`() {
val vedtaksperiodeId = UUID.randomUUID()
val generasjonId = UUID.randomUUID()
val aktørId = "1234"
val innsendt = LocalDateTime.now()
val registrert = innsendt.plusDays(1)

val blob = jacksonObjectMapper().createObjectNode()
val generasjonOpprettet = GenerasjonOpprettet(UUID.randomUUID(), LocalDateTime.now(),
blob, vedtaksperiodeId, generasjonId, aktørId, innsendt, registrert)

val generasjonForkastet = GenerasjonForkastet(UUID.randomUUID(), LocalDateTime.now(), blob, generasjonId)

assertNull(behandlingDao.hent(generasjonId))
generasjonOpprettet.håndter(behandlingDao)
var behandling = checkNotNull(behandlingDao.hent(generasjonId))
assertEquals(Behandling.BehandlingStatus.KomplettFraBruker, behandling.behandlingStatus)

generasjonForkastet.håndter(behandlingDao)
behandling = checkNotNull(behandlingDao.hent(generasjonId))
assertEquals(Behandling.BehandlingStatus.BehandlesIInfotrygd, behandling.behandlingStatus)
}


internal companion object {
Expand Down

0 comments on commit ef83e8a

Please sign in to comment.