diff --git a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/Avklaringspunkter.kt b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/Avklaringspunkter.kt index 6f0b012b..6a033ac2 100644 --- a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/Avklaringspunkter.kt +++ b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/Avklaringspunkter.kt @@ -56,7 +56,7 @@ object Avklaringspunkter { beskrivelse = "Personen har lukkede saker i Arena siste 8 uker", ) - val Samordnes = + val Samordning = Avklaringkode( kode = "Samordning", tittel = "Om reduserte ytelser fra folketrygden som skal samordnes", diff --git "a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/KravP\303\245Dagpenger.kt" "b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/KravP\303\245Dagpenger.kt" index 9ae2e21d..2b2998db 100644 --- "a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/KravP\303\245Dagpenger.kt" +++ "b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/KravP\303\245Dagpenger.kt" @@ -22,6 +22,7 @@ object KravPåDagpenger { StreikOgLockout.ikkeStreikEllerLockout, Medlemskap.oppfyllerMedlemskap, TapAvArbeidsinntektOgArbeidstid.kravTilTapAvArbeidsinntektOgArbeidstid, + Samordning.utfallEtterSamordning, ) } } diff --git a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/Samordning.kt b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/Samordning.kt index 3bb28684..0c28d4f9 100644 --- a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/Samordning.kt +++ b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/Samordning.kt @@ -4,10 +4,12 @@ import no.nav.dagpenger.avklaring.Kontrollpunkt import no.nav.dagpenger.opplysning.Opplysningstype import no.nav.dagpenger.opplysning.Regelsett import no.nav.dagpenger.opplysning.id +import no.nav.dagpenger.opplysning.regel.addisjon import no.nav.dagpenger.opplysning.regel.enAv import no.nav.dagpenger.opplysning.regel.innhentMed import no.nav.dagpenger.opplysning.regel.oppslag -import no.nav.dagpenger.opplysning.regel.substraksjon +import no.nav.dagpenger.opplysning.regel.størreEnnEllerLik +import no.nav.dagpenger.opplysning.regel.substraksjonTilNull import no.nav.dagpenger.opplysning.verdier.Beløp import no.nav.dagpenger.regel.Behov.Foreldrepenger import no.nav.dagpenger.regel.Behov.Omsorgspenger @@ -17,32 +19,34 @@ import no.nav.dagpenger.regel.Behov.Svangerskapspenger import no.nav.dagpenger.regel.Behov.Sykepenger import no.nav.dagpenger.regel.Behov.Uføre import no.nav.dagpenger.regel.Søknadstidspunkt.prøvingsdato -import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse +import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.dagsatsEtterNittiProsent +import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.harBarnetillegg /** * § 4-25.Samordning med reduserte ytelser fra folketrygden, eller redusert avtalefestet pensjon */ object Samordning { - val utfallEtterSamordning = Opplysningstype.somBoolsk("Utfall etter samordning") - val sykepenger = Opplysningstype.somBoolsk("Sykepenger etter lovens kapittel 8".id(Sykepenger)) - val pleiepenger = Opplysningstype.somBoolsk("Pleiepenger etter lovens kapittel 9".id(Pleienger)) - val omsorgspenger = Opplysningstype.somBoolsk("Omsorgspenger etter lovens kapittel 9".id(Omsorgspenger)) - val opplæringspenger = Opplysningstype.somBoolsk("Opplæringspenger etter lovens kapittel 9".id(Opplæringspenger)) - val uføre = Opplysningstype.somBoolsk("Uføretrygd etter lovens kapittel 12".id(Uføre)) - val foreldrepenger = Opplysningstype.somBoolsk("Foreldrepenger etter lovens kapittel 14".id(Foreldrepenger)) - val svangerskapspenger = Opplysningstype.somBoolsk("Svangerskapspenger etter lovens kapittel 14".id(Svangerskapspenger)) - val skalSamordnes = Opplysningstype.somBoolsk("Medlem har reduserte ytelser fra folketrygden (Samordning)") + internal val utfallEtterSamordning = Opplysningstype.somBoolsk("Utfall etter samordning") + internal val sykepenger = Opplysningstype.somBoolsk("Sykepenger etter lovens kapittel 8".id(Sykepenger)) + internal val pleiepenger = Opplysningstype.somBoolsk("Pleiepenger etter lovens kapittel 9".id(Pleienger)) + internal val omsorgspenger = Opplysningstype.somBoolsk("Omsorgspenger etter lovens kapittel 9".id(Omsorgspenger)) + internal val opplæringspenger = Opplysningstype.somBoolsk("Opplæringspenger etter lovens kapittel 9".id(Opplæringspenger)) + internal val uføre = Opplysningstype.somBoolsk("Uføretrygd etter lovens kapittel 12".id(Uføre)) + internal val foreldrepenger = Opplysningstype.somBoolsk("Foreldrepenger etter lovens kapittel 14".id(Foreldrepenger)) + internal val svangerskapspenger = Opplysningstype.somBoolsk("Svangerskapspenger etter lovens kapittel 14".id(Svangerskapspenger)) + internal val skalSamordnes = Opplysningstype.somBoolsk("Medlem har reduserte ytelser fra folketrygden (Samordning)") - val sykepengerDagsats = Opplysningstype.somBeløp("Sykepenger dagsats") - val pleiepengerDagsats = Opplysningstype.somBeløp("Pleiepenger dagsats") - val omsorgspengerDagsats = Opplysningstype.somBeløp("Omsorgspenger dagsats") - val opplæringspengerDagsats = Opplysningstype.somBeløp("Opplæringspenger dagsats") - val uføreDagsats = Opplysningstype.somBeløp("Uføre dagsats") - val foreldrepengerDagsats = Opplysningstype.somBeløp("Foreldrepenger dagsats") - val svangerskapspengerDagsats = Opplysningstype.somBeløp("Svangerskapspenger dagsats") + internal val sykepengerDagsats = Opplysningstype.somBeløp("Sykepenger dagsats") + internal val pleiepengerDagsats = Opplysningstype.somBeløp("Pleiepenger dagsats") + internal val omsorgspengerDagsats = Opplysningstype.somBeløp("Omsorgspenger dagsats") + internal val opplæringspengerDagsats = Opplysningstype.somBeløp("Opplæringspenger dagsats") + internal val uføreDagsats = Opplysningstype.somBeløp("Uføre dagsats") + internal val foreldrepengerDagsats = Opplysningstype.somBeløp("Foreldrepenger dagsats") + internal val svangerskapspengerDagsats = Opplysningstype.somBeløp("Svangerskapspenger dagsats") - val avrundetDagsUtenBarnetillegg = DagpengenesStørrelse.avrundetDagsUtenBarnetillegg - val samordnetDagsats = Opplysningstype.somBeløp("Samordnet dagsats") + private val sumAndreYtelser = Opplysningstype.somBeløp("Sum andre ytelser") + internal val samordnetDagsats = Opplysningstype.somBeløp("Samordnet dagsats uten barnetillegg") + private val kanUtbetale = Opplysningstype.somBoolsk("Samordnet dagsats er negativ eller 0") // Fulle dagpenger minus en/flere av reduserte ytelsene man mottar per samme dag (regnestykket) // avrundetDagsUtenBarnetillegg - sykepenger - pleiepenger - omsorgspenger - opplæringspenger - uføre - foreldrepenger - svangerskapspenger @@ -68,9 +72,8 @@ object Samordning { regel(uføreDagsats) { oppslag(prøvingsdato) { Beløp(0.0) } } regel(svangerskapspengerDagsats) { oppslag(prøvingsdato) { Beløp(0.0) } } regel(foreldrepengerDagsats) { oppslag(prøvingsdato) { Beløp(0.0) } } - regel(samordnetDagsats) { - substraksjon( - avrundetDagsUtenBarnetillegg, + regel(sumAndreYtelser) { + addisjon( sykepengerDagsats, pleiepengerDagsats, omsorgspengerDagsats, @@ -81,6 +84,11 @@ object Samordning { ) } + regel(samordnetDagsats) { substraksjonTilNull(dagsatsEtterNittiProsent, sumAndreYtelser) } + regel(kanUtbetale) { størreEnnEllerLik(dagsatsEtterNittiProsent, sumAndreYtelser) } + + regel(utfallEtterSamordning) { enAv(kanUtbetale, harBarnetillegg) } + regel(skalSamordnes) { enAv( sykepenger, @@ -97,7 +105,7 @@ object Samordning { val ønsketResultat = listOf(samordnetDagsats, skalSamordnes) val SkalSamordnes = - Kontrollpunkt(Avklaringspunkter.Samordnes) { + Kontrollpunkt(Avklaringspunkter.Samordning) { it.har(skalSamordnes) && it.finnOpplysning(skalSamordnes).verdi } } diff --git a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/beregning/BeregningsperiodeFabrikk.kt b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/beregning/BeregningsperiodeFabrikk.kt index 6a824fd4..afa628cf 100644 --- a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/beregning/BeregningsperiodeFabrikk.kt +++ b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/beregning/BeregningsperiodeFabrikk.kt @@ -62,7 +62,7 @@ internal class BeregningsperiodeFabrikk( Arbeidsdag( dato, opplysninger - .finnOpplysning(DagpengenesStørrelse.sats) + .finnOpplysning(DagpengenesStørrelse.dagsatsEtterSamordningMedBarnetillegg) .verdi.verdien .toInt(), opplysninger.finnOpplysning(TapAvArbeidsinntektOgArbeidstid.fastsattVanligArbeidstid).verdi / 5, diff --git "a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/fastsetting/DagpengenesSt\303\270rrelse.kt" "b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/fastsetting/DagpengenesSt\303\270rrelse.kt" index b6503c5f..58b849a3 100644 --- "a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/fastsetting/DagpengenesSt\303\270rrelse.kt" +++ "b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/fastsetting/DagpengenesSt\303\270rrelse.kt" @@ -13,9 +13,12 @@ import no.nav.dagpenger.opplysning.regel.innhentMed import no.nav.dagpenger.opplysning.regel.minstAv import no.nav.dagpenger.opplysning.regel.multiplikasjon import no.nav.dagpenger.opplysning.regel.oppslag +import no.nav.dagpenger.opplysning.regel.størreEnnEllerLik +import no.nav.dagpenger.opplysning.regel.substraksjonTilNull import no.nav.dagpenger.opplysning.verdier.Beløp import no.nav.dagpenger.regel.Avklaringspunkter.BarnMåGodkjennes import no.nav.dagpenger.regel.Behov.Barnetillegg +import no.nav.dagpenger.regel.Samordning.samordnetDagsats import no.nav.dagpenger.regel.Søknadstidspunkt.prøvingsdato import no.nav.dagpenger.regel.Søknadstidspunkt.søknadIdOpplysningstype import java.math.BigDecimal @@ -26,55 +29,79 @@ object DagpengenesStørrelse { val barn = Opplysningstype.somBarn("Barn".id(Barnetillegg)) internal val antallBarn = Opplysningstype.somHeltall("Antall barn som gir rett til barnetillegg") - private val barnetilleggetsStørrelse = Opplysningstype.somBeløp("Barnetilleggets størrelse") + internal val barnetilleggetsStørrelse = Opplysningstype.somBeløp("Barnetilleggets størrelse i kroner per dag for hvert barn") /** * 1. Hente barn fra søknad * 2. Saksbehandler vilkårprøver at en har rett til barnetillegg per barn * 3. == antall barn * barnetillegg */ - private val dekningsgrad = Opplysningstype.somDesimaltall("Dekningsgrad") - val dagsatsUtenBarnetillegg = Opplysningstype.somBeløp("Dagsats uten barnetillegg") - val avrundetDagsUtenBarnetillegg = Opplysningstype.somBeløp("Avrundet dagsats uten barnetillegg") - val avrundetDagsMedBarnetillegg = Opplysningstype.somBeløp("Avrundet dagsats med barnetillegg") - val barnetillegg = Opplysningstype.somBeløp("Barnetillegg i kroner") - val dagsatsMedBarn = Opplysningstype.somBeløp("Dagsats med barn") - val ukessats = Opplysningstype.somBeløp("Ukessats") - private val maksGrunnlag = Opplysningstype.somBeløp("Maks grunnlag for dagpenger") + private val dekningsgrad = Opplysningstype.somDesimaltall("Faktor for utregning av dagsats etter dagpengegrunnlaget") + val dagsatsUtenBarnetillegg = Opplysningstype.somBeløp("Dagsats uten barnetillegg før samordning") + private val avrundetDagsatsUtenBarnetillegg = Opplysningstype.somBeløp("Avrundet dagsats uten barnetillegg før samordning") + private val beløpOverMaks = + Opplysningstype.somBeløp( + "Andel av dagsats med barnetillegg som overstiger maks andel av dagpengegrunnlaget", + ) + val dagsatsEtterNittiProsent = + Opplysningstype.somBeløp( + "Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget", + ) + val barnetillegg = Opplysningstype.somBeløp("Sum av barnetillegg") + private val dagsatsMedBarnetillegg = Opplysningstype.somBeløp("Dagsats med barnetillegg før samordning") + private val nittiProsent = Opplysningstype.somDesimaltall("90% av grunnlag for dagpenger") private val antallArbeidsdagerPerÅr = Opplysningstype.somHeltall("Antall arbeidsdager per år") + private val maksGrunnlag = Opplysningstype.somBeløp("Maksimalt mulig grunnlag avgrenset til 90% av dagpengegrunnlaget") private val arbeidsdagerPerUke = Opplysningstype.somHeltall("Antall arbeidsdager per uke") - private val maksSats = Opplysningstype.somBeløp("Maks dagsats for dagpenger") - private val nittiProsent = Opplysningstype.somDesimaltall("90% av grunnlag for dagpenger") - val sats = Opplysningstype.somBeløp("Dagsats for dagpenger med barnetillegg") + private val maksSats = Opplysningstype.somBeløp("Maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget") + private val avrundetMaksSats = Opplysningstype.somBeløp("Avrundet maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget") + internal val harBarnetillegg = Opplysningstype.somBoolsk("Har barnetillegg") + private val samordnetDagsatsMedBarnetillegg = Opplysningstype.somBeløp("Samordnet dagsats med barnetillegg") + val ukessats = Opplysningstype.somBeløp("Ukessats med barnetillegg etter samordning") + val dagsatsEtterSamordningMedBarnetillegg = Opplysningstype.somBeløp("Dagsats med barnetillegg etter samordning og 90% regel") val regelsett = Regelsett("§ 4-12. Dagpengenes størrelse\n (Sats)") { regel(barn) { innhentMed(søknadIdOpplysningstype) } regel(antallBarn) { antallAv(barn) { kvalifiserer } } - regel(barnetilleggetsStørrelse) { oppslag(prøvingsdato) { BarnetilleggSats.forDato(it) } } - regel(dekningsgrad) { - oppslag(prøvingsdato) { DagpengensStørrelseFaktor.forDato(it) } - } + // Regn ut dagsats uten barnetillegg, før samordning + regel(dekningsgrad) { oppslag(prøvingsdato) { DagpengensStørrelseFaktor.forDato(it) } } regel(dagsatsUtenBarnetillegg) { multiplikasjon(grunnlag, dekningsgrad) } + + // Avrunder og sender over til samordning + regel(avrundetDagsatsUtenBarnetillegg) { avrund(dagsatsUtenBarnetillegg) } + + // Regn ut barnetillegg + regel(barnetilleggetsStørrelse) { oppslag(prøvingsdato) { BarnetilleggSats.forDato(it) } } regel(barnetillegg) { multiplikasjon(barnetilleggetsStørrelse, antallBarn) } - regel(dagsatsMedBarn) { addisjon(dagsatsUtenBarnetillegg, barnetillegg) } - // Regne ut ukessats - regel(arbeidsdagerPerUke) { oppslag(prøvingsdato) { 5 } } + // Regn ut dagsats med barnetillegg, før maks og samordning + regel(dagsatsMedBarnetillegg) { addisjon(dagsatsUtenBarnetillegg, barnetillegg) } + + // Regn ut 90% av dagpengegrunnlaget regel(nittiProsent) { oppslag(prøvingsdato) { 0.9 } } regel(antallArbeidsdagerPerÅr) { oppslag(prøvingsdato) { 260 } } - regel(maksGrunnlag) { multiplikasjon(grunnlag, nittiProsent) } regel(maksSats) { divisjon(maksGrunnlag, antallArbeidsdagerPerÅr) } - regel(sats) { minstAv(maksSats, dagsatsMedBarn) } + regel(avrundetMaksSats) { avrund(maksSats) } + + // Finn beløp som overstiger maksimal mulig dagsats + regel(beløpOverMaks) { substraksjonTilNull(dagsatsMedBarnetillegg, avrundetMaksSats) } + regel(dagsatsEtterNittiProsent) { substraksjonTilNull(avrundetDagsatsUtenBarnetillegg, beløpOverMaks) } + + // Regn ut samordnet dagsats med barnetillegg, begrenset til 90% av dagpengegrunnlaget + regel(samordnetDagsatsMedBarnetillegg) { addisjon(samordnetDagsats, barnetillegg) } + regel(dagsatsEtterSamordningMedBarnetillegg) { minstAv(samordnetDagsatsMedBarnetillegg, avrundetMaksSats) } + + // Regn ut ukessats + regel(arbeidsdagerPerUke) { oppslag(prøvingsdato) { 5 } } + regel(ukessats) { multiplikasjon(dagsatsEtterSamordningMedBarnetillegg, arbeidsdagerPerUke) } - regel(avrundetDagsMedBarnetillegg) { avrund(sats) } - regel(avrundetDagsUtenBarnetillegg) { avrund(dagsatsUtenBarnetillegg) } // Arena trenger denne - regel(ukessats) { multiplikasjon(avrundetDagsMedBarnetillegg, arbeidsdagerPerUke) } + regel(harBarnetillegg) { størreEnnEllerLik(barnetillegg, barnetilleggetsStørrelse) } } - val ønsketResultat = listOf(ukessats, avrundetDagsUtenBarnetillegg) + val ønsketResultat = listOf(ukessats, samordnetDagsats) val BarnetilleggKontroll = Kontrollpunkt(BarnMåGodkjennes) { diff --git a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/fastsetting/Egenandel.kt b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/fastsetting/Egenandel.kt index ff332540..ff935475 100644 --- a/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/fastsetting/Egenandel.kt +++ b/dagpenger/src/main/kotlin/no/nav/dagpenger/regel/fastsetting/Egenandel.kt @@ -8,7 +8,7 @@ import no.nav.dagpenger.regel.Søknadstidspunkt.prøvingsdato object Egenandel { val egenandel = Opplysningstype.somBeløp("Egenandel") - private val sats = DagpengenesStørrelse.avrundetDagsMedBarnetillegg + private val sats = DagpengenesStørrelse.dagsatsEtterSamordningMedBarnetillegg private val faktor = Opplysningstype.somDesimaltall("Antall dagsats for egenandel") val regelsett = diff --git a/dagpenger/src/test/kotlin/no/nav/dagpenger/features/BeregningSteg.kt b/dagpenger/src/test/kotlin/no/nav/dagpenger/features/BeregningSteg.kt index 75deb653..49132bc3 100644 --- a/dagpenger/src/test/kotlin/no/nav/dagpenger/features/BeregningSteg.kt +++ b/dagpenger/src/test/kotlin/no/nav/dagpenger/features/BeregningSteg.kt @@ -14,7 +14,7 @@ import no.nav.dagpenger.regel.beregning.Beregning.arbeidstimer import no.nav.dagpenger.regel.beregning.Beregning.forbruk import no.nav.dagpenger.regel.beregning.Beregning.terskel import no.nav.dagpenger.regel.beregning.BeregningsperiodeFabrikk -import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.sats +import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.dagsatsEtterSamordningMedBarnetillegg import no.nav.dagpenger.regel.fastsetting.Dagpengeperiode.antallStønadsuker import no.nav.dagpenger.regel.fastsetting.Dagpengeperiode.gjenståendeStønadsdager import no.nav.dagpenger.regel.fastsetting.Egenandel.egenandel @@ -148,7 +148,7 @@ class BeregningSteg : No { Faktum(antallStønadsuker, args["verdi"]!!.toInt(), gyldighetsperiode) }, "Sats" to { args, gyldighetsperiode -> - Faktum(sats, Beløp(args["verdi"]!!.toInt()), gyldighetsperiode) + Faktum(dagsatsEtterSamordningMedBarnetillegg, Beløp(args["verdi"]!!.toInt()), gyldighetsperiode) }, "FVA" to { args, gyldighetsperiode -> Faktum(fastsattVanligArbeidstid, args["verdi"]!!.toDouble(), gyldighetsperiode) diff --git "a/dagpenger/src/test/kotlin/no/nav/dagpenger/features/DagpengensSt\303\270rrelseSteg.kt" "b/dagpenger/src/test/kotlin/no/nav/dagpenger/features/DagpengensSt\303\270rrelseSteg.kt" index 1f8d48f8..c620e592 100644 --- "a/dagpenger/src/test/kotlin/no/nav/dagpenger/features/DagpengensSt\303\270rrelseSteg.kt" +++ "b/dagpenger/src/test/kotlin/no/nav/dagpenger/features/DagpengensSt\303\270rrelseSteg.kt" @@ -13,12 +13,13 @@ import no.nav.dagpenger.regel.Søknadstidspunkt.prøvingsdato import no.nav.dagpenger.regel.fastsetting.Dagpengegrunnlag import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.antallBarn -import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.avrundetDagsMedBarnetillegg +import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.dagsatsEtterSamordningMedBarnetillegg import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.dagsatsUtenBarnetillegg +import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.ukessats class DagpengensStørrelseSteg : No { private val fraDato = 10.mai(2024) - private val regelsett = RegelverkDagpenger.regelsettFor(avrundetDagsMedBarnetillegg) + private val regelsett = RegelverkDagpenger.regelsettFor(ukessats) private val opplysninger: Opplysninger = Opplysninger() private lateinit var regelkjøring: Regelkjøring @@ -52,7 +53,7 @@ class DagpengensStørrelseSteg : No { } Så("skal dagpengens størrelse være {string}") { størrelse: String -> - opplysninger.finnOpplysning(avrundetDagsMedBarnetillegg).verdi shouldBe Beløp(størrelse.toBigDecimal()) + opplysninger.finnOpplysning(dagsatsEtterSamordningMedBarnetillegg).verdi shouldBe Beløp(størrelse.toBigDecimal()) } Så("skal ukessats være {string}") { ukessats: String -> diff --git a/dagpenger/src/test/kotlin/no/nav/dagpenger/features/EgenandelSteg.kt b/dagpenger/src/test/kotlin/no/nav/dagpenger/features/EgenandelSteg.kt index 30772e27..0a03882e 100644 --- a/dagpenger/src/test/kotlin/no/nav/dagpenger/features/EgenandelSteg.kt +++ b/dagpenger/src/test/kotlin/no/nav/dagpenger/features/EgenandelSteg.kt @@ -31,10 +31,7 @@ class EgenandelSteg : No { opplysninger.leggTil(Faktum(prøvingsdato, fraDato)).also { regelkjøring.evaluer() } opplysninger .leggTil( - Faktum( - DagpengenesStørrelse.avrundetDagsMedBarnetillegg, - Beløp(sats.toBigDecimal()), - ), + Faktum(DagpengenesStørrelse.dagsatsEtterSamordningMedBarnetillegg, Beløp(sats.toBigDecimal())), ).also { regelkjøring.evaluer() } } diff --git a/dagpenger/src/test/kotlin/no/nav/dagpenger/features/SamordningSteg.kt b/dagpenger/src/test/kotlin/no/nav/dagpenger/features/SamordningSteg.kt index 0d887a92..51ee9dc0 100644 --- a/dagpenger/src/test/kotlin/no/nav/dagpenger/features/SamordningSteg.kt +++ b/dagpenger/src/test/kotlin/no/nav/dagpenger/features/SamordningSteg.kt @@ -8,21 +8,23 @@ import no.nav.dagpenger.opplysning.Faktum import no.nav.dagpenger.opplysning.Opplysning import no.nav.dagpenger.opplysning.Opplysninger import no.nav.dagpenger.opplysning.Regelkjøring +import no.nav.dagpenger.opplysning.verdier.Barn +import no.nav.dagpenger.opplysning.verdier.BarnListe import no.nav.dagpenger.opplysning.verdier.Beløp import no.nav.dagpenger.regel.RegelverkDagpenger import no.nav.dagpenger.regel.Samordning import no.nav.dagpenger.regel.Søknadstidspunkt +import no.nav.dagpenger.regel.fastsetting.Dagpengegrunnlag import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse -import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.avrundetDagsMedBarnetillegg +import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.ukessats import java.time.LocalDate class SamordningSteg : No { private val fraDato = 10.mai(2022) private val regelsett = - listOf(Samordning.regelsett) + - RegelverkDagpenger.regelsettFor( - avrundetDagsMedBarnetillegg, - ) + RegelverkDagpenger.regelsettFor( + ukessats, + ) private val opplysninger: Opplysninger = Opplysninger() private lateinit var regelkjøring: Regelkjøring @@ -36,18 +38,33 @@ class SamordningSteg : No { Gitt("at søker har søkt om dagpenger og har redusert ytelse") { opplysninger .leggTil( - Faktum(Søknadstidspunkt.søknadsdato, 11.mai(2022)) as Opplysning<*>, + Faktum(Søknadstidspunkt.søknadsdato, 11.mai(2022)) as Opplysning<*>, ).also { regelkjøring.evaluer() } opplysninger .leggTil( - Faktum(Søknadstidspunkt.ønsketdato, 11.mai(2022)) as Opplysning<*>, + Faktum(Søknadstidspunkt.ønsketdato, 11.mai(2022)) as Opplysning<*>, ).also { regelkjøring.evaluer() } } + Gitt("har {int} barn") { antall: Int -> + val barn = + (1..antall).map { + Barn( + fødselsdato = LocalDate.now(), + fornavnOgMellomnavn = "Donlald", + etternavn = "Duck $it", + statsborgerskap = "NOR", + kvalifiserer = true, + ) + } + + opplysninger.leggTil(Faktum(DagpengenesStørrelse.barn, BarnListe(barn))).also { regelkjøring.evaluer() } + } + Gitt("søker har redusert sykepenger {boolsk}") { sykepenger: Boolean -> opplysninger .leggTil( - Faktum(Samordning.sykepenger, sykepenger), + Faktum(Samordning.sykepenger, sykepenger), ).also { regelkjøring.evaluer() } @@ -64,7 +81,7 @@ class SamordningSteg : No { Gitt("søker har redusert pleiepenger {boolsk}") { pleiepenger: Boolean -> opplysninger .leggTil( - Faktum(Samordning.pleiepenger, pleiepenger), + Faktum(Samordning.pleiepenger, pleiepenger), ).also { regelkjøring.evaluer() } @@ -73,7 +90,7 @@ class SamordningSteg : No { Gitt("søker har redusert omsorgspenger {boolsk}") { omsorgspenger: Boolean -> opplysninger .leggTil( - Faktum(Samordning.omsorgspenger, omsorgspenger), + Faktum(Samordning.omsorgspenger, omsorgspenger), ).also { regelkjøring.evaluer() } @@ -82,7 +99,7 @@ class SamordningSteg : No { Gitt("søker har redusert opplæringspenger {boolsk}") { opplæringspenger: Boolean -> opplysninger .leggTil( - Faktum(Samordning.opplæringspenger, opplæringspenger), + Faktum(Samordning.opplæringspenger, opplæringspenger), ).also { regelkjøring.evaluer() } @@ -91,7 +108,7 @@ class SamordningSteg : No { Gitt("søker har redusert uføre {boolsk}") { uføre: Boolean -> opplysninger .leggTil( - Faktum(Samordning.uføre, uføre), + Faktum(Samordning.uføre, uføre), ).also { regelkjøring.evaluer() } @@ -100,7 +117,7 @@ class SamordningSteg : No { Gitt("søker har redusert foreldrepenger {boolsk}") { foreldrepenger: Boolean -> opplysninger .leggTil( - Faktum(Samordning.foreldrepenger, foreldrepenger), + Faktum(Samordning.foreldrepenger, foreldrepenger), ).also { regelkjøring.evaluer() } @@ -109,7 +126,7 @@ class SamordningSteg : No { Gitt("søker har redusert svangerskapspenger {boolsk}") { svangerskapspenger: Boolean -> opplysninger .leggTil( - Faktum(Samordning.svangerskapspenger, svangerskapspenger), + Faktum(Samordning.svangerskapspenger, svangerskapspenger), ).also { regelkjøring.evaluer() } @@ -118,15 +135,19 @@ class SamordningSteg : No { opplysninger.finnOpplysning(Samordning.skalSamordnes).verdi shouldBe samordnet } - Så("gitt at bruker har {string} i dagsats") { beløp: String -> + Så("gitt at bruker har {string} i grunnlag") { beløp: String -> opplysninger .leggTil( - Faktum(DagpengenesStørrelse.avrundetDagsUtenBarnetillegg, Beløp(beløp.toBigDecimal())), + Faktum(Dagpengegrunnlag.grunnlag, Beløp(beløp.toBigDecimal())), ).also { regelkjøring.evaluer() } } Så("skal at bruker ha {string} i samordnet dagsats") { beløp: String -> opplysninger.finnOpplysning(Samordning.samordnetDagsats).verdi shouldBe Beløp(beløp.toBigDecimal()) } + + Så("utfall etter samordning skal være {boolsk}") { utfall: Boolean -> + opplysninger.finnOpplysning(Samordning.utfallEtterSamordning).verdi shouldBe utfall + } } } diff --git "a/dagpenger/src/test/resources/features/12-DagpengensSt\303\270rrelse.feature" "b/dagpenger/src/test/resources/features/12-DagpengensSt\303\270rrelse.feature" index 3e6a54b2..643d805d 100644 --- "a/dagpenger/src/test/resources/features/12-DagpengensSt\303\270rrelse.feature" +++ "b/dagpenger/src/test/resources/features/12-DagpengensSt\303\270rrelse.feature" @@ -15,8 +15,8 @@ Egenskap: § 4-12. Dagpengenes størrelse Så skal dagpengens størrelse være "663" Scenario: Dagpengegrunnlag og mange barn gjør at 90% regelen blir brukt - Gitt at dagpengegrunnlag er "70000" + Gitt at dagpengegrunnlag er "70001" Og at søker har 7 barn - Så skal dagpengens uavrundet størrelse uten barnetillegg være "168" + Så skal dagpengens uavrundet størrelse uten barnetillegg være "168.0024" Så skal dagpengens størrelse være "242" Så skal ukessats være "1210" diff --git a/dagpenger/src/test/resources/features/25-Samordning.feature b/dagpenger/src/test/resources/features/25-Samordning.feature index 1a81e30c..1bcb04f7 100644 --- a/dagpenger/src/test/resources/features/25-Samordning.feature +++ b/dagpenger/src/test/resources/features/25-Samordning.feature @@ -4,6 +4,7 @@ Egenskap: § 4-25.Samordning med reduserte ytelser fra folketrygden, eller redus Scenariomal: Søker oppfyller kravet til samordning Gitt at søker har søkt om dagpenger og har redusert ytelse + Og har barn Og søker har redusert sykepenger "" Og dagsats for sykepenger er "" Og søker har redusert pleiepenger "" @@ -13,8 +14,11 @@ Egenskap: § 4-25.Samordning med reduserte ytelser fra folketrygden, eller redus Og søker har redusert foreldrepenger "" Og søker har redusert svangerskapspenger "" Så skal søker få samordnet dagsats "" - Og gitt at bruker har "" i dagsats + Og gitt at bruker har "" i grunnlag Så skal at bruker ha "" i samordnet dagsats + Og utfall etter samordning skal være "" Eksempler: - | sykepenger | pleiepenger | omsorgspenger | opplæringspenger | uføre | foreldrepenger | svangerskapspenger | samordnet | sykepengerDagsats | dagsats | samordnetsats | - | Ja | Nei | Nei | Nei | Nei | Nei | Nei | Ja | 500 | 1000 | 500 | \ No newline at end of file + | antall barn | sykepenger | pleiepenger | omsorgspenger | opplæringspenger | uføre | foreldrepenger | svangerskapspenger | samordnet | sykepengerDagsats | grunnlag | samordnetsats | utfall etter samordning | + | 0 | Ja | Nei | Nei | Nei | Nei | Nei | Nei | Ja | 500 | 416666 | 500 | Ja | + | 0 | Ja | Nei | Nei | Nei | Nei | Nei | Nei | Ja | 1100 | 416666 | 0 | Nei | + | 2 | Ja | Nei | Nei | Nei | Nei | Nei | Nei | Ja | 1100 | 416667 | 0 | Ja | diff --git a/docs/behov.approved.md b/docs/behov.approved.md index 3c077dec..379927de 100644 --- a/docs/behov.approved.md +++ b/docs/behov.approved.md @@ -22,6 +22,7 @@ Dette er opplysninger som blir innhentet som en del av dagpengebehandlingen. De |RegistrertSomArbeidssøker | Registrert som arbeidssøker | Boolsk|boolean| |Søknadsdato | Søknadsdato | Dato|LocalDate| |TarUtdanningEllerOpplæring | Tar utdanning eller opplæring? | Boolsk|boolean| +|Utfall etter samordning | Utfall etter samordning | Boolsk|boolean| |Verneplikt | Avtjent verneplikt | Boolsk|boolean| |VilligTilÅBytteYrke | Villig til å bytte yrke | Boolsk|boolean| |søknadId | søknadId | Tekst|String| diff --git a/docs/regeltre-dagpenger.approved.md b/docs/regeltre-dagpenger.approved.md index b318c831..7b7aa024 100644 --- a/docs/regeltre-dagpenger.approved.md +++ b/docs/regeltre-dagpenger.approved.md @@ -54,198 +54,212 @@ graph RL AF["Har avkortet grunnlag"] -->|"EnAv"| AE["Har avkortet grunnlaget i periode 3"] AG["Barn"] -->|"Ekstern"| AH["søknadId"] AI["Antall barn som gir rett til barnetillegg"] -->|"AntallAv"| AG["Barn"] - AJ["Barnetilleggets størrelse"] -->|"Oppslag"| B["Prøvingsdato"] - AK["Dekningsgrad"] -->|"Oppslag"| B["Prøvingsdato"] - AL["Dagsats uten barnetillegg"] -->|"Multiplikasjon"| AB["Grunnlag"] - AL["Dagsats uten barnetillegg"] -->|"Multiplikasjon"| AK["Dekningsgrad"] - AM["Barnetillegg i kroner"] -->|"Multiplikasjon"| AJ["Barnetilleggets størrelse"] - AM["Barnetillegg i kroner"] -->|"Multiplikasjon"| AI["Antall barn som gir rett til barnetillegg"] - AN["Dagsats med barn"] -->|"Addisjon"| AL["Dagsats uten barnetillegg"] - AN["Dagsats med barn"] -->|"Addisjon"| AM["Barnetillegg i kroner"] - AO["Antall arbeidsdager per uke"] -->|"Oppslag"| B["Prøvingsdato"] + AJ["Faktor for utregning av dagsats etter dagpengegrunnlaget"] -->|"Oppslag"| B["Prøvingsdato"] + AK["Dagsats uten barnetillegg før samordning"] -->|"Multiplikasjon"| AB["Grunnlag"] + AK["Dagsats uten barnetillegg før samordning"] -->|"Multiplikasjon"| AJ["Faktor for utregning av dagsats etter dagpengegrunnlaget"] + AL["Avrundet dagsats uten barnetillegg før samordning"] -->|"Avrund"| AK["Dagsats uten barnetillegg før samordning"] + AM["Barnetilleggets størrelse i kroner per dag for hvert barn"] -->|"Oppslag"| B["Prøvingsdato"] + AN["Sum av barnetillegg"] -->|"Multiplikasjon"| AM["Barnetilleggets størrelse i kroner per dag for hvert barn"] + AN["Sum av barnetillegg"] -->|"Multiplikasjon"| AI["Antall barn som gir rett til barnetillegg"] + AO["Dagsats med barnetillegg før samordning"] -->|"Addisjon"| AK["Dagsats uten barnetillegg før samordning"] + AO["Dagsats med barnetillegg før samordning"] -->|"Addisjon"| AN["Sum av barnetillegg"] AP["90% av grunnlag for dagpenger"] -->|"Oppslag"| B["Prøvingsdato"] AQ["Antall arbeidsdager per år"] -->|"Oppslag"| B["Prøvingsdato"] - AR["Maks grunnlag for dagpenger"] -->|"Multiplikasjon"| AB["Grunnlag"] - AR["Maks grunnlag for dagpenger"] -->|"Multiplikasjon"| AP["90% av grunnlag for dagpenger"] - AS["Maks dagsats for dagpenger"] -->|"Divisjon"| AR["Maks grunnlag for dagpenger"] - AS["Maks dagsats for dagpenger"] -->|"Divisjon"| AQ["Antall arbeidsdager per år"] - AT["Dagsats for dagpenger med barnetillegg"] -->|"MinstAv"| AS["Maks dagsats for dagpenger"] - AT["Dagsats for dagpenger med barnetillegg"] -->|"MinstAv"| AN["Dagsats med barn"] - AU["Avrundet dagsats med barnetillegg"] -->|"Avrund"| AT["Dagsats for dagpenger med barnetillegg"] - AV["Avrundet dagsats uten barnetillegg"] -->|"Avrund"| AL["Dagsats uten barnetillegg"] - AW["Ukessats"] -->|"Multiplikasjon"| AU["Avrundet dagsats med barnetillegg"] - AW["Ukessats"] -->|"Multiplikasjon"| AO["Antall arbeidsdager per uke"] - AX["Kort dagpengeperiode"] -->|"Oppslag"| B["Prøvingsdato"] - AY["Lang dagpengeperiode"] -->|"Oppslag"| B["Prøvingsdato"] - AZ["Terskelfaktor for 12 måneder"] -->|"Oppslag"| B["Prøvingsdato"] - BA["Terskelfaktor for 36 måneder"] -->|"Oppslag"| B["Prøvingsdato"] - BB["Divisior"] -->|"Oppslag"| B["Prøvingsdato"] - BC["Terskel for 12 måneder"] -->|"Multiplikasjon"| BD["Grunnbeløp"] - BC["Terskel for 12 måneder"] -->|"Multiplikasjon"| AZ["Terskelfaktor for 12 måneder"] - BE["Terskel for 36 måneder"] -->|"Multiplikasjon"| BD["Grunnbeløp"] - BE["Terskel for 36 måneder"] -->|"Multiplikasjon"| BA["Terskelfaktor for 36 måneder"] - BF["Snittinntekt siste 36 måneder"] -->|"Divisjon"| BG["Arbeidsinntekt siste 36 mnd"] - BF["Snittinntekt siste 36 måneder"] -->|"Divisjon"| BB["Divisior"] - BH["Over terskel for 12 måneder"] -->|"StørreEnnEllerLik"| BI["Arbeidsinntekt siste 12 mnd"] - BH["Over terskel for 12 måneder"] -->|"StørreEnnEllerLik"| BC["Terskel for 12 måneder"] - BJ["Over terskel for 36 måneder"] -->|"StørreEnnEllerLik"| BF["Snittinntekt siste 36 måneder"] - BJ["Over terskel for 36 måneder"] -->|"StørreEnnEllerLik"| BE["Terskel for 36 måneder"] - BK["Stønadsuker ved siste 12 måneder"] -->|"HvisSannMedResultat"| BH["Over terskel for 12 måneder"] - BK["Stønadsuker ved siste 12 måneder"] -->|"HvisSannMedResultat"| AY["Lang dagpengeperiode"] - BK["Stønadsuker ved siste 12 måneder"] -->|"HvisSannMedResultat"| AX["Kort dagpengeperiode"] - BL["Stønadsuker ved siste 36 måneder"] -->|"HvisSannMedResultat"| BJ["Over terskel for 36 måneder"] - BL["Stønadsuker ved siste 36 måneder"] -->|"HvisSannMedResultat"| AY["Lang dagpengeperiode"] - BL["Stønadsuker ved siste 36 måneder"] -->|"HvisSannMedResultat"| AX["Kort dagpengeperiode"] - BM["Antall stønadsuker"] -->|"HøyesteAv"| BK["Stønadsuker ved siste 12 måneder"] - BM["Antall stønadsuker"] -->|"HøyesteAv"| BL["Stønadsuker ved siste 36 måneder"] - BN["Antall dager som skal regnes med i hver uke"] -->|"Oppslag"| B["Prøvingsdato"] - BO["Antall gjenstående stønadsdager"] -->|"Multiplikasjon"| BM["Antall stønadsuker"] - BO["Antall gjenstående stønadsdager"] -->|"Multiplikasjon"| BN["Antall dager som skal regnes med i hver uke"] - BP["Antall dagsats for egenandel"] -->|"Oppslag"| B["Prøvingsdato"] - BQ["Egenandel"] -->|"Multiplikasjon"| AU["Avrundet dagsats med barnetillegg"] - BQ["Egenandel"] -->|"Multiplikasjon"| BP["Antall dagsats for egenandel"] - BR["Krav på dagpenger"] -->|"Alle"| F["Oppfyller kravet til alder"] - BR["Krav på dagpenger"] -->|"Alle"| BS["Krav til minsteinntekt"] - BR["Krav på dagpenger"] -->|"Alle"| BT["Krav til arbeidssøker"] - BR["Krav på dagpenger"] -->|"Alle"| BU["Registrert som arbeidssøker på søknadstidspunktet"] - BR["Krav på dagpenger"] -->|"Alle"| BV["Rettighetstype"] - BR["Krav på dagpenger"] -->|"Alle"| BW["Krav til utdanning eller opplæring"] - BR["Krav på dagpenger"] -->|"Alle"| BX["Oppfyller krav til ikke utestengt"] - BR["Krav på dagpenger"] -->|"Alle"| BY["Er medlemmet ikke påvirket av streik eller lock-out?"] - BR["Krav på dagpenger"] -->|"Alle"| BZ["Oppfyller personen vilkåret om medlemskap?"] - BR["Krav på dagpenger"] -->|"Alle"| CA["Krav til tap av arbeidsinntekt og arbeidstid"] - CB["Er personen medlem av folketrygden?"] -->|"Oppslag"| B["Prøvingsdato"] - BZ["Oppfyller personen vilkåret om medlemskap?"] -->|"ErSann"| CB["Er personen medlem av folketrygden?"] - CC["Registrert som arbeidssøker"] -->|"Ekstern"| B["Prøvingsdato"] - BU["Registrert som arbeidssøker på søknadstidspunktet"] -->|"ErSann"| CC["Registrert som arbeidssøker"] - CD["Maks lengde på opptjeningsperiode"] -->|"Oppslag"| B["Prøvingsdato"] - CE["Første måned av opptjeningsperiode"] -->|"TrekkFraMåned"| CF["Siste avsluttende kalendermåned"] - CE["Første måned av opptjeningsperiode"] -->|"TrekkFraMåned"| CD["Maks lengde på opptjeningsperiode"] + AR["Maksimalt mulig grunnlag avgrenset til 90% av dagpengegrunnlaget"] -->|"Multiplikasjon"| AB["Grunnlag"] + AR["Maksimalt mulig grunnlag avgrenset til 90% av dagpengegrunnlaget"] -->|"Multiplikasjon"| AP["90% av grunnlag for dagpenger"] + AS["Maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] -->|"Divisjon"| AR["Maksimalt mulig grunnlag avgrenset til 90% av dagpengegrunnlaget"] + AS["Maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] -->|"Divisjon"| AQ["Antall arbeidsdager per år"] + AT["Avrundet maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] -->|"Avrund"| AS["Maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] + AU["Andel av dagsats med barnetillegg som overstiger maks andel av dagpengegrunnlaget"] -->|"Substraksjon"| AO["Dagsats med barnetillegg før samordning"] + AU["Andel av dagsats med barnetillegg som overstiger maks andel av dagpengegrunnlaget"] -->|"Substraksjon"| AT["Avrundet maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] + AV["Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget"] -->|"Substraksjon"| AL["Avrundet dagsats uten barnetillegg før samordning"] + AV["Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget"] -->|"Substraksjon"| AU["Andel av dagsats med barnetillegg som overstiger maks andel av dagpengegrunnlaget"] + AW["Samordnet dagsats med barnetillegg"] -->|"Addisjon"| AX["Samordnet dagsats uten barnetillegg"] + AW["Samordnet dagsats med barnetillegg"] -->|"Addisjon"| AN["Sum av barnetillegg"] + AY["Dagsats med barnetillegg etter samordning og 90% regel"] -->|"MinstAv"| AW["Samordnet dagsats med barnetillegg"] + AY["Dagsats med barnetillegg etter samordning og 90% regel"] -->|"MinstAv"| AT["Avrundet maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] + AZ["Antall arbeidsdager per uke"] -->|"Oppslag"| B["Prøvingsdato"] + BA["Ukessats med barnetillegg etter samordning"] -->|"Multiplikasjon"| AY["Dagsats med barnetillegg etter samordning og 90% regel"] + BA["Ukessats med barnetillegg etter samordning"] -->|"Multiplikasjon"| AZ["Antall arbeidsdager per uke"] + BB["Har barnetillegg"] -->|"StørreEnnEllerLik"| AN["Sum av barnetillegg"] + BB["Har barnetillegg"] -->|"StørreEnnEllerLik"| AM["Barnetilleggets størrelse i kroner per dag for hvert barn"] + BC["Kort dagpengeperiode"] -->|"Oppslag"| B["Prøvingsdato"] + BD["Lang dagpengeperiode"] -->|"Oppslag"| B["Prøvingsdato"] + BE["Terskelfaktor for 12 måneder"] -->|"Oppslag"| B["Prøvingsdato"] + BF["Terskelfaktor for 36 måneder"] -->|"Oppslag"| B["Prøvingsdato"] + BG["Divisior"] -->|"Oppslag"| B["Prøvingsdato"] + BH["Terskel for 12 måneder"] -->|"Multiplikasjon"| BI["Grunnbeløp"] + BH["Terskel for 12 måneder"] -->|"Multiplikasjon"| BE["Terskelfaktor for 12 måneder"] + BJ["Terskel for 36 måneder"] -->|"Multiplikasjon"| BI["Grunnbeløp"] + BJ["Terskel for 36 måneder"] -->|"Multiplikasjon"| BF["Terskelfaktor for 36 måneder"] + BK["Snittinntekt siste 36 måneder"] -->|"Divisjon"| BL["Arbeidsinntekt siste 36 mnd"] + BK["Snittinntekt siste 36 måneder"] -->|"Divisjon"| BG["Divisior"] + BM["Over terskel for 12 måneder"] -->|"StørreEnnEllerLik"| BN["Arbeidsinntekt siste 12 mnd"] + BM["Over terskel for 12 måneder"] -->|"StørreEnnEllerLik"| BH["Terskel for 12 måneder"] + BO["Over terskel for 36 måneder"] -->|"StørreEnnEllerLik"| BK["Snittinntekt siste 36 måneder"] + BO["Over terskel for 36 måneder"] -->|"StørreEnnEllerLik"| BJ["Terskel for 36 måneder"] + BP["Stønadsuker ved siste 12 måneder"] -->|"HvisSannMedResultat"| BM["Over terskel for 12 måneder"] + BP["Stønadsuker ved siste 12 måneder"] -->|"HvisSannMedResultat"| BD["Lang dagpengeperiode"] + BP["Stønadsuker ved siste 12 måneder"] -->|"HvisSannMedResultat"| BC["Kort dagpengeperiode"] + BQ["Stønadsuker ved siste 36 måneder"] -->|"HvisSannMedResultat"| BO["Over terskel for 36 måneder"] + BQ["Stønadsuker ved siste 36 måneder"] -->|"HvisSannMedResultat"| BD["Lang dagpengeperiode"] + BQ["Stønadsuker ved siste 36 måneder"] -->|"HvisSannMedResultat"| BC["Kort dagpengeperiode"] + BR["Antall stønadsuker"] -->|"HøyesteAv"| BP["Stønadsuker ved siste 12 måneder"] + BR["Antall stønadsuker"] -->|"HøyesteAv"| BQ["Stønadsuker ved siste 36 måneder"] + BS["Antall dager som skal regnes med i hver uke"] -->|"Oppslag"| B["Prøvingsdato"] + BT["Antall gjenstående stønadsdager"] -->|"Multiplikasjon"| BR["Antall stønadsuker"] + BT["Antall gjenstående stønadsdager"] -->|"Multiplikasjon"| BS["Antall dager som skal regnes med i hver uke"] + BU["Antall dagsats for egenandel"] -->|"Oppslag"| B["Prøvingsdato"] + BV["Egenandel"] -->|"Multiplikasjon"| AY["Dagsats med barnetillegg etter samordning og 90% regel"] + BV["Egenandel"] -->|"Multiplikasjon"| BU["Antall dagsats for egenandel"] + BW["Krav på dagpenger"] -->|"Alle"| F["Oppfyller kravet til alder"] + BW["Krav på dagpenger"] -->|"Alle"| BX["Krav til minsteinntekt"] + BW["Krav på dagpenger"] -->|"Alle"| BY["Krav til arbeidssøker"] + BW["Krav på dagpenger"] -->|"Alle"| BZ["Registrert som arbeidssøker på søknadstidspunktet"] + BW["Krav på dagpenger"] -->|"Alle"| CA["Rettighetstype"] + BW["Krav på dagpenger"] -->|"Alle"| CB["Krav til utdanning eller opplæring"] + BW["Krav på dagpenger"] -->|"Alle"| CC["Oppfyller krav til ikke utestengt"] + BW["Krav på dagpenger"] -->|"Alle"| CD["Er medlemmet ikke påvirket av streik eller lock-out?"] + BW["Krav på dagpenger"] -->|"Alle"| CE["Oppfyller personen vilkåret om medlemskap?"] + BW["Krav på dagpenger"] -->|"Alle"| CF["Krav til tap av arbeidsinntekt og arbeidstid"] + BW["Krav på dagpenger"] -->|"Alle"| CG["Utfall etter samordning"] + CH["Er personen medlem av folketrygden?"] -->|"Oppslag"| B["Prøvingsdato"] + CE["Oppfyller personen vilkåret om medlemskap?"] -->|"ErSann"| CH["Er personen medlem av folketrygden?"] + CI["Registrert som arbeidssøker"] -->|"Ekstern"| B["Prøvingsdato"] + BZ["Registrert som arbeidssøker på søknadstidspunktet"] -->|"ErSann"| CI["Registrert som arbeidssøker"] + CJ["Maks lengde på opptjeningsperiode"] -->|"Oppslag"| B["Prøvingsdato"] + CK["Første måned av opptjeningsperiode"] -->|"TrekkFraMåned"| CL["Siste avsluttende kalendermåned"] + CK["Første måned av opptjeningsperiode"] -->|"TrekkFraMåned"| CJ["Maks lengde på opptjeningsperiode"] L["Inntekt"] -->|"Ekstern"| B["Prøvingsdato"] - L["Inntekt"] -->|"Ekstern"| CF["Siste avsluttende kalendermåned"] - L["Inntekt"] -->|"Ekstern"| CE["Første måned av opptjeningsperiode"] - BD["Grunnbeløp"] -->|"Oppslag"| B["Prøvingsdato"] - BI["Arbeidsinntekt siste 12 mnd"] -->|"Ekstern"| L["Inntekt"] - CG["Antall G for krav til 12 mnd arbeidsinntekt"] -->|"Oppslag"| B["Prøvingsdato"] - CH["Inntektskrav for siste 12 mnd"] -->|"Multiplikasjon"| BD["Grunnbeløp"] - CH["Inntektskrav for siste 12 mnd"] -->|"Multiplikasjon"| CG["Antall G for krav til 12 mnd arbeidsinntekt"] - CI["Arbeidsinntekt er over kravet for siste 12 mnd"] -->|"StørreEnnEllerLik"| BI["Arbeidsinntekt siste 12 mnd"] - CI["Arbeidsinntekt er over kravet for siste 12 mnd"] -->|"StørreEnnEllerLik"| CH["Inntektskrav for siste 12 mnd"] - BG["Arbeidsinntekt siste 36 mnd"] -->|"Ekstern"| L["Inntekt"] - CJ["Antall G for krav til 36 mnd arbeidsinntekt"] -->|"Oppslag"| B["Prøvingsdato"] - CK["Inntektskrav for siste 36 mnd"] -->|"Multiplikasjon"| BD["Grunnbeløp"] - CK["Inntektskrav for siste 36 mnd"] -->|"Multiplikasjon"| CJ["Antall G for krav til 36 mnd arbeidsinntekt"] - CL["Arbeidsinntekt er over kravet for siste 36 mnd"] -->|"StørreEnnEllerLik"| BG["Arbeidsinntekt siste 36 mnd"] - CL["Arbeidsinntekt er over kravet for siste 36 mnd"] -->|"StørreEnnEllerLik"| CK["Inntektskrav for siste 36 mnd"] - BS["Krav til minsteinntekt"] -->|"EnAv"| CI["Arbeidsinntekt er over kravet for siste 12 mnd"] - BS["Krav til minsteinntekt"] -->|"EnAv"| CL["Arbeidsinntekt er over kravet for siste 36 mnd"] - BS["Krav til minsteinntekt"] -->|"EnAv"| CM["Har utført minst tre måneders militærtjeneste eller obligatorisk sivilforsvarstjeneste"] - CN["Lovpålagt rapporteringsfrist for A-ordningen"] -->|"Oppslag"| B["Prøvingsdato"] - CO["Arbeidsgivers rapporteringsfrist"] -->|"FørsteArbeidsdag"| CN["Lovpålagt rapporteringsfrist for A-ordningen"] - CF["Siste avsluttende kalendermåned"] -->|"SisteavsluttendeKalenderMåned"| B["Prøvingsdato"] - CF["Siste avsluttende kalendermåned"] -->|"SisteavsluttendeKalenderMåned"| CO["Arbeidsgivers rapporteringsfrist"] - CP["Det er godkjent at bruker kun søk arbeid lokalt"] -->|"Oppslag"| B["Prøvingsdato"] - CQ["Det er godkjent at bruker kun søker deltidsarbeid"] -->|"Oppslag"| B["Prøvingsdato"] - CR["Bruker oppfyller kravet til mobilitet"] -->|"EnAv"| CS["Kan jobbe i hele Norge"] - CR["Bruker oppfyller kravet til mobilitet"] -->|"EnAv"| CP["Det er godkjent at bruker kun søk arbeid lokalt"] - CT["Bruker oppfyller kravet til å være arbeidssøker"] -->|"EnAv"| CU["Kan jobbe heltid og deltid"] - CT["Bruker oppfyller kravet til å være arbeidssøker"] -->|"EnAv"| CQ["Det er godkjent at bruker kun søker deltidsarbeid"] - BT["Krav til arbeidssøker"] -->|"Alle"| CT["Bruker oppfyller kravet til å være arbeidssøker"] - BT["Krav til arbeidssøker"] -->|"Alle"| CR["Bruker oppfyller kravet til mobilitet"] - BT["Krav til arbeidssøker"] -->|"Alle"| CV["Kan ta alle typer arbeid"] - BT["Krav til arbeidssøker"] -->|"Alle"| CW["Villig til å bytte yrke"] - CX["Har rett til ordinære dagpenger uten arbeidsforhold"] -->|"IngenAv"| CY["Har rett til ordinære dagpenger gjennom arbeidsforhold"] - CX["Har rett til ordinære dagpenger uten arbeidsforhold"] -->|"IngenAv"| CZ["Har rett til dagpenger under permittering"] - CX["Har rett til ordinære dagpenger uten arbeidsforhold"] -->|"IngenAv"| DA["Har rett til dagpenger etter konkurs"] - CX["Har rett til ordinære dagpenger uten arbeidsforhold"] -->|"IngenAv"| DB["Har rett til dagpenger under permittering i fiskeforedlingsindustri"] - DC["Har rett til ordinære dagpenger"] -->|"EnAv"| CY["Har rett til ordinære dagpenger gjennom arbeidsforhold"] - DC["Har rett til ordinære dagpenger"] -->|"EnAv"| CX["Har rett til ordinære dagpenger uten arbeidsforhold"] - BV["Rettighetstype"] -->|"EnAv"| DC["Har rett til ordinære dagpenger"] - BV["Rettighetstype"] -->|"EnAv"| CZ["Har rett til dagpenger under permittering"] - BV["Rettighetstype"] -->|"EnAv"| DA["Har rett til dagpenger etter konkurs"] - BV["Rettighetstype"] -->|"EnAv"| DB["Har rett til dagpenger under permittering i fiskeforedlingsindustri"] - DD["Sykepenger etter lovens kapittel 8"] -->|"Ekstern"| B["Prøvingsdato"] - DE["Pleiepenger etter lovens kapittel 9"] -->|"Ekstern"| B["Prøvingsdato"] - DF["Omsorgspenger etter lovens kapittel 9"] -->|"Ekstern"| B["Prøvingsdato"] - DG["Opplæringspenger etter lovens kapittel 9"] -->|"Ekstern"| B["Prøvingsdato"] - DH["Foreldrepenger etter lovens kapittel 14"] -->|"Ekstern"| B["Prøvingsdato"] - DI["Svangerskapspenger etter lovens kapittel 14"] -->|"Ekstern"| B["Prøvingsdato"] - DJ["Uføretrygd etter lovens kapittel 12"] -->|"Oppslag"| B["Prøvingsdato"] - DK["Sykepenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] - DL["Pleiepenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] - DM["Omsorgspenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] - DN["Opplæringspenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] - DO["Uføre dagsats"] -->|"Oppslag"| B["Prøvingsdato"] - DP["Svangerskapspenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] - DQ["Foreldrepenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] - DR["Samordnet dagsats"] -->|"Substraksjon"| AV["Avrundet dagsats uten barnetillegg"] - DR["Samordnet dagsats"] -->|"Substraksjon"| DK["Sykepenger dagsats"] - DR["Samordnet dagsats"] -->|"Substraksjon"| DL["Pleiepenger dagsats"] - DR["Samordnet dagsats"] -->|"Substraksjon"| DM["Omsorgspenger dagsats"] - DR["Samordnet dagsats"] -->|"Substraksjon"| DN["Opplæringspenger dagsats"] - DR["Samordnet dagsats"] -->|"Substraksjon"| DO["Uføre dagsats"] - DR["Samordnet dagsats"] -->|"Substraksjon"| DQ["Foreldrepenger dagsats"] - DR["Samordnet dagsats"] -->|"Substraksjon"| DP["Svangerskapspenger dagsats"] - DS["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DD["Sykepenger etter lovens kapittel 8"] - DS["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DE["Pleiepenger etter lovens kapittel 9"] - DS["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DF["Omsorgspenger etter lovens kapittel 9"] - DS["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DG["Opplæringspenger etter lovens kapittel 9"] - DS["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DJ["Uføretrygd etter lovens kapittel 12"] - DS["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DH["Foreldrepenger etter lovens kapittel 14"] - DS["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DI["Svangerskapspenger etter lovens kapittel 14"] - DT["Deltar medlemmet i streik eller er omfattet av lock-out?"] -->|"Oppslag"| B["Prøvingsdato"] - DU["Ledig ved samme bedrift eller arbeidsplass, og blir påvirket av utfallet?"] -->|"Oppslag"| B["Prøvingsdato"] - BY["Er medlemmet ikke påvirket av streik eller lock-out?"] -->|"IngenAv"| DT["Deltar medlemmet i streik eller er omfattet av lock-out?"] - BY["Er medlemmet ikke påvirket av streik eller lock-out?"] -->|"IngenAv"| DU["Ledig ved samme bedrift eller arbeidsplass, og blir påvirket av utfallet?"] - DV["Søknadsdato"] -->|"Ekstern"| AH["søknadId"] - DW["Ønsker dagpenger fra dato"] -->|"Ekstern"| AH["søknadId"] - DX["Søknadstidspunkt"] -->|"SisteAv"| DV["Søknadsdato"] - DX["Søknadstidspunkt"] -->|"SisteAv"| DW["Ønsker dagpenger fra dato"] - B["Prøvingsdato"] -->|"SisteAv"| DX["Søknadstidspunkt"] - DY["Har tapt arbeid"] -->|"Oppslag"| B["Prøvingsdato"] - DZ["Krav på lønn fra tidligere arbeidsgiver"] -->|"Oppslag"| B["Prøvingsdato"] - EA["Ikke krav på lønn fra tidligere arbeidsgiver"] -->|"IngenAv"| DZ["Krav på lønn fra tidligere arbeidsgiver"] - EB["Krav til tap av arbeidsinntekt"] -->|"Alle"| DY["Har tapt arbeid"] - EB["Krav til tap av arbeidsinntekt"] -->|"Alle"| EA["Ikke krav på lønn fra tidligere arbeidsgiver"] - EC["Krav til prosentvis tap av arbeidstid"] -->|"Oppslag"| B["Prøvingsdato"] - ED["Beregningsregel: Arbeidstid siste 6 måneder"] -->|"Oppslag"| B["Prøvingsdato"] - EE["Beregningsregel: Arbeidstid siste 12 måneder"] -->|"Oppslag"| B["Prøvingsdato"] - EF["Beregeningsregel: Arbeidstid siste 36 måneder"] -->|"Oppslag"| B["Prøvingsdato"] - EG["Beregnet vanlig arbeidstid per uke før tap"] -->|"Oppslag"| B["Prøvingsdato"] - EH["Ny arbeidstid per uke"] -->|"Oppslag"| B["Prøvingsdato"] - EI["Maksimal vanlig arbeidstid"] -->|"Oppslag"| B["Prøvingsdato"] - EJ["Fastsatt arbeidstid per uke før tap"] -->|"MinstAv"| EG["Beregnet vanlig arbeidstid per uke før tap"] - EJ["Fastsatt arbeidstid per uke før tap"] -->|"MinstAv"| EI["Maksimal vanlig arbeidstid"] - EK["Tap av arbeidstid er minst terskel"] -->|"SjekkAvTerskel"| EH["Ny arbeidstid per uke"] - EK["Tap av arbeidstid er minst terskel"] -->|"SjekkAvTerskel"| EJ["Fastsatt arbeidstid per uke før tap"] - EK["Tap av arbeidstid er minst terskel"] -->|"SjekkAvTerskel"| EC["Krav til prosentvis tap av arbeidstid"] - EL["Beregningsregel: Tapt arbeidstid"] -->|"EnAv"| ED["Beregningsregel: Arbeidstid siste 6 måneder"] - EL["Beregningsregel: Tapt arbeidstid"] -->|"EnAv"| EE["Beregningsregel: Arbeidstid siste 12 måneder"] - EL["Beregningsregel: Tapt arbeidstid"] -->|"EnAv"| EF["Beregeningsregel: Arbeidstid siste 36 måneder"] - CA["Krav til tap av arbeidsinntekt og arbeidstid"] -->|"Alle"| EB["Krav til tap av arbeidsinntekt"] - CA["Krav til tap av arbeidsinntekt og arbeidstid"] -->|"Alle"| EK["Tap av arbeidstid er minst terskel"] - CA["Krav til tap av arbeidsinntekt og arbeidstid"] -->|"Alle"| EL["Beregningsregel: Tapt arbeidstid"] - EM["Deltar i arbeidsmarkedstiltak"] -->|"Oppslag"| B["Prøvingsdato"] - EN["Deltar i opplæring for innvandrere"] -->|"Oppslag"| B["Prøvingsdato"] - EO["Deltar i grunnskoleopplæring, videregående opplæring og opplæring i grunnleggende ferdigheter"] -->|"Oppslag"| B["Prøvingsdato"] - EP["Deltar i høyere yrkesfaglig utdanning"] -->|"Oppslag"| B["Prøvingsdato"] - EQ["Deltar i høyere utdanning"] -->|"Oppslag"| B["Prøvingsdato"] - ER["Deltar på kurs mv"] -->|"Oppslag"| B["Prøvingsdato"] - ES["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| EM["Deltar i arbeidsmarkedstiltak"] - ES["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| EN["Deltar i opplæring for innvandrere"] - ES["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| EO["Deltar i grunnskoleopplæring, videregående opplæring og opplæring i grunnleggende ferdigheter"] - ES["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| EP["Deltar i høyere yrkesfaglig utdanning"] - ES["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| EQ["Deltar i høyere utdanning"] - ES["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| ER["Deltar på kurs mv"] - ET["Har svart ja på spørsmål om utdanning eller opplæring"] -->|"ErSann"| EU["Tar utdanning eller opplæring?"] - EV["Har svart nei på spørsmål om utdanning eller opplæring"] -->|"ErUsann"| EU["Tar utdanning eller opplæring?"] - EW["Oppfyller kravet på unntak for utdanning eller opplæring"] -->|"Alle"| ET["Har svart ja på spørsmål om utdanning eller opplæring"] - EW["Oppfyller kravet på unntak for utdanning eller opplæring"] -->|"Alle"| ES["Godkjent unntak for utdanning eller opplæring?"] - BW["Krav til utdanning eller opplæring"] -->|"EnAv"| EW["Oppfyller kravet på unntak for utdanning eller opplæring"] - BW["Krav til utdanning eller opplæring"] -->|"EnAv"| EV["Har svart nei på spørsmål om utdanning eller opplæring"] - EX["Utestengt"] -->|"Oppslag"| B["Prøvingsdato"] - BX["Oppfyller krav til ikke utestengt"] -->|"IngenAv"| EX["Utestengt"] - EY["Avtjent verneplikt"] -->|"Ekstern"| AH["søknadId"] - CM["Har utført minst tre måneders militærtjeneste eller obligatorisk sivilforsvarstjeneste"] -->|"ErSann"| EY["Avtjent verneplikt"] - EZ["EttBeregnetVirkningstidspunkt"] -->|"FraOgMedForOpplysning"| BR["Krav på dagpenger"] + L["Inntekt"] -->|"Ekstern"| CL["Siste avsluttende kalendermåned"] + L["Inntekt"] -->|"Ekstern"| CK["Første måned av opptjeningsperiode"] + BI["Grunnbeløp"] -->|"Oppslag"| B["Prøvingsdato"] + BN["Arbeidsinntekt siste 12 mnd"] -->|"Ekstern"| L["Inntekt"] + CM["Antall G for krav til 12 mnd arbeidsinntekt"] -->|"Oppslag"| B["Prøvingsdato"] + CN["Inntektskrav for siste 12 mnd"] -->|"Multiplikasjon"| BI["Grunnbeløp"] + CN["Inntektskrav for siste 12 mnd"] -->|"Multiplikasjon"| CM["Antall G for krav til 12 mnd arbeidsinntekt"] + CO["Arbeidsinntekt er over kravet for siste 12 mnd"] -->|"StørreEnnEllerLik"| BN["Arbeidsinntekt siste 12 mnd"] + CO["Arbeidsinntekt er over kravet for siste 12 mnd"] -->|"StørreEnnEllerLik"| CN["Inntektskrav for siste 12 mnd"] + BL["Arbeidsinntekt siste 36 mnd"] -->|"Ekstern"| L["Inntekt"] + CP["Antall G for krav til 36 mnd arbeidsinntekt"] -->|"Oppslag"| B["Prøvingsdato"] + CQ["Inntektskrav for siste 36 mnd"] -->|"Multiplikasjon"| BI["Grunnbeløp"] + CQ["Inntektskrav for siste 36 mnd"] -->|"Multiplikasjon"| CP["Antall G for krav til 36 mnd arbeidsinntekt"] + CR["Arbeidsinntekt er over kravet for siste 36 mnd"] -->|"StørreEnnEllerLik"| BL["Arbeidsinntekt siste 36 mnd"] + CR["Arbeidsinntekt er over kravet for siste 36 mnd"] -->|"StørreEnnEllerLik"| CQ["Inntektskrav for siste 36 mnd"] + BX["Krav til minsteinntekt"] -->|"EnAv"| CO["Arbeidsinntekt er over kravet for siste 12 mnd"] + BX["Krav til minsteinntekt"] -->|"EnAv"| CR["Arbeidsinntekt er over kravet for siste 36 mnd"] + BX["Krav til minsteinntekt"] -->|"EnAv"| CS["Har utført minst tre måneders militærtjeneste eller obligatorisk sivilforsvarstjeneste"] + CT["Lovpålagt rapporteringsfrist for A-ordningen"] -->|"Oppslag"| B["Prøvingsdato"] + CU["Arbeidsgivers rapporteringsfrist"] -->|"FørsteArbeidsdag"| CT["Lovpålagt rapporteringsfrist for A-ordningen"] + CL["Siste avsluttende kalendermåned"] -->|"SisteavsluttendeKalenderMåned"| B["Prøvingsdato"] + CL["Siste avsluttende kalendermåned"] -->|"SisteavsluttendeKalenderMåned"| CU["Arbeidsgivers rapporteringsfrist"] + CV["Det er godkjent at bruker kun søk arbeid lokalt"] -->|"Oppslag"| B["Prøvingsdato"] + CW["Det er godkjent at bruker kun søker deltidsarbeid"] -->|"Oppslag"| B["Prøvingsdato"] + CX["Bruker oppfyller kravet til mobilitet"] -->|"EnAv"| CY["Kan jobbe i hele Norge"] + CX["Bruker oppfyller kravet til mobilitet"] -->|"EnAv"| CV["Det er godkjent at bruker kun søk arbeid lokalt"] + CZ["Bruker oppfyller kravet til å være arbeidssøker"] -->|"EnAv"| DA["Kan jobbe heltid og deltid"] + CZ["Bruker oppfyller kravet til å være arbeidssøker"] -->|"EnAv"| CW["Det er godkjent at bruker kun søker deltidsarbeid"] + BY["Krav til arbeidssøker"] -->|"Alle"| CZ["Bruker oppfyller kravet til å være arbeidssøker"] + BY["Krav til arbeidssøker"] -->|"Alle"| CX["Bruker oppfyller kravet til mobilitet"] + BY["Krav til arbeidssøker"] -->|"Alle"| DB["Kan ta alle typer arbeid"] + BY["Krav til arbeidssøker"] -->|"Alle"| DC["Villig til å bytte yrke"] + DD["Har rett til ordinære dagpenger uten arbeidsforhold"] -->|"IngenAv"| DE["Har rett til ordinære dagpenger gjennom arbeidsforhold"] + DD["Har rett til ordinære dagpenger uten arbeidsforhold"] -->|"IngenAv"| DF["Har rett til dagpenger under permittering"] + DD["Har rett til ordinære dagpenger uten arbeidsforhold"] -->|"IngenAv"| DG["Har rett til dagpenger etter konkurs"] + DD["Har rett til ordinære dagpenger uten arbeidsforhold"] -->|"IngenAv"| DH["Har rett til dagpenger under permittering i fiskeforedlingsindustri"] + DI["Har rett til ordinære dagpenger"] -->|"EnAv"| DE["Har rett til ordinære dagpenger gjennom arbeidsforhold"] + DI["Har rett til ordinære dagpenger"] -->|"EnAv"| DD["Har rett til ordinære dagpenger uten arbeidsforhold"] + CA["Rettighetstype"] -->|"EnAv"| DI["Har rett til ordinære dagpenger"] + CA["Rettighetstype"] -->|"EnAv"| DF["Har rett til dagpenger under permittering"] + CA["Rettighetstype"] -->|"EnAv"| DG["Har rett til dagpenger etter konkurs"] + CA["Rettighetstype"] -->|"EnAv"| DH["Har rett til dagpenger under permittering i fiskeforedlingsindustri"] + DJ["Sykepenger etter lovens kapittel 8"] -->|"Ekstern"| B["Prøvingsdato"] + DK["Pleiepenger etter lovens kapittel 9"] -->|"Ekstern"| B["Prøvingsdato"] + DL["Omsorgspenger etter lovens kapittel 9"] -->|"Ekstern"| B["Prøvingsdato"] + DM["Opplæringspenger etter lovens kapittel 9"] -->|"Ekstern"| B["Prøvingsdato"] + DN["Foreldrepenger etter lovens kapittel 14"] -->|"Ekstern"| B["Prøvingsdato"] + DO["Svangerskapspenger etter lovens kapittel 14"] -->|"Ekstern"| B["Prøvingsdato"] + DP["Uføretrygd etter lovens kapittel 12"] -->|"Oppslag"| B["Prøvingsdato"] + DQ["Sykepenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] + DR["Pleiepenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] + DS["Omsorgspenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] + DT["Opplæringspenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] + DU["Uføre dagsats"] -->|"Oppslag"| B["Prøvingsdato"] + DV["Svangerskapspenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] + DW["Foreldrepenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] + DX["Sum andre ytelser"] -->|"Addisjon"| DQ["Sykepenger dagsats"] + DX["Sum andre ytelser"] -->|"Addisjon"| DR["Pleiepenger dagsats"] + DX["Sum andre ytelser"] -->|"Addisjon"| DS["Omsorgspenger dagsats"] + DX["Sum andre ytelser"] -->|"Addisjon"| DT["Opplæringspenger dagsats"] + DX["Sum andre ytelser"] -->|"Addisjon"| DU["Uføre dagsats"] + DX["Sum andre ytelser"] -->|"Addisjon"| DW["Foreldrepenger dagsats"] + DX["Sum andre ytelser"] -->|"Addisjon"| DV["Svangerskapspenger dagsats"] + AX["Samordnet dagsats uten barnetillegg"] -->|"Substraksjon"| AV["Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget"] + AX["Samordnet dagsats uten barnetillegg"] -->|"Substraksjon"| DX["Sum andre ytelser"] + DY["Samordnet dagsats er negativ eller 0"] -->|"StørreEnnEllerLik"| AV["Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget"] + DY["Samordnet dagsats er negativ eller 0"] -->|"StørreEnnEllerLik"| DX["Sum andre ytelser"] + CG["Utfall etter samordning"] -->|"EnAv"| DY["Samordnet dagsats er negativ eller 0"] + CG["Utfall etter samordning"] -->|"EnAv"| BB["Har barnetillegg"] + DZ["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DJ["Sykepenger etter lovens kapittel 8"] + DZ["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DK["Pleiepenger etter lovens kapittel 9"] + DZ["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DL["Omsorgspenger etter lovens kapittel 9"] + DZ["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DM["Opplæringspenger etter lovens kapittel 9"] + DZ["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DP["Uføretrygd etter lovens kapittel 12"] + DZ["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DN["Foreldrepenger etter lovens kapittel 14"] + DZ["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| DO["Svangerskapspenger etter lovens kapittel 14"] + EA["Deltar medlemmet i streik eller er omfattet av lock-out?"] -->|"Oppslag"| B["Prøvingsdato"] + EB["Ledig ved samme bedrift eller arbeidsplass, og blir påvirket av utfallet?"] -->|"Oppslag"| B["Prøvingsdato"] + CD["Er medlemmet ikke påvirket av streik eller lock-out?"] -->|"IngenAv"| EA["Deltar medlemmet i streik eller er omfattet av lock-out?"] + CD["Er medlemmet ikke påvirket av streik eller lock-out?"] -->|"IngenAv"| EB["Ledig ved samme bedrift eller arbeidsplass, og blir påvirket av utfallet?"] + EC["Søknadsdato"] -->|"Ekstern"| AH["søknadId"] + ED["Ønsker dagpenger fra dato"] -->|"Ekstern"| AH["søknadId"] + EE["Søknadstidspunkt"] -->|"SisteAv"| EC["Søknadsdato"] + EE["Søknadstidspunkt"] -->|"SisteAv"| ED["Ønsker dagpenger fra dato"] + B["Prøvingsdato"] -->|"SisteAv"| EE["Søknadstidspunkt"] + EF["Har tapt arbeid"] -->|"Oppslag"| B["Prøvingsdato"] + EG["Krav på lønn fra tidligere arbeidsgiver"] -->|"Oppslag"| B["Prøvingsdato"] + EH["Ikke krav på lønn fra tidligere arbeidsgiver"] -->|"IngenAv"| EG["Krav på lønn fra tidligere arbeidsgiver"] + EI["Krav til tap av arbeidsinntekt"] -->|"Alle"| EF["Har tapt arbeid"] + EI["Krav til tap av arbeidsinntekt"] -->|"Alle"| EH["Ikke krav på lønn fra tidligere arbeidsgiver"] + EJ["Krav til prosentvis tap av arbeidstid"] -->|"Oppslag"| B["Prøvingsdato"] + EK["Beregningsregel: Arbeidstid siste 6 måneder"] -->|"Oppslag"| B["Prøvingsdato"] + EL["Beregningsregel: Arbeidstid siste 12 måneder"] -->|"Oppslag"| B["Prøvingsdato"] + EM["Beregeningsregel: Arbeidstid siste 36 måneder"] -->|"Oppslag"| B["Prøvingsdato"] + EN["Beregnet vanlig arbeidstid per uke før tap"] -->|"Oppslag"| B["Prøvingsdato"] + EO["Ny arbeidstid per uke"] -->|"Oppslag"| B["Prøvingsdato"] + EP["Maksimal vanlig arbeidstid"] -->|"Oppslag"| B["Prøvingsdato"] + EQ["Fastsatt arbeidstid per uke før tap"] -->|"MinstAv"| EN["Beregnet vanlig arbeidstid per uke før tap"] + EQ["Fastsatt arbeidstid per uke før tap"] -->|"MinstAv"| EP["Maksimal vanlig arbeidstid"] + ER["Tap av arbeidstid er minst terskel"] -->|"SjekkAvTerskel"| EO["Ny arbeidstid per uke"] + ER["Tap av arbeidstid er minst terskel"] -->|"SjekkAvTerskel"| EQ["Fastsatt arbeidstid per uke før tap"] + ER["Tap av arbeidstid er minst terskel"] -->|"SjekkAvTerskel"| EJ["Krav til prosentvis tap av arbeidstid"] + ES["Beregningsregel: Tapt arbeidstid"] -->|"EnAv"| EK["Beregningsregel: Arbeidstid siste 6 måneder"] + ES["Beregningsregel: Tapt arbeidstid"] -->|"EnAv"| EL["Beregningsregel: Arbeidstid siste 12 måneder"] + ES["Beregningsregel: Tapt arbeidstid"] -->|"EnAv"| EM["Beregeningsregel: Arbeidstid siste 36 måneder"] + CF["Krav til tap av arbeidsinntekt og arbeidstid"] -->|"Alle"| EI["Krav til tap av arbeidsinntekt"] + CF["Krav til tap av arbeidsinntekt og arbeidstid"] -->|"Alle"| ER["Tap av arbeidstid er minst terskel"] + CF["Krav til tap av arbeidsinntekt og arbeidstid"] -->|"Alle"| ES["Beregningsregel: Tapt arbeidstid"] + ET["Deltar i arbeidsmarkedstiltak"] -->|"Oppslag"| B["Prøvingsdato"] + EU["Deltar i opplæring for innvandrere"] -->|"Oppslag"| B["Prøvingsdato"] + EV["Deltar i grunnskoleopplæring, videregående opplæring og opplæring i grunnleggende ferdigheter"] -->|"Oppslag"| B["Prøvingsdato"] + EW["Deltar i høyere yrkesfaglig utdanning"] -->|"Oppslag"| B["Prøvingsdato"] + EX["Deltar i høyere utdanning"] -->|"Oppslag"| B["Prøvingsdato"] + EY["Deltar på kurs mv"] -->|"Oppslag"| B["Prøvingsdato"] + EZ["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| ET["Deltar i arbeidsmarkedstiltak"] + EZ["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| EU["Deltar i opplæring for innvandrere"] + EZ["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| EV["Deltar i grunnskoleopplæring, videregående opplæring og opplæring i grunnleggende ferdigheter"] + EZ["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| EW["Deltar i høyere yrkesfaglig utdanning"] + EZ["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| EX["Deltar i høyere utdanning"] + EZ["Godkjent unntak for utdanning eller opplæring?"] -->|"EnAv"| EY["Deltar på kurs mv"] + FA["Har svart ja på spørsmål om utdanning eller opplæring"] -->|"ErSann"| FB["Tar utdanning eller opplæring?"] + FC["Har svart nei på spørsmål om utdanning eller opplæring"] -->|"ErUsann"| FB["Tar utdanning eller opplæring?"] + FD["Oppfyller kravet på unntak for utdanning eller opplæring"] -->|"Alle"| FA["Har svart ja på spørsmål om utdanning eller opplæring"] + FD["Oppfyller kravet på unntak for utdanning eller opplæring"] -->|"Alle"| EZ["Godkjent unntak for utdanning eller opplæring?"] + CB["Krav til utdanning eller opplæring"] -->|"EnAv"| FD["Oppfyller kravet på unntak for utdanning eller opplæring"] + CB["Krav til utdanning eller opplæring"] -->|"EnAv"| FC["Har svart nei på spørsmål om utdanning eller opplæring"] + FE["Utestengt"] -->|"Oppslag"| B["Prøvingsdato"] + CC["Oppfyller krav til ikke utestengt"] -->|"IngenAv"| FE["Utestengt"] + FF["Avtjent verneplikt"] -->|"Ekstern"| AH["søknadId"] + CS["Har utført minst tre måneders militærtjeneste eller obligatorisk sivilforsvarstjeneste"] -->|"ErSann"| FF["Avtjent verneplikt"] + FG["EttBeregnetVirkningstidspunkt"] -->|"FraOgMedForOpplysning"| BW["Krav på dagpenger"] ``` \ No newline at end of file diff --git "a/docs/regler/\302\247 4-12. Dagpengenes st\303\270rrelse.approved.md" "b/docs/regler/\302\247 4-12. Dagpengenes st\303\270rrelse.approved.md" index fc880b66..39f60187 100644 --- "a/docs/regler/\302\247 4-12. Dagpengenes st\303\270rrelse.approved.md" +++ "b/docs/regler/\302\247 4-12. Dagpengenes st\303\270rrelse.approved.md" @@ -6,27 +6,35 @@ graph RL A["Barn"] -->|"Ekstern"| B["søknadId"] C["Antall barn som gir rett til barnetillegg"] -->|"AntallAv"| A["Barn"] - D["Barnetilleggets størrelse"] -->|"Oppslag"| E["Prøvingsdato"] - F["Dekningsgrad"] -->|"Oppslag"| E["Prøvingsdato"] - G["Dagsats uten barnetillegg"] -->|"Multiplikasjon"| H["Grunnlag"] - G["Dagsats uten barnetillegg"] -->|"Multiplikasjon"| F["Dekningsgrad"] - I["Barnetillegg i kroner"] -->|"Multiplikasjon"| D["Barnetilleggets størrelse"] - I["Barnetillegg i kroner"] -->|"Multiplikasjon"| C["Antall barn som gir rett til barnetillegg"] - J["Dagsats med barn"] -->|"Addisjon"| G["Dagsats uten barnetillegg"] - J["Dagsats med barn"] -->|"Addisjon"| I["Barnetillegg i kroner"] - K["Antall arbeidsdager per uke"] -->|"Oppslag"| E["Prøvingsdato"] + D["Faktor for utregning av dagsats etter dagpengegrunnlaget"] -->|"Oppslag"| E["Prøvingsdato"] + F["Dagsats uten barnetillegg før samordning"] -->|"Multiplikasjon"| G["Grunnlag"] + F["Dagsats uten barnetillegg før samordning"] -->|"Multiplikasjon"| D["Faktor for utregning av dagsats etter dagpengegrunnlaget"] + H["Avrundet dagsats uten barnetillegg før samordning"] -->|"Avrund"| F["Dagsats uten barnetillegg før samordning"] + I["Barnetilleggets størrelse i kroner per dag for hvert barn"] -->|"Oppslag"| E["Prøvingsdato"] + J["Sum av barnetillegg"] -->|"Multiplikasjon"| I["Barnetilleggets størrelse i kroner per dag for hvert barn"] + J["Sum av barnetillegg"] -->|"Multiplikasjon"| C["Antall barn som gir rett til barnetillegg"] + K["Dagsats med barnetillegg før samordning"] -->|"Addisjon"| F["Dagsats uten barnetillegg før samordning"] + K["Dagsats med barnetillegg før samordning"] -->|"Addisjon"| J["Sum av barnetillegg"] L["90% av grunnlag for dagpenger"] -->|"Oppslag"| E["Prøvingsdato"] M["Antall arbeidsdager per år"] -->|"Oppslag"| E["Prøvingsdato"] - N["Maks grunnlag for dagpenger"] -->|"Multiplikasjon"| H["Grunnlag"] - N["Maks grunnlag for dagpenger"] -->|"Multiplikasjon"| L["90% av grunnlag for dagpenger"] - O["Maks dagsats for dagpenger"] -->|"Divisjon"| N["Maks grunnlag for dagpenger"] - O["Maks dagsats for dagpenger"] -->|"Divisjon"| M["Antall arbeidsdager per år"] - P["Dagsats for dagpenger med barnetillegg"] -->|"MinstAv"| O["Maks dagsats for dagpenger"] - P["Dagsats for dagpenger med barnetillegg"] -->|"MinstAv"| J["Dagsats med barn"] - Q["Avrundet dagsats med barnetillegg"] -->|"Avrund"| P["Dagsats for dagpenger med barnetillegg"] - R["Avrundet dagsats uten barnetillegg"] -->|"Avrund"| G["Dagsats uten barnetillegg"] - S["Ukessats"] -->|"Multiplikasjon"| Q["Avrundet dagsats med barnetillegg"] - S["Ukessats"] -->|"Multiplikasjon"| K["Antall arbeidsdager per uke"] + N["Maksimalt mulig grunnlag avgrenset til 90% av dagpengegrunnlaget"] -->|"Multiplikasjon"| G["Grunnlag"] + N["Maksimalt mulig grunnlag avgrenset til 90% av dagpengegrunnlaget"] -->|"Multiplikasjon"| L["90% av grunnlag for dagpenger"] + O["Maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] -->|"Divisjon"| N["Maksimalt mulig grunnlag avgrenset til 90% av dagpengegrunnlaget"] + O["Maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] -->|"Divisjon"| M["Antall arbeidsdager per år"] + P["Avrundet maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] -->|"Avrund"| O["Maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] + Q["Andel av dagsats med barnetillegg som overstiger maks andel av dagpengegrunnlaget"] -->|"Substraksjon"| K["Dagsats med barnetillegg før samordning"] + Q["Andel av dagsats med barnetillegg som overstiger maks andel av dagpengegrunnlaget"] -->|"Substraksjon"| P["Avrundet maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] + R["Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget"] -->|"Substraksjon"| H["Avrundet dagsats uten barnetillegg før samordning"] + R["Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget"] -->|"Substraksjon"| Q["Andel av dagsats med barnetillegg som overstiger maks andel av dagpengegrunnlaget"] + S["Samordnet dagsats med barnetillegg"] -->|"Addisjon"| T["Samordnet dagsats uten barnetillegg"] + S["Samordnet dagsats med barnetillegg"] -->|"Addisjon"| J["Sum av barnetillegg"] + U["Dagsats med barnetillegg etter samordning og 90% regel"] -->|"MinstAv"| S["Samordnet dagsats med barnetillegg"] + U["Dagsats med barnetillegg etter samordning og 90% regel"] -->|"MinstAv"| P["Avrundet maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget"] + V["Antall arbeidsdager per uke"] -->|"Oppslag"| E["Prøvingsdato"] + W["Ukessats med barnetillegg etter samordning"] -->|"Multiplikasjon"| U["Dagsats med barnetillegg etter samordning og 90% regel"] + W["Ukessats med barnetillegg etter samordning"] -->|"Multiplikasjon"| V["Antall arbeidsdager per uke"] + X["Har barnetillegg"] -->|"StørreEnnEllerLik"| J["Sum av barnetillegg"] + X["Har barnetillegg"] -->|"StørreEnnEllerLik"| I["Barnetilleggets størrelse i kroner per dag for hvert barn"] ``` ## Akseptansetester @@ -49,9 +57,9 @@ Egenskap: § 4-12. Dagpengenes størrelse Så skal dagpengens størrelse være "663" Scenario: Dagpengegrunnlag og mange barn gjør at 90% regelen blir brukt - Gitt at dagpengegrunnlag er "70000" + Gitt at dagpengegrunnlag er "70001" Og at søker har 7 barn - Så skal dagpengens uavrundet størrelse uten barnetillegg være "168" + Så skal dagpengens uavrundet størrelse uten barnetillegg være "168.0024" Så skal dagpengens størrelse være "242" Så skal ukessats være "1210" -``` +``` \ No newline at end of file diff --git "a/docs/regler/\302\247 4-25.Samordning med reduserte ytelser fra folketrygden, eller redusert avtalefestet pensjon.approved.md" "b/docs/regler/\302\247 4-25.Samordning med reduserte ytelser fra folketrygden, eller redusert avtalefestet pensjon.approved.md" index 3ec8fa02..4e03bace 100644 --- "a/docs/regler/\302\247 4-25.Samordning med reduserte ytelser fra folketrygden, eller redusert avtalefestet pensjon.approved.md" +++ "b/docs/regler/\302\247 4-25.Samordning med reduserte ytelser fra folketrygden, eller redusert avtalefestet pensjon.approved.md" @@ -18,21 +18,26 @@ graph RL M["Uføre dagsats"] -->|"Oppslag"| B["Prøvingsdato"] N["Svangerskapspenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] O["Foreldrepenger dagsats"] -->|"Oppslag"| B["Prøvingsdato"] - P["Samordnet dagsats"] -->|"Substraksjon"| Q["Avrundet dagsats uten barnetillegg"] - P["Samordnet dagsats"] -->|"Substraksjon"| I["Sykepenger dagsats"] - P["Samordnet dagsats"] -->|"Substraksjon"| J["Pleiepenger dagsats"] - P["Samordnet dagsats"] -->|"Substraksjon"| K["Omsorgspenger dagsats"] - P["Samordnet dagsats"] -->|"Substraksjon"| L["Opplæringspenger dagsats"] - P["Samordnet dagsats"] -->|"Substraksjon"| M["Uføre dagsats"] - P["Samordnet dagsats"] -->|"Substraksjon"| O["Foreldrepenger dagsats"] - P["Samordnet dagsats"] -->|"Substraksjon"| N["Svangerskapspenger dagsats"] - R["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| A["Sykepenger etter lovens kapittel 8"] - R["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| C["Pleiepenger etter lovens kapittel 9"] - R["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| D["Omsorgspenger etter lovens kapittel 9"] - R["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| E["Opplæringspenger etter lovens kapittel 9"] - R["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| H["Uføretrygd etter lovens kapittel 12"] - R["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| F["Foreldrepenger etter lovens kapittel 14"] - R["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| G["Svangerskapspenger etter lovens kapittel 14"] + P["Sum andre ytelser"] -->|"Addisjon"| I["Sykepenger dagsats"] + P["Sum andre ytelser"] -->|"Addisjon"| J["Pleiepenger dagsats"] + P["Sum andre ytelser"] -->|"Addisjon"| K["Omsorgspenger dagsats"] + P["Sum andre ytelser"] -->|"Addisjon"| L["Opplæringspenger dagsats"] + P["Sum andre ytelser"] -->|"Addisjon"| M["Uføre dagsats"] + P["Sum andre ytelser"] -->|"Addisjon"| O["Foreldrepenger dagsats"] + P["Sum andre ytelser"] -->|"Addisjon"| N["Svangerskapspenger dagsats"] + Q["Samordnet dagsats uten barnetillegg"] -->|"Substraksjon"| R["Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget"] + Q["Samordnet dagsats uten barnetillegg"] -->|"Substraksjon"| P["Sum andre ytelser"] + S["Samordnet dagsats er negativ eller 0"] -->|"StørreEnnEllerLik"| R["Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget"] + S["Samordnet dagsats er negativ eller 0"] -->|"StørreEnnEllerLik"| P["Sum andre ytelser"] + T["Utfall etter samordning"] -->|"EnAv"| S["Samordnet dagsats er negativ eller 0"] + T["Utfall etter samordning"] -->|"EnAv"| U["Har barnetillegg"] + V["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| A["Sykepenger etter lovens kapittel 8"] + V["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| C["Pleiepenger etter lovens kapittel 9"] + V["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| D["Omsorgspenger etter lovens kapittel 9"] + V["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| E["Opplæringspenger etter lovens kapittel 9"] + V["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| H["Uføretrygd etter lovens kapittel 12"] + V["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| F["Foreldrepenger etter lovens kapittel 14"] + V["Medlem har reduserte ytelser fra folketrygden (Samordning)"] -->|"EnAv"| G["Svangerskapspenger etter lovens kapittel 14"] ``` ## Akseptansetester @@ -44,6 +49,7 @@ Egenskap: § 4-25.Samordning med reduserte ytelser fra folketrygden, eller redus Scenariomal: Søker oppfyller kravet til samordning Gitt at søker har søkt om dagpenger og har redusert ytelse + Og har barn Og søker har redusert sykepenger "" Og dagsats for sykepenger er "" Og søker har redusert pleiepenger "" @@ -53,9 +59,12 @@ Egenskap: § 4-25.Samordning med reduserte ytelser fra folketrygden, eller redus Og søker har redusert foreldrepenger "" Og søker har redusert svangerskapspenger "" Så skal søker få samordnet dagsats "" - Og gitt at bruker har "" i dagsats + Og gitt at bruker har "" i grunnlag Så skal at bruker ha "" i samordnet dagsats + Og utfall etter samordning skal være "" Eksempler: - | sykepenger | pleiepenger | omsorgspenger | opplæringspenger | uføre | foreldrepenger | svangerskapspenger | samordnet | sykepengerDagsats | dagsats | samordnetsats | - | Ja | Nei | Nei | Nei | Nei | Nei | Nei | Ja | 500 | 1000 | 500 | + | antall barn | sykepenger | pleiepenger | omsorgspenger | opplæringspenger | uføre | foreldrepenger | svangerskapspenger | samordnet | sykepengerDagsats | grunnlag | samordnetsats | utfall etter samordning | + | 0 | Ja | Nei | Nei | Nei | Nei | Nei | Nei | Ja | 500 | 416666 | 500 | Ja | + | 0 | Ja | Nei | Nei | Nei | Nei | Nei | Nei | Ja | 1100 | 416666 | 0 | Nei | + | 2 | Ja | Nei | Nei | Nei | Nei | Nei | Nei | Ja | 1100 | 416667 | 0 | Ja | ``` \ No newline at end of file diff --git "a/docs/regler/\302\247 4-9. Egenandel.approved.md" "b/docs/regler/\302\247 4-9. Egenandel.approved.md" index b6ae48b8..9e674a10 100644 --- "a/docs/regler/\302\247 4-9. Egenandel.approved.md" +++ "b/docs/regler/\302\247 4-9. Egenandel.approved.md" @@ -5,7 +5,7 @@ ```mermaid graph RL A["Antall dagsats for egenandel"] -->|"Oppslag"| B["Prøvingsdato"] - C["Egenandel"] -->|"Multiplikasjon"| D["Avrundet dagsats med barnetillegg"] + C["Egenandel"] -->|"Multiplikasjon"| D["Dagsats med barnetillegg etter samordning og 90% regel"] C["Egenandel"] -->|"Multiplikasjon"| A["Antall dagsats for egenandel"] ``` diff --git a/mediator/src/main/kotlin/no/nav/dagpenger/behandling/mediator/Vedtak.kt b/mediator/src/main/kotlin/no/nav/dagpenger/behandling/mediator/Vedtak.kt index 40c38859..65b71f54 100644 --- a/mediator/src/main/kotlin/no/nav/dagpenger/behandling/mediator/Vedtak.kt +++ b/mediator/src/main/kotlin/no/nav/dagpenger/behandling/mediator/Vedtak.kt @@ -31,7 +31,7 @@ import no.nav.dagpenger.regel.Utdanning import no.nav.dagpenger.regel.Utestengning import no.nav.dagpenger.regel.fastsetting.Dagpengegrunnlag import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.barn -import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.sats +import no.nav.dagpenger.regel.fastsetting.DagpengenesStørrelse.dagsatsEtterSamordningMedBarnetillegg import no.nav.dagpenger.regel.fastsetting.Dagpengeperiode import no.nav.dagpenger.regel.fastsetting.Egenandel import java.time.LocalDateTime @@ -87,7 +87,7 @@ fun lagVedtak( VedtakFastsattSatsDTO( dagsatsMedBarnetillegg = opplysninger - .finnOpplysning(sats) + .finnOpplysning(dagsatsEtterSamordningMedBarnetillegg) .verdi.verdien .toInt(), barn = diff --git a/mediator/src/test/kotlin/no/nav/dagpenger/behandling/PersonMediatorTest.kt b/mediator/src/test/kotlin/no/nav/dagpenger/behandling/PersonMediatorTest.kt index 97c821c3..f50794e0 100644 --- a/mediator/src/test/kotlin/no/nav/dagpenger/behandling/PersonMediatorTest.kt +++ b/mediator/src/test/kotlin/no/nav/dagpenger/behandling/PersonMediatorTest.kt @@ -246,7 +246,7 @@ internal class PersonMediatorTest { skruPåFeature(Feature.INNVILGELSE) løsBehandlingFramTilFerdig(testPerson) - antallOpplysninger() shouldBe 77 + antallOpplysninger() shouldBe 93 godkjennOpplysninger("tilKravPåDagpenger") /** diff --git "a/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.etterInntekt.approved.txt" "b/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.etterInntekt.approved.txt" index fddf2e69..6be62ea1 100644 --- "a/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.etterInntekt.approved.txt" +++ "b/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.etterInntekt.approved.txt" @@ -49,6 +49,20 @@ Krav til prosentvis tap av arbeidstid Beregningsregel: Arbeidstid siste 6 måneder Beregningsregel: Arbeidstid siste 12 måneder Beregeningsregel: Arbeidstid siste 36 måneder +Grunnbeløp for grunnlag +Faktor for maksimalt mulig grunnlag +Antall år i 36 måneder +Faktor for utregning av dagsats etter dagpengegrunnlaget +Barnetilleggets størrelse i kroner per dag for hvert barn +90% av grunnlag for dagpenger +Antall arbeidsdager per år +Sykepenger dagsats +Pleiepenger dagsats +Omsorgspenger dagsats +Opplæringspenger dagsats +Uføre dagsats +Foreldrepenger dagsats +Svangerskapspenger dagsats Godkjent unntak for utdanning eller opplæring? Oppfyller krav til ikke utestengt Er medlemmet ikke påvirket av streik eller lock-out? @@ -56,6 +70,8 @@ Oppfyller personen vilkåret om medlemskap? Ikke krav på lønn fra tidligere arbeidsgiver Fastsatt arbeidstid per uke før tap Beregningsregel: Tapt arbeidstid +6 ganger grunnbeløp +Sum andre ytelser Krav til tap av arbeidsinntekt Tap av arbeidstid er minst terskel Krav til tap av arbeidsinntekt og arbeidstid @@ -80,13 +96,6 @@ Har svart ja på spørsmål om utdanning eller opplæring Har svart nei på spørsmål om utdanning eller opplæring Oppfyller kravet på unntak for utdanning eller opplæring Krav til utdanning eller opplæring -Grunnbeløp for grunnlag -Faktor for maksimalt mulig grunnlag -Antall år i 36 måneder -90% av grunnlag for dagpenger -Antall arbeidsdager per år -Dekningsgrad -Barnetilleggets størrelse Antall dagsats for egenandel Antall arbeidsdager per uke Terskelfaktor for 12 måneder @@ -95,16 +104,7 @@ Kort dagpengeperiode Divisior Terskelfaktor for 36 måneder Antall dager som skal regnes med i hver uke -Sykepenger dagsats -Pleiepenger dagsats -Omsorgspenger dagsats -Opplæringspenger dagsats -Uføre dagsats -Foreldrepenger dagsats -Svangerskapspenger dagsats Uføretrygd etter lovens kapittel 12 -Krav på dagpenger -6 ganger grunnbeløp Terskel for 12 måneder Snittinntekt siste 36 måneder Terskel for 36 måneder @@ -116,7 +116,8 @@ Antall stønadsuker Antall gjenstående stønadsdager Barn Antall barn som gir rett til barnetillegg -Barnetillegg i kroner +Sum av barnetillegg +Har barnetillegg Inntekt for grunnlag Oppjustert inntekt Tellende inntekt @@ -136,16 +137,22 @@ Gjennomsnittlig arbeidsinntekt siste 36 måneder Uavrundet grunnlag Brukt beregningsregel Grunnlag -Maks grunnlag for dagpenger -Dagsats uten barnetillegg -Maks dagsats for dagpenger -Dagsats med barn -Avrundet dagsats uten barnetillegg -Dagsats for dagpenger med barnetillegg -Samordnet dagsats -Avrundet dagsats med barnetillegg +Dagsats uten barnetillegg før samordning +Maksimalt mulig grunnlag avgrenset til 90% av dagpengegrunnlaget +Avrundet dagsats uten barnetillegg før samordning +Dagsats med barnetillegg før samordning +Maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget +Avrundet maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget +Andel av dagsats med barnetillegg som overstiger maks andel av dagpengegrunnlaget +Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget +Samordnet dagsats uten barnetillegg +Samordnet dagsats er negativ eller 0 +Samordnet dagsats med barnetillegg +Utfall etter samordning +Dagsats med barnetillegg etter samordning og 90% regel +Krav på dagpenger Egenandel -Ukessats +Ukessats med barnetillegg etter samordning Sykepenger etter lovens kapittel 8 Omsorgspenger etter lovens kapittel 9 Svangerskapspenger etter lovens kapittel 14 diff --git "a/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.etterUtdanning.approved.txt" "b/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.etterUtdanning.approved.txt" index 78068244..7f4a71e8 100644 --- "a/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.etterUtdanning.approved.txt" +++ "b/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.etterUtdanning.approved.txt" @@ -49,6 +49,20 @@ Krav til prosentvis tap av arbeidstid Beregningsregel: Arbeidstid siste 6 måneder Beregningsregel: Arbeidstid siste 12 måneder Beregeningsregel: Arbeidstid siste 36 måneder +Grunnbeløp for grunnlag +Faktor for maksimalt mulig grunnlag +Antall år i 36 måneder +Faktor for utregning av dagsats etter dagpengegrunnlaget +Barnetilleggets størrelse i kroner per dag for hvert barn +90% av grunnlag for dagpenger +Antall arbeidsdager per år +Sykepenger dagsats +Pleiepenger dagsats +Omsorgspenger dagsats +Opplæringspenger dagsats +Uføre dagsats +Foreldrepenger dagsats +Svangerskapspenger dagsats Godkjent unntak for utdanning eller opplæring? Oppfyller krav til ikke utestengt Er medlemmet ikke påvirket av streik eller lock-out? @@ -56,6 +70,8 @@ Oppfyller personen vilkåret om medlemskap? Ikke krav på lønn fra tidligere arbeidsgiver Fastsatt arbeidstid per uke før tap Beregningsregel: Tapt arbeidstid +6 ganger grunnbeløp +Sum andre ytelser Krav til tap av arbeidsinntekt Tap av arbeidstid er minst terskel Krav til tap av arbeidsinntekt og arbeidstid @@ -80,13 +96,6 @@ Har svart ja på spørsmål om utdanning eller opplæring Har svart nei på spørsmål om utdanning eller opplæring Oppfyller kravet på unntak for utdanning eller opplæring Krav til utdanning eller opplæring -Grunnbeløp for grunnlag -Faktor for maksimalt mulig grunnlag -Antall år i 36 måneder -90% av grunnlag for dagpenger -Antall arbeidsdager per år -Dekningsgrad -Barnetilleggets størrelse Antall dagsats for egenandel Antall arbeidsdager per uke Terskelfaktor for 12 måneder @@ -95,16 +104,7 @@ Kort dagpengeperiode Divisior Terskelfaktor for 36 måneder Antall dager som skal regnes med i hver uke -Sykepenger dagsats -Pleiepenger dagsats -Omsorgspenger dagsats -Opplæringspenger dagsats -Uføre dagsats -Foreldrepenger dagsats -Svangerskapspenger dagsats Uføretrygd etter lovens kapittel 12 -Krav på dagpenger -6 ganger grunnbeløp Terskel for 12 måneder Snittinntekt siste 36 måneder Terskel for 36 måneder @@ -116,4 +116,5 @@ Antall stønadsuker Antall gjenstående stønadsdager Barn Antall barn som gir rett til barnetillegg -Barnetillegg i kroner +Sum av barnetillegg +Har barnetillegg \ No newline at end of file diff --git "a/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.tilKravP\303\245Dagpenger.approved.txt" "b/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.tilKravP\303\245Dagpenger.approved.txt" index 77efa7e2..cef6449b 100644 --- "a/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.tilKravP\303\245Dagpenger.approved.txt" +++ "b/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.S\303\270knad med nok inntekt skal innvilges.tilKravP\303\245Dagpenger.approved.txt" @@ -49,6 +49,20 @@ Krav til prosentvis tap av arbeidstid Beregningsregel: Arbeidstid siste 6 måneder Beregningsregel: Arbeidstid siste 12 måneder Beregeningsregel: Arbeidstid siste 36 måneder +Grunnbeløp for grunnlag +Faktor for maksimalt mulig grunnlag +Antall år i 36 måneder +Faktor for utregning av dagsats etter dagpengegrunnlaget +Barnetilleggets størrelse i kroner per dag for hvert barn +90% av grunnlag for dagpenger +Antall arbeidsdager per år +Sykepenger dagsats +Pleiepenger dagsats +Omsorgspenger dagsats +Opplæringspenger dagsats +Uføre dagsats +Foreldrepenger dagsats +Svangerskapspenger dagsats Godkjent unntak for utdanning eller opplæring? Oppfyller krav til ikke utestengt Er medlemmet ikke påvirket av streik eller lock-out? @@ -56,6 +70,8 @@ Oppfyller personen vilkåret om medlemskap? Ikke krav på lønn fra tidligere arbeidsgiver Fastsatt arbeidstid per uke før tap Beregningsregel: Tapt arbeidstid +6 ganger grunnbeløp +Sum andre ytelser Krav til tap av arbeidsinntekt Tap av arbeidstid er minst terskel Krav til tap av arbeidsinntekt og arbeidstid @@ -74,4 +90,4 @@ Har rett til dagpenger etter konkurs Har rett til dagpenger under permittering i fiskeforedlingsindustri Har rett til ordinære dagpenger uten arbeidsforhold Har rett til ordinære dagpenger -Rettighetstype +Rettighetstype \ No newline at end of file diff --git "a/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.endring av pr\303\270vingsdato.innvilgelse-igjen.approved.txt" "b/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.endring av pr\303\270vingsdato.innvilgelse-igjen.approved.txt" index 2ecbe8e2..51abb261 100644 --- "a/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.endring av pr\303\270vingsdato.innvilgelse-igjen.approved.txt" +++ "b/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.endring av pr\303\270vingsdato.innvilgelse-igjen.approved.txt" @@ -60,10 +60,17 @@ Beregeningsregel: Arbeidstid siste 36 måneder Grunnbeløp for grunnlag Faktor for maksimalt mulig grunnlag Antall år i 36 måneder +Faktor for utregning av dagsats etter dagpengegrunnlaget +Barnetilleggets størrelse i kroner per dag for hvert barn 90% av grunnlag for dagpenger Antall arbeidsdager per år -Dekningsgrad -Barnetilleggets størrelse +Sykepenger dagsats +Pleiepenger dagsats +Omsorgspenger dagsats +Opplæringspenger dagsats +Uføre dagsats +Foreldrepenger dagsats +Svangerskapspenger dagsats Antall dagsats for egenandel Antall arbeidsdager per uke Terskelfaktor for 12 måneder @@ -72,13 +79,6 @@ Kort dagpengeperiode Divisior Terskelfaktor for 36 måneder Antall dager som skal regnes med i hver uke -Sykepenger dagsats -Pleiepenger dagsats -Omsorgspenger dagsats -Opplæringspenger dagsats -Uføre dagsats -Foreldrepenger dagsats -Svangerskapspenger dagsats Uføretrygd etter lovens kapittel 12 Dato søker når maks alder Arbeidsgivers rapporteringsfrist @@ -96,10 +96,12 @@ Fastsatt arbeidstid per uke før tap Tap av arbeidstid er minst terskel Beregningsregel: Tapt arbeidstid 6 ganger grunnbeløp -Barnetillegg i kroner +Sum av barnetillegg +Sum andre ytelser Terskel for 12 måneder Terskel for 36 måneder Medlem har reduserte ytelser fra folketrygden (Samordning) +Har barnetillegg Siste mulige dag bruker kan oppfylle alderskrav Siste avsluttende kalendermåned Krav til arbeidssøker @@ -128,7 +130,6 @@ Inntektperiode 2 Inntektperiode 3 Stønadsuker ved siste 36 måneder Antall stønadsuker -Krav på dagpenger Har avkortet grunnlaget i periode 1 Har avkortet grunnlaget i periode 2 Har avkortet grunnlaget i periode 3 @@ -143,13 +144,19 @@ Gjennomsnittlig arbeidsinntekt siste 36 måneder Uavrundet grunnlag Brukt beregningsregel Grunnlag -Maks grunnlag for dagpenger -Dagsats uten barnetillegg -Maks dagsats for dagpenger -Dagsats med barn -Avrundet dagsats uten barnetillegg -Dagsats for dagpenger med barnetillegg -Samordnet dagsats -Avrundet dagsats med barnetillegg +Dagsats uten barnetillegg før samordning +Maksimalt mulig grunnlag avgrenset til 90% av dagpengegrunnlaget +Avrundet dagsats uten barnetillegg før samordning +Dagsats med barnetillegg før samordning +Maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget +Avrundet maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget +Andel av dagsats med barnetillegg som overstiger maks andel av dagpengegrunnlaget +Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget +Samordnet dagsats uten barnetillegg +Samordnet dagsats er negativ eller 0 +Samordnet dagsats med barnetillegg +Utfall etter samordning +Dagsats med barnetillegg etter samordning og 90% regel +Krav på dagpenger Egenandel -Ukessats \ No newline at end of file +Ukessats med barnetillegg etter samordning \ No newline at end of file diff --git "a/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.endring av pr\303\270vingsdato.innvilgelse.approved.txt" "b/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.endring av pr\303\270vingsdato.innvilgelse.approved.txt" index c03ae2a8..a9441ce5 100644 --- "a/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.endring av pr\303\270vingsdato.innvilgelse.approved.txt" +++ "b/mediator/src/test/resources/no/nav/dagpenger/behandling/PersonMediatorTest.endring av pr\303\270vingsdato.innvilgelse.approved.txt" @@ -49,6 +49,20 @@ Krav til prosentvis tap av arbeidstid Beregningsregel: Arbeidstid siste 6 måneder Beregningsregel: Arbeidstid siste 12 måneder Beregeningsregel: Arbeidstid siste 36 måneder +Grunnbeløp for grunnlag +Faktor for maksimalt mulig grunnlag +Antall år i 36 måneder +Faktor for utregning av dagsats etter dagpengegrunnlaget +Barnetilleggets størrelse i kroner per dag for hvert barn +90% av grunnlag for dagpenger +Antall arbeidsdager per år +Sykepenger dagsats +Pleiepenger dagsats +Omsorgspenger dagsats +Opplæringspenger dagsats +Uføre dagsats +Foreldrepenger dagsats +Svangerskapspenger dagsats Godkjent unntak for utdanning eller opplæring? Oppfyller krav til ikke utestengt Er medlemmet ikke påvirket av streik eller lock-out? @@ -56,6 +70,8 @@ Oppfyller personen vilkåret om medlemskap? Ikke krav på lønn fra tidligere arbeidsgiver Fastsatt arbeidstid per uke før tap Beregningsregel: Tapt arbeidstid +6 ganger grunnbeløp +Sum andre ytelser Krav til tap av arbeidsinntekt Tap av arbeidstid er minst terskel Krav til tap av arbeidsinntekt og arbeidstid @@ -80,13 +96,6 @@ Har svart ja på spørsmål om utdanning eller opplæring Har svart nei på spørsmål om utdanning eller opplæring Oppfyller kravet på unntak for utdanning eller opplæring Krav til utdanning eller opplæring -Grunnbeløp for grunnlag -Faktor for maksimalt mulig grunnlag -Antall år i 36 måneder -90% av grunnlag for dagpenger -Antall arbeidsdager per år -Dekningsgrad -Barnetilleggets størrelse Antall dagsats for egenandel Antall arbeidsdager per uke Terskelfaktor for 12 måneder @@ -95,16 +104,7 @@ Kort dagpengeperiode Divisior Terskelfaktor for 36 måneder Antall dager som skal regnes med i hver uke -Sykepenger dagsats -Pleiepenger dagsats -Omsorgspenger dagsats -Opplæringspenger dagsats -Uføre dagsats -Foreldrepenger dagsats -Svangerskapspenger dagsats Uføretrygd etter lovens kapittel 12 -Krav på dagpenger -6 ganger grunnbeløp Terskel for 12 måneder Snittinntekt siste 36 måneder Terskel for 36 måneder @@ -133,19 +133,26 @@ Gjennomsnittlig arbeidsinntekt siste 36 måneder Uavrundet grunnlag Brukt beregningsregel Grunnlag -Maks grunnlag for dagpenger -Dagsats uten barnetillegg -Maks dagsats for dagpenger -Avrundet dagsats uten barnetillegg -Samordnet dagsats +Dagsats uten barnetillegg før samordning +Maksimalt mulig grunnlag avgrenset til 90% av dagpengegrunnlaget +Avrundet dagsats uten barnetillegg før samordning +Maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget +Avrundet maksimal mulig dagsats avgrenset til 90% av dagpengegrunnlaget Barn Antall barn som gir rett til barnetillegg -Barnetillegg i kroner -Dagsats med barn -Dagsats for dagpenger med barnetillegg -Avrundet dagsats med barnetillegg +Sum av barnetillegg +Dagsats med barnetillegg før samordning +Har barnetillegg +Andel av dagsats med barnetillegg som overstiger maks andel av dagpengegrunnlaget +Andel av dagsats med barnetillegg avkortet til maks andel av dagpengegrunnlaget +Samordnet dagsats uten barnetillegg +Samordnet dagsats er negativ eller 0 +Samordnet dagsats med barnetillegg +Utfall etter samordning +Dagsats med barnetillegg etter samordning og 90% regel +Krav på dagpenger Egenandel -Ukessats +Ukessats med barnetillegg etter samordning Sykepenger etter lovens kapittel 8 Omsorgspenger etter lovens kapittel 9 Svangerskapspenger etter lovens kapittel 14 diff --git a/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/Regelverk.kt b/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/Regelverk.kt index 94610c85..2c3b1e30 100644 --- a/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/Regelverk.kt +++ b/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/Regelverk.kt @@ -17,14 +17,14 @@ class Regelverk( forDato: LocalDate = LocalDate.MIN, ): List = regelsettFor(opplysningstype).flatMap { it.regler(forDato) } - fun regelsettFor(opplysningstype: Opplysningstype<*>): List { + fun regelsettFor(opplysningstype: Opplysningstype<*>): Set { val nødvendigeRegelsett = mutableSetOf() traverseOpplysningstyper(opplysningstype) { regelsett -> nødvendigeRegelsett.add(regelsett) } - return nødvendigeRegelsett.toList() + return nødvendigeRegelsett.toSet() } fun regeltreFor(opplysningstype: Opplysningstype<*>): DAG { diff --git a/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/regel/Addisjon.kt b/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/regel/Addisjon.kt index d0a450f4..bdf556a1 100644 --- a/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/regel/Addisjon.kt +++ b/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/regel/Addisjon.kt @@ -6,16 +6,14 @@ import no.nav.dagpenger.opplysning.verdier.Beløp class Addisjon( produserer: Opplysningstype, - private val ledd1: Opplysningstype, - private val ledd2: Opplysningstype, -) : Regel(produserer, listOf(ledd1, ledd2)) { + private val ledd: List>, +) : Regel(produserer, ledd) { override fun kjør(opplysninger: LesbarOpplysninger): Beløp { - val verdi1 = opplysninger.finnOpplysning(ledd1).verdi - val verdi2 = opplysninger.finnOpplysning(ledd2).verdi - return verdi1 + verdi2 + val verdier = ledd.map { opplysninger.finnOpplysning(it).verdi } + return Beløp(verdier.sumOf { it.verdien }) } - override fun toString(): String = "Addisjon av $ledd1 og $ledd2" + override fun toString(): String = "Addisjon av ${ledd.joinToString("+") { it.toString() }}" } fun Opplysningstype.addisjon( @@ -23,6 +21,11 @@ fun Opplysningstype.addisjon( ledd2: Opplysningstype, ) = Addisjon( this, - ledd1, - ledd2, + listOf(ledd1, ledd2), ) + +fun Opplysningstype.addisjon(vararg ledd: Opplysningstype) = + Addisjon( + this, + ledd.toList(), + ) diff --git a/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/regel/Substraksjon.kt b/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/regel/Substraksjon.kt index 104c4aef..c0c9c90c 100644 --- a/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/regel/Substraksjon.kt +++ b/opplysninger/src/main/kotlin/no/nav/dagpenger/opplysning/regel/Substraksjon.kt @@ -31,3 +31,9 @@ fun Opplysningstype.substraksjon(vararg opplysningstype: Opplysningstype Substraksjon(this, *opplysningstype) { it.reduce { acc, t -> acc - t } } + +@JvmName("substraksjonBeløpTilNull") +fun Opplysningstype.substraksjonTilNull(vararg opplysningstype: Opplysningstype) = + Substraksjon(this, *opplysningstype) { + it.reduce { acc, t -> maxOf(Beløp(0.0), acc - t) } + }