Skip to content

Commit

Permalink
Create oppgave when omsorgsyter is dead.
Browse files Browse the repository at this point in the history
  • Loading branch information
jacob-meidell committed Nov 12, 2024
1 parent f5e8747 commit d913497
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,10 @@ data class FullførtBehandling(
return vilkårsvurdering.finnAlleAvslatte()
}

fun ubestemteVilkår(): List<VilkarsVurdering<*>> {
return vilkårsvurdering.finnAlleUbestemte()
}

fun godskrivOpptjening(): GodskrivOpptjening.Transient {
require(erInnvilget()) { "Kan kun godskrive opptjening for innvilget behandling!" }
return GodskrivOpptjening.Transient(behandlingId = id)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package no.nav.pensjon.opptjening.omsorgsopptjening.bestem.pensjonsopptjening.omsorgsopptjening.model

import no.nav.pensjon.opptjening.omsorgsopptjening.bestem.pensjonsopptjening.oppgave.model.Oppgave
import java.time.LocalDate

object OmsorgsyterHarIkkeDødsdato : ParagrafVilkår<OmsorgsyterHarIkkeDødsdato.Grunnlag>() {
Expand All @@ -11,18 +12,30 @@ object OmsorgsyterHarIkkeDødsdato : ParagrafVilkår<OmsorgsyterHarIkkeDødsdato
}

override fun <T : Vilkar<Grunnlag>> T.bestemUtfall(grunnlag: Grunnlag): VilkårsvurderingUtfall {
return when (grunnlag.dødsdato != null) {
true -> VilkårsvurderingUtfall.Avslag.Vilkår(emptySet())
return when (grunnlag.harDødsdato()) {
true -> VilkårsvurderingUtfall.Ubestemt(emptySet())
false -> VilkårsvurderingUtfall.Innvilget.Vilkår(emptySet())
}
}

data class Vurdering(
override val grunnlag: Grunnlag,
override val utfall: VilkårsvurderingUtfall
) : ParagrafVurdering<Grunnlag>()
) : ParagrafVurdering<Grunnlag>() {
override fun hentOppgaveopplysninger(behandling: FullførtBehandling): Oppgaveopplysninger {
return Oppgaveopplysninger.Generell(
oppgavemottaker = behandling.omsorgsyter,
oppgaveTekst = Oppgave.omsorgsyterErDød(behandling.omsorgsyter, behandling.omsorgsmottaker)
)
}
}

data class Grunnlag(
valdsdato: LocalDate?
) : ParagrafGrunnlag()
) : ParagrafGrunnlag() {

fun harDødsdato(): Boolean {
return dødsdato != null
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@ sealed class Oppgave {
return """Godskriving omsorgspoeng: Manuell behandling. Godskriving for barn med fnr: $omsorgsmottaker må vurderes manuelt pga EØS-sak og mottar pensjon eller uføretrygd"""
}

fun omsorgsyterErDød(omsorgsyter: String, omsorgsmottaker: String): String {
return """Omsorgsyter: $omsorgsyter er død, vurder om omsorgsopptjening for barn med fnr: $omsorgsmottaker skal godskrives annen forelder."""
}

fun annenForelderInnvilgetOmsorgsopptjeningForAnnetFellesbarn(
omsorgsmottaker: String,
annenForelderOgBarn: Set<Pair<String, String>>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ class OmsorgsyterHarIkkeDødsdatoTest {
}

@Test
fun `avslag hvis omsorgsyter har dødsdato`() {
fun `ubestemt hvis omsorgsyter har dødsdato`() {
OmsorgsyterHarIkkeDødsdato.vilkarsVurder(
OmsorgsyterHarIkkeDødsdato.Grunnlag(
dødsdato = LocalDate.now().minusDays(1)
)
).also {
assertInstanceOf(VilkårsvurderingUtfall.Avslag.Vilkår::class.java, it.utfall)
assertInstanceOf(VilkårsvurderingUtfall.Ubestemt::class.java, it.utfall)
}
}
}

0 comments on commit d913497

Please sign in to comment.