diff --git a/pom.xml b/pom.xml index 8243f8def..ac9fa0286 100644 --- a/pom.xml +++ b/pom.xml @@ -16,8 +16,8 @@ 21 2.0.20 - 2024.10.02.070120 - 2024.10.02.074523 + 2024.10.04.095225 + 2024.10.03.143256 2.3.232 8.0 3.2.0 diff --git a/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragBBMConsumer.kt b/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragBBMConsumer.kt index 37fe6cf5a..a18945d17 100644 --- a/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragBBMConsumer.kt +++ b/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragBBMConsumer.kt @@ -1,7 +1,5 @@ package no.nav.bidrag.behandling.consumer -import no.nav.bidrag.behandling.config.CacheConfig.Companion.BBM_BEREGNING_CACHE -import no.nav.bidrag.commons.cache.BrukerCacheable import no.nav.bidrag.commons.web.client.AbstractRestClient import no.nav.bidrag.transport.behandling.beregning.felles.BidragBeregningRequestDto import no.nav.bidrag.transport.behandling.beregning.felles.BidragBeregningResponsDto @@ -22,12 +20,12 @@ class BidragBBMConsumer( private val bidragBBMUri get() = UriComponentsBuilder.fromUri(bidragBBMurl).pathSegment("api", "beregning") + // @BrukerCacheable(BBM_BEREGNING_CACHE) @Retryable( value = [Exception::class], maxAttempts = 3, backoff = Backoff(delay = 200, maxDelay = 1000, multiplier = 2.0), ) - @BrukerCacheable(BBM_BEREGNING_CACHE) fun hentBeregning(request: BidragBeregningRequestDto): BidragBeregningResponsDto = postForNonNullEntity( bidragBBMUri.build().toUri(), diff --git "a/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragSt\303\270nadConsumer.kt" "b/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragSt\303\270nadConsumer.kt" index 370c455d9..1d1f5058a 100644 --- "a/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragSt\303\270nadConsumer.kt" +++ "b/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragSt\303\270nadConsumer.kt" @@ -1,7 +1,5 @@ package no.nav.bidrag.behandling.consumer -import no.nav.bidrag.behandling.config.CacheConfig.Companion.STØNAD_LØPENDE_BIDRAG_CACHE -import no.nav.bidrag.commons.cache.BrukerCacheable import no.nav.bidrag.commons.web.client.AbstractRestClient import no.nav.bidrag.transport.behandling.stonad.request.LøpendeBidragssakerRequest import no.nav.bidrag.transport.behandling.stonad.response.LøpendeBidragssakerResponse @@ -22,12 +20,12 @@ class BidragStønadConsumer( private val bidragsStønadUri get() = UriComponentsBuilder.fromUri(bidragStønadUrl) + // @BrukerCacheable(STØNAD_LØPENDE_BIDRAG_CACHE) @Retryable( value = [Exception::class], maxAttempts = 3, backoff = Backoff(delay = 200, maxDelay = 1000, multiplier = 2.0), ) - @BrukerCacheable(STØNAD_LØPENDE_BIDRAG_CACHE) fun hentLøpendeBidrag(request: LøpendeBidragssakerRequest): LøpendeBidragssakerResponse = postForNonNullEntity( bidragsStønadUri.pathSegment("hent-lopende-bidragssaker-for-skyldner").build().toUri(), diff --git a/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragVedtakConsumer.kt b/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragVedtakConsumer.kt index ff455ee54..5e37ba99d 100644 --- a/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragVedtakConsumer.kt +++ b/src/main/kotlin/no/nav/bidrag/behandling/consumer/BidragVedtakConsumer.kt @@ -1,7 +1,5 @@ package no.nav.bidrag.behandling.consumer -import no.nav.bidrag.behandling.config.CacheConfig.Companion.VEDTAK_FOR_STØNAD_CACHE -import no.nav.bidrag.commons.cache.BrukerCacheable import no.nav.bidrag.commons.web.client.AbstractRestClient import no.nav.bidrag.transport.behandling.vedtak.request.HentVedtakForStønadRequest import no.nav.bidrag.transport.behandling.vedtak.request.OpprettVedtakRequestDto @@ -36,12 +34,12 @@ class BidragVedtakConsumer( bidragVedtakUri.pathSegment(vedtakId.toString()).build().toUri(), ) + // @BrukerCacheable(VEDTAK_FOR_STØNAD_CACHE) @Retryable( value = [Exception::class], maxAttempts = 3, backoff = Backoff(delay = 200, maxDelay = 1000, multiplier = 2.0), ) - @BrukerCacheable(VEDTAK_FOR_STØNAD_CACHE) fun hentVedtakForStønad(request: HentVedtakForStønadRequest): HentVedtakForStønadResponse = postForNonNullEntity( bidragVedtakUri.pathSegment("hent-vedtak").build().toUri(), diff --git "a/src/main/kotlin/no/nav/bidrag/behandling/dto/v1/beregning/ResultatS\303\246rbidragsberegning.kt" "b/src/main/kotlin/no/nav/bidrag/behandling/dto/v1/beregning/ResultatS\303\246rbidragsberegning.kt" index 3df686ddb..79a1a63ba 100644 --- "a/src/main/kotlin/no/nav/bidrag/behandling/dto/v1/beregning/ResultatS\303\246rbidragsberegning.kt" +++ "b/src/main/kotlin/no/nav/bidrag/behandling/dto/v1/beregning/ResultatS\303\246rbidragsberegning.kt" @@ -6,13 +6,13 @@ import no.nav.bidrag.behandling.dto.v2.behandling.UtgiftBeregningDto import no.nav.bidrag.behandling.dto.v2.behandling.UtgiftspostDto import no.nav.bidrag.domene.enums.beregning.Resultatkode import no.nav.bidrag.domene.tid.ÅrMånedsperiode -import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningBidragspliktigesAndelSærbidrag +import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningBidragspliktigesAndel import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningUtgift import java.math.BigDecimal data class ResultatSærbidragsberegningDto( val periode: ÅrMånedsperiode, - val bpsAndel: DelberegningBidragspliktigesAndelSærbidrag? = null, + val bpsAndel: DelberegningBidragspliktigesAndel? = null, val beregning: UtgiftBeregningDto? = null, val inntekter: ResultatSærbidragsberegningInntekterDto? = null, val utgiftsposter: List = emptyList(), diff --git a/src/main/kotlin/no/nav/bidrag/behandling/service/NotatOpplysningerService.kt b/src/main/kotlin/no/nav/bidrag/behandling/service/NotatOpplysningerService.kt index 2a6a81072..4c017aa1e 100644 --- a/src/main/kotlin/no/nav/bidrag/behandling/service/NotatOpplysningerService.kt +++ b/src/main/kotlin/no/nav/bidrag/behandling/service/NotatOpplysningerService.kt @@ -25,6 +25,7 @@ import no.nav.bidrag.behandling.transformers.behandling.hentBeregnetInntekterFor import no.nav.bidrag.behandling.transformers.behandling.notatTittel import no.nav.bidrag.behandling.transformers.behandling.tilReferanseId import no.nav.bidrag.behandling.transformers.ekskluderYtelserFørVirkningstidspunkt +import no.nav.bidrag.behandling.transformers.erHistorisk import no.nav.bidrag.behandling.transformers.inntekt.bestemOpprinneligTomVisningsverdi import no.nav.bidrag.behandling.transformers.nærmesteHeltall import no.nav.bidrag.behandling.transformers.sorterEtterDato @@ -469,6 +470,7 @@ private fun Inntekt.tilNotatInntektDto() = ?.let { gjelderBarn -> behandling?.roller?.find { it.ident == gjelderBarn } }?.tilNotatRolle(), + historisk = erHistorisk(behandling!!.inntekter), inntektsposter = inntektsposter .map { @@ -509,7 +511,7 @@ private fun Behandling.hentInntekterForIdent( }, årsinntekter = inntekter - .årsinntekterSortert(!filtrerBareOffentlige) + .årsinntekterSortert(!filtrerBareOffentlige, true) .inntekterForIdent(ident) .ekskluderYtelserFørVirkningstidspunkt() .filtrerKilde(filtrerBareOffentlige) diff --git a/src/main/kotlin/no/nav/bidrag/behandling/transformers/BeregningDtoMapping.kt b/src/main/kotlin/no/nav/bidrag/behandling/transformers/BeregningDtoMapping.kt index 82102f45b..b2ffa6e3f 100644 --- a/src/main/kotlin/no/nav/bidrag/behandling/transformers/BeregningDtoMapping.kt +++ b/src/main/kotlin/no/nav/bidrag/behandling/transformers/BeregningDtoMapping.kt @@ -28,7 +28,7 @@ import no.nav.bidrag.transport.behandling.beregning.særbidrag.BeregnetSærbidra import no.nav.bidrag.transport.behandling.felles.grunnlag.BostatusPeriode import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningBarnIHusstand import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningBidragsevne -import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningBidragspliktigesAndelSærbidrag +import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningBidragspliktigesAndel import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningSumInntekt import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningUtgift import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningVoksneIHustand @@ -173,16 +173,16 @@ fun List.finnAntallBarnIHusstanden(grunnlagsreferanseListe: List.finnDelberegningBidragspliktigesAndel( grunnlagsreferanseListe: List, -): DelberegningBidragspliktigesAndelSærbidrag? { +): DelberegningBidragspliktigesAndel? { val sluttberegning = finnSluttberegningIReferanser(grunnlagsreferanseListe) ?: return null val delberegningBidragspliktigesAndel = find { - it.type == Grunnlagstype.DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_SÆRBIDRAG && + it.type == Grunnlagstype.DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL && sluttberegning.grunnlagsreferanseListe.contains( it.referanse, ) } ?: return null - return delberegningBidragspliktigesAndel.innholdTilObjekt() + return delberegningBidragspliktigesAndel.innholdTilObjekt() } fun List.finnEnesteVoksenIHusstandenErEgetBarn(grunnlagsreferanseListe: List): Boolean? { @@ -215,7 +215,7 @@ fun List.finnDelberegningUtgift(grunnlagsreferanseListe: List.hentEndringerInntekter( inntekter: Set, type: Grunnlagsdatatype, ): Set { - val inntekterRolle = inntekter.filter { it.ident == rolle.ident }.filtrerUtHistoriskeInntekter() + val inntekterRolle = inntekter.filter { it.ident == rolle.ident } - val oppdatertGrunnlag = henteBearbeidaInntekterForType(type, rolle.ident!!)?.filtrerUtHistoriskeInntekter() + val oppdatertGrunnlag = henteBearbeidaInntekterForType(type, rolle.ident!!) val innhentetTidspunkt = find { it.type == type && it.erBearbeidet }?.innhentet ?: LocalDateTime.now() val oppdaterteEllerNyeInntekter = oppdatertGrunnlag diff --git a/src/main/kotlin/no/nav/bidrag/behandling/transformers/grunnlag/Grunnlagsmapping.kt b/src/main/kotlin/no/nav/bidrag/behandling/transformers/grunnlag/Grunnlagsmapping.kt index c975a87a3..722fba565 100644 --- a/src/main/kotlin/no/nav/bidrag/behandling/transformers/grunnlag/Grunnlagsmapping.kt +++ b/src/main/kotlin/no/nav/bidrag/behandling/transformers/grunnlag/Grunnlagsmapping.kt @@ -17,6 +17,8 @@ val summertAinntektstyper = Inntektsrapportering.AINNTEKT, Inntektsrapportering.AINNTEKT_BEREGNET_3MND, Inntektsrapportering.AINNTEKT_BEREGNET_12MND, + Inntektsrapportering.AINNTEKT_BEREGNET_12MND_FRA_OPPRINNELIG_VEDTAKSTIDSPUNKT, + Inntektsrapportering.AINNTEKT_BEREGNET_3MND_FRA_OPPRINNELIG_VEDTAKSTIDSPUNKT, ) val summertYtelsetyper = diff --git a/src/main/kotlin/no/nav/bidrag/behandling/transformers/grunnlag/InnhentetGrunnlagMapping.kt b/src/main/kotlin/no/nav/bidrag/behandling/transformers/grunnlag/InnhentetGrunnlagMapping.kt index df3cc15ce..c74860603 100644 --- a/src/main/kotlin/no/nav/bidrag/behandling/transformers/grunnlag/InnhentetGrunnlagMapping.kt +++ b/src/main/kotlin/no/nav/bidrag/behandling/transformers/grunnlag/InnhentetGrunnlagMapping.kt @@ -20,6 +20,9 @@ import no.nav.bidrag.domene.util.trimToNull import no.nav.bidrag.transport.behandling.felles.grunnlag.BeregnetInntekt import no.nav.bidrag.transport.behandling.felles.grunnlag.GrunnlagDto import no.nav.bidrag.transport.behandling.felles.grunnlag.Grunnlagsreferanse +import no.nav.bidrag.transport.behandling.felles.grunnlag.InnhentetHusstandsmedlem +import no.nav.bidrag.transport.behandling.felles.grunnlag.hentPersonMedReferanse +import no.nav.bidrag.transport.behandling.felles.grunnlag.innholdTilObjekt import no.nav.bidrag.transport.behandling.felles.grunnlag.opprettAinntektGrunnlagsreferanse import no.nav.bidrag.transport.behandling.felles.grunnlag.opprettBarnetilleggGrunnlagsreferanse import no.nav.bidrag.transport.behandling.felles.grunnlag.opprettInnhentetHusstandsmedlemGrunnlagsreferanse @@ -27,6 +30,7 @@ import no.nav.bidrag.transport.behandling.felles.grunnlag.opprettKontantstøtteG import no.nav.bidrag.transport.behandling.felles.grunnlag.opprettSkattegrunnlagGrunnlagsreferanse import no.nav.bidrag.transport.behandling.felles.grunnlag.opprettSmåbarnstilleggGrunnlagsreferanse import no.nav.bidrag.transport.behandling.felles.grunnlag.opprettUtvidetbarnetrygGrunnlagsreferanse +import no.nav.bidrag.transport.behandling.felles.grunnlag.personIdent import no.nav.bidrag.transport.behandling.grunnlag.response.ArbeidsforholdGrunnlagDto import no.nav.bidrag.transport.behandling.grunnlag.response.BarnetilleggGrunnlagDto import no.nav.bidrag.transport.behandling.grunnlag.response.BarnetilsynGrunnlagDto @@ -37,6 +41,7 @@ import no.nav.bidrag.transport.behandling.grunnlag.response.SmåbarnstilleggGrun import no.nav.bidrag.transport.behandling.grunnlag.response.UtvidetBarnetrygdGrunnlagDto import no.nav.bidrag.transport.behandling.inntekt.response.SummertMånedsinntekt import no.nav.bidrag.transport.behandling.inntekt.response.SummertÅrsinntekt +import java.time.LocalDateTime fun List.tilInnhentetArbeidsforhold(personobjekter: Set): Set = filter { it.type == Grunnlagsdatatype.ARBEIDSFORHOLD } @@ -123,7 +128,37 @@ fun List.tilInnhentetHusstandsmedlemmer(personobjekter: Set.opprettInnhentetHusstandsmedlemGrunnlagForSøknadsbarnHvisMangler( + innhentetHusstandsmedlemGrunnlagListe: Set, + personobjekter: Set, +): List { + val behandling = firstOrNull()?.behandling ?: return emptyList() + val søknadsbarnSomManglerInnhentetGrunnlag = + behandling.søknadsbarn.filter { sb -> + innhentetHusstandsmedlemGrunnlagListe.none { + val barnReferanse = it.innholdTilObjekt().grunnlag.gjelderPerson + personobjekter.hentPersonMedReferanse(barnReferanse)?.personIdent == sb.ident + } + } + return søknadsbarnSomManglerInnhentetGrunnlag.map { + RelatertPersonGrunnlagDto( + fødselsdato = it.fødselsdato, + gjelderPersonId = it.ident, + partPersonId = behandling.rolleGrunnlagSkalHentesFor!!.ident, + navn = it.navn, + relasjon = Familierelasjon.BARN, + borISammeHusstandDtoListe = emptyList(), + ).tilGrunnlagsobjekt( + LocalDateTime.now(), + personobjekter.hentPersonNyesteIdent(behandling.rolleGrunnlagSkalHentesFor!!.ident)!!.referanse, + personobjekter.hentPersonNyesteIdent(it.ident)!!.referanse, + ) + } } fun List.tilBeregnetInntekt(personobjekter: Set): Set = diff --git a/src/main/kotlin/no/nav/bidrag/behandling/transformers/utgift/Utgiftsmapping.kt b/src/main/kotlin/no/nav/bidrag/behandling/transformers/utgift/Utgiftsmapping.kt index cf8be60d8..aa04e99af 100644 --- a/src/main/kotlin/no/nav/bidrag/behandling/transformers/utgift/Utgiftsmapping.kt +++ b/src/main/kotlin/no/nav/bidrag/behandling/transformers/utgift/Utgiftsmapping.kt @@ -24,7 +24,6 @@ import no.nav.bidrag.behandling.transformers.erSærbidrag import no.nav.bidrag.behandling.transformers.sorter import no.nav.bidrag.behandling.transformers.sorterBeregnetUtgifter import no.nav.bidrag.behandling.transformers.validerUtgiftspost -import no.nav.bidrag.behandling.transformers.vedtak.ifTrue import no.nav.bidrag.domene.enums.særbidrag.Særbidragskategori import no.nav.bidrag.domene.enums.særbidrag.Utgiftstype import org.springframework.http.HttpStatus @@ -33,16 +32,12 @@ import java.math.BigDecimal import no.nav.bidrag.transport.behandling.felles.grunnlag.NotatGrunnlag.NotatType as Notattype val kategorierSomKreverType = listOf(Særbidragskategori.ANNET, Særbidragskategori.KONFIRMASJON) -val Behandling.kanInneholdeUtgiftBetaltAvBp get() = særbidragKategori == Særbidragskategori.KONFIRMASJON val Utgift.totalGodkjentBeløpBp - get() = - behandling.kanInneholdeUtgiftBetaltAvBp.ifTrue { - utgiftsposter.filter { it.betaltAvBp }.sumOf { it.godkjentBeløp } - } + get() = utgiftsposter.filter { it.betaltAvBp }.sumOf { it.godkjentBeløp } val Utgift.totalGodkjentBeløp get() = utgiftsposter.sumOf { it.godkjentBeløp } val Utgift.totalKravbeløp get() = utgiftsposter.sumOf { it.kravbeløp } val Utgift.totalBeløpBetaltAvBp - get() = utgiftsposter.filter { it.betaltAvBp }.sumOf { it.godkjentBeløp } + beløpDirekteBetaltAvBp + get() = totalGodkjentBeløpBp + beløpDirekteBetaltAvBp fun Behandling.tilSærbidragKategoriDto() = SærbidragKategoriDto( diff --git a/src/main/kotlin/no/nav/bidrag/behandling/transformers/vedtak/VedtakTilBehandlingMapping.kt b/src/main/kotlin/no/nav/bidrag/behandling/transformers/vedtak/VedtakTilBehandlingMapping.kt index 3f5032e61..aeceb0c81 100644 --- a/src/main/kotlin/no/nav/bidrag/behandling/transformers/vedtak/VedtakTilBehandlingMapping.kt +++ b/src/main/kotlin/no/nav/bidrag/behandling/transformers/vedtak/VedtakTilBehandlingMapping.kt @@ -322,28 +322,33 @@ private fun List.mapInntekter( val erForskuddOmgjøring = behandling.soknadFra == SøktAvType.NAV_BIDRAG && behandling.vedtakstype == Vedtakstype.ENDRING if (!lesemodus && !erForskuddOmgjøring) { - inntekter.find { it.type == Inntektsrapportering.AINNTEKT_BEREGNET_12MND }?.let { originalInntekt -> - originalInntekt - .copy( - type = Inntektsrapportering.AINNTEKT_BEREGNET_12MND_FRA_OPPRINNELIG_VEDTAKSTIDSPUNKT, - ).run { - inntekter.add(this) - originalInntekt.taMed = false - originalInntekt.datoFom = null - originalInntekt.datoTom = null - } - } - - inntekter.find { it.type == Inntektsrapportering.AINNTEKT_BEREGNET_3MND }?.let { originalInntekt -> - originalInntekt - .copy( - type = Inntektsrapportering.AINNTEKT_BEREGNET_3MND_FRA_OPPRINNELIG_VEDTAKSTIDSPUNKT, - ).run { - inntekter.add(this) - originalInntekt.taMed = false - originalInntekt.datoFom = null - originalInntekt.datoTom = null + inntekter.groupBy { it.ident }.forEach { (_, inntekterRolle) -> + inntekterRolle + .find { + it.type == + Inntektsrapportering.AINNTEKT_BEREGNET_12MND + }?.let { originalInntekt -> + originalInntekt + .copy( + type = Inntektsrapportering.AINNTEKT_BEREGNET_12MND_FRA_OPPRINNELIG_VEDTAKSTIDSPUNKT, + ).run { + inntekter.add(this) + originalInntekt.taMed = false + originalInntekt.datoFom = null + originalInntekt.datoTom = null + } } + inntekterRolle.find { it.type == Inntektsrapportering.AINNTEKT_BEREGNET_3MND }?.let { originalInntekt -> + originalInntekt + .copy( + type = Inntektsrapportering.AINNTEKT_BEREGNET_3MND_FRA_OPPRINNELIG_VEDTAKSTIDSPUNKT, + ).run { + inntekter.add(this) + originalInntekt.taMed = false + originalInntekt.datoFom = null + originalInntekt.datoTom = null + } + } } } val inntekterBeregnet = diff --git a/src/test/kotlin/no/nav/bidrag/behandling/controller/BehandlingBeregnControllerTest.kt b/src/test/kotlin/no/nav/bidrag/behandling/controller/BehandlingBeregnControllerTest.kt index ac55be4b0..d038a0b22 100644 --- a/src/test/kotlin/no/nav/bidrag/behandling/controller/BehandlingBeregnControllerTest.kt +++ b/src/test/kotlin/no/nav/bidrag/behandling/controller/BehandlingBeregnControllerTest.kt @@ -162,7 +162,7 @@ class BehandlingBeregnControllerTest : KontrollerTestRunner() { it.delberegningUtgift!!.sumGodkjent shouldBe BigDecimal(2500) it.beregning!!.totalKravbeløp shouldBe BigDecimal(3000) it.bpsAndel!!.andelBeløp shouldBe BigDecimal(2083) - it.bpsAndel.andelFaktor.round(MathContext(3)) shouldBe BigDecimal(0.8333).round(MathContext(3)) + it.bpsAndel.endeligAndelFaktor.round(MathContext(3)) shouldBe BigDecimal(0.8333).round(MathContext(3)) } } diff --git a/src/test/kotlin/no/nav/bidrag/behandling/service/GrunnlagServiceTest.kt b/src/test/kotlin/no/nav/bidrag/behandling/service/GrunnlagServiceTest.kt index f28450aad..2cf6b3e3c 100644 --- a/src/test/kotlin/no/nav/bidrag/behandling/service/GrunnlagServiceTest.kt +++ b/src/test/kotlin/no/nav/bidrag/behandling/service/GrunnlagServiceTest.kt @@ -3524,7 +3524,7 @@ class GrunnlagServiceTest : TestContainerRunner() { feilrapporteringListe = oppretteFeilrapporteringer(behandling.bidragsmottaker!!.ident!!), ) - innhentingMedFeil.feilrapporteringListe shouldHaveSize 9 + innhentingMedFeil.feilrapporteringListe shouldHaveSize 10 Mockito.`when`(bidragGrunnlagConsumerMock.henteGrunnlag(Mockito.anyList())).thenReturn(innhentingMedFeil) // hvis @@ -3557,7 +3557,7 @@ class GrunnlagServiceTest : TestContainerRunner() { feilrapporteringListe = oppretteFeilrapporteringer(behandling.bidragsmottaker!!.ident!!), ) - innhentingMedFeil.feilrapporteringListe shouldHaveSize 9 + innhentingMedFeil.feilrapporteringListe shouldHaveSize 10 Mockito.`when`(bidragGrunnlagConsumerMock.henteGrunnlag(Mockito.anyList())).thenReturn(innhentingMedFeil) // hvis @@ -3618,7 +3618,7 @@ class GrunnlagServiceTest : TestContainerRunner() { feilrapporteringListe = oppretteFeilrapporteringer(behandling.bidragsmottaker!!.ident!!), ) - innhentingMedFeil.feilrapporteringListe shouldHaveSize 9 + innhentingMedFeil.feilrapporteringListe shouldHaveSize 10 Mockito.`when`(bidragGrunnlagConsumerMock.henteGrunnlag(Mockito.anyList())).thenReturn(innhentingMedFeil) behandling.grunnlagsinnhentingFeilet shouldBe null @@ -3676,7 +3676,7 @@ class GrunnlagServiceTest : TestContainerRunner() { ), ) - innhentingMedFeil.feilrapporteringListe shouldHaveSize 9 + innhentingMedFeil.feilrapporteringListe shouldHaveSize 10 Mockito.`when`(bidragGrunnlagConsumerMock.henteGrunnlag(Mockito.anyList())).thenReturn(innhentingMedFeil) behandling.grunnlagsinnhentingFeilet shouldBe null @@ -3732,7 +3732,7 @@ class GrunnlagServiceTest : TestContainerRunner() { feilrapporteringListe = oppretteFeilrapporteringer(behandling.bidragsmottaker!!.ident!!), ) - innhentingMedFeil.feilrapporteringListe shouldHaveSize 9 + innhentingMedFeil.feilrapporteringListe shouldHaveSize 10 Mockito.`when`(bidragGrunnlagConsumerMock.henteGrunnlag(Mockito.anyList())).thenReturn(innhentingMedFeil) behandling.grunnlagsinnhentingFeilet shouldBe null @@ -3790,7 +3790,7 @@ class GrunnlagServiceTest : TestContainerRunner() { ), ) - innhentingMedFeil.feilrapporteringListe shouldHaveSize 9 + innhentingMedFeil.feilrapporteringListe shouldHaveSize 10 Mockito.`when`(bidragGrunnlagConsumerMock.henteGrunnlag(Mockito.anyList())).thenReturn(innhentingMedFeil) behandling.grunnlagsinnhentingFeilet shouldBe null @@ -3847,7 +3847,7 @@ class GrunnlagServiceTest : TestContainerRunner() { feilrapporteringListe = oppretteFeilrapporteringer(behandling.bidragsmottaker!!.ident!!), ) - innhentingMedFeil.feilrapporteringListe shouldHaveSize 9 + innhentingMedFeil.feilrapporteringListe shouldHaveSize 10 Mockito.`when`(bidragGrunnlagConsumerMock.henteGrunnlag(Mockito.anyList())).thenReturn(innhentingMedFeil) behandling.grunnlagsinnhentingFeilet = @@ -3910,7 +3910,7 @@ class GrunnlagServiceTest : TestContainerRunner() { ), ) - innhentingMedFeil.feilrapporteringListe shouldHaveSize 9 + innhentingMedFeil.feilrapporteringListe shouldHaveSize 10 Mockito.`when`(bidragGrunnlagConsumerMock.henteGrunnlag(Mockito.anyList())).thenReturn(innhentingMedFeil) behandling.grunnlagsinnhentingFeilet = @@ -3973,7 +3973,7 @@ class GrunnlagServiceTest : TestContainerRunner() { ), ) - innhentingMedFeil.feilrapporteringListe shouldHaveSize 9 + innhentingMedFeil.feilrapporteringListe shouldHaveSize 10 Mockito.`when`(bidragGrunnlagConsumerMock.henteGrunnlag(Mockito.anyList())).thenReturn(innhentingMedFeil) // hvis @@ -4024,6 +4024,7 @@ class GrunnlagServiceTest : TestContainerRunner() { skattegrunnlagListe = skattegrunnlag, småbarnstilleggListe = småbarnstillegg, utvidetBarnetrygdListe = utvidetBarnetrygd, + tilleggsstønadBarnetilsynListe = emptyList(), ) fun tilAinntektspostDto( @@ -4132,6 +4133,7 @@ fun opprettHentGrunnlagDto() = husstandsmedlemmerOgEgneBarnListe = emptyList(), feilrapporteringListe = emptyList(), hentetTidspunkt = LocalDateTime.now(), + tilleggsstønadBarnetilsynListe = emptyList(), ) fun oppretteFeilrapporteringer( diff --git "a/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakTilBehandlingS\303\246rbidragTest.kt" "b/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakTilBehandlingS\303\246rbidragTest.kt" index efa87a343..4b97824fd 100644 --- "a/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakTilBehandlingS\303\246rbidragTest.kt" +++ "b/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakTilBehandlingS\303\246rbidragTest.kt" @@ -515,7 +515,7 @@ class VedtakTilBehandlingSærbidragTest { resultat shouldNotBe null assertSoftly(resultat!!) { - bpsAndel!!.andelFaktor shouldBe BigDecimal(0.6444, MathContext(4)) + bpsAndel!!.endeligAndelFaktor shouldBe BigDecimal(0.6444, MathContext(4)) bpsAndel.andelBeløp shouldBe BigDecimal(5796) utgiftsposter.shouldHaveSize(3) resultatKode shouldBe Resultatkode.SÆRBIDRAG_INNVILGET diff --git a/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakserviceForskuddTest.kt b/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakserviceForskuddTest.kt index 84c6f3e89..24b2e9b89 100644 --- a/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakserviceForskuddTest.kt +++ b/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakserviceForskuddTest.kt @@ -361,7 +361,7 @@ class VedtakserviceForskuddTest { mottaker.verdi shouldBe nyIdentBm } opprettVedtakRequest.engangsbeløpListe.shouldBeEmpty() - opprettVedtakRequest.grunnlagListe.shouldHaveSize(76) + opprettVedtakRequest.grunnlagListe.shouldHaveSize(78) opprettVedtakRequest.grunnlagListe.hentAllePersoner() shouldHaveSize 7 opprettVedtakRequest.grunnlagListe.søknadsbarn diff --git "a/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakserviceS\303\246rbidragTest.kt" "b/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakserviceS\303\246rbidragTest.kt" index f63bdd684..4d03a37fe 100644 --- "a/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakserviceS\303\246rbidragTest.kt" +++ "b/src/test/kotlin/no/nav/bidrag/behandling/service/VedtakserviceS\303\246rbidragTest.kt" @@ -51,7 +51,7 @@ import no.nav.bidrag.domene.tid.ÅrMånedsperiode import no.nav.bidrag.transport.behandling.felles.grunnlag.BeregnetInntekt import no.nav.bidrag.transport.behandling.felles.grunnlag.BostatusPeriode import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningBidragsevne -import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningBidragspliktigesAndelSærbidrag +import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningBidragspliktigesAndel import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningSumLøpendeBidrag import no.nav.bidrag.transport.behandling.felles.grunnlag.DelberegningUtgift import no.nav.bidrag.transport.behandling.felles.grunnlag.InntektsrapporteringPeriode @@ -329,6 +329,121 @@ class VedtakserviceSærbidragTest : VedtakserviceTest() { verify(exactly = 1) { notatOpplysningerService.opprettNotat(any()) } } + @Test + @Transactional + fun `Skal fatte vedtak og opprette grunnlagsstruktur for en særbidrag behandling hvor betalt av BP og direkte betalt av BP er satt`() { + stubPersonConsumer() + val behandling = opprettGyldigBehandlingForBeregningOgVedtak(false, typeBehandling = TypeBehandling.SÆRBIDRAG) + behandling.leggTilNotat( + "Notat inntekt BM", + NotatGrunnlag.NotatType.INNTEKT, + behandling.bidragsmottaker!!, + ) + behandling.leggTilNotat( + "Notat inntekt BP", + NotatGrunnlag.NotatType.INNTEKT, + behandling.bidragspliktig!!, + ) + behandling.leggTilNotat( + "Notat inntekt BA", + NotatGrunnlag.NotatType.INNTEKT, + behandling.søknadsbarn.first()!!, + ) + behandling.leggTilNotat( + "Utgiftsbegrunnelse", + NotatGrunnlag.NotatType.UTGIFTER, + ) + behandling.leggTilNotat( + "Boforhold", + NotatGrunnlag.NotatType.BOFORHOLD, + ) + behandling.refVedtaksid = 553 + behandling.klageMottattdato = LocalDate.now() + behandling.inntekter = mutableSetOf() + behandling.grunnlag = mutableSetOf() + behandling.virkningstidspunkt = LocalDate.now().withDayOfMonth(1) + behandling.utgift!!.beløpDirekteBetaltAvBp = BigDecimal(500) + behandling.kategori = Særbidragskategori.KONFIRMASJON.name + behandling.utgift!!.maksGodkjentBeløp = BigDecimal(4000) + behandling.utgift!!.maksGodkjentBeløpBegrunnelse = "Maks godkjent beløp" + behandling.utgift!!.maksGodkjentBeløpTaMed = false + behandling.utgift!!.utgiftsposter = + mutableSetOf( + Utgiftspost( + dato = LocalDate.now().minusMonths(3), + type = Utgiftstype.KONFIRMASJONSAVGIFT.name, + utgift = behandling.utgift!!, + kravbeløp = BigDecimal(15000), + godkjentBeløp = BigDecimal(5000), + kommentar = "Inneholder avgifter for alkohol og pynt", + ), + Utgiftspost( + dato = LocalDate.now().minusMonths(8), + type = Utgiftstype.KLÆR.name, + utgift = behandling.utgift!!, + kravbeløp = BigDecimal(10000), + godkjentBeløp = BigDecimal(10000), + ), + Utgiftspost( + dato = LocalDate.now().minusMonths(5), + type = Utgiftstype.SELSKAP.name, + utgift = behandling.utgift!!, + kravbeløp = BigDecimal(10000), + godkjentBeløp = BigDecimal(5000), + kommentar = "Inneholder utgifter til mat og drikke", + betaltAvBp = true, + ), + ) + testdataManager.lagreBehandling(behandling) + stubUtils.stubHentePersoninfo(personident = behandling.bidragsmottaker!!.ident!!) + + behandling.initGrunnlagRespons(stubUtils) + grunnlagService.oppdatereGrunnlagForBehandling(behandling) + entityManager.flush() + entityManager.refresh(behandling) + behandling.taMedInntekt(behandling.bidragsmottaker!!, Inntektsrapportering.AINNTEKT_BEREGNET_3MND) + behandling.taMedInntekt(behandling.bidragspliktig!!, Inntektsrapportering.AINNTEKT_BEREGNET_3MND) + + every { sakConsumer.hentSak(any()) } returns opprettSakForBehandling(behandling) + + val opprettVedtakSlot = slot() + every { vedtakConsumer.fatteVedtak(capture(opprettVedtakSlot)) } returns + OpprettVedtakResponseDto( + 1, + emptyList(), + ) + + vedtakService.fatteVedtak(behandling.id!!) + entityManager.flush() + entityManager.refresh(behandling) + val opprettVedtakRequest = opprettVedtakSlot.captured + + assertSoftly(behandling) { + vedtaksid shouldBe testVedtakResponsId + vedtakstidspunkt!! shouldHaveSameDayAs LocalDateTime.now() + vedtakFattetAv shouldBe SAKSBEHANDLER_IDENT + } + + assertSoftly(opprettVedtakRequest.engangsbeløpListe[0]) { + it.type shouldBe Engangsbeløptype.SÆRBIDRAG + it.sak shouldBe Saksnummer(behandling.saksnummer) + it.skyldner shouldBe Personident(behandling.bidragspliktig!!.ident!!) + it.kravhaver shouldBe Personident(behandling.søknadsbarn.first().ident!!) + it.mottaker shouldBe Personident(behandling.bidragsmottaker!!.ident!!) + it.beløp shouldBe BigDecimal(9838) + it.betaltBeløp shouldBe BigDecimal(5500) + it.valutakode shouldBe "NOK" + it.resultatkode shouldBe no.nav.bidrag.domene.enums.beregning.Resultatkode.SÆRBIDRAG_INNVILGET.name + it.innkreving shouldBe Innkrevingstype.MED_INNKREVING + it.beslutning shouldBe Beslutningstype.ENDRING + } + + verify(exactly = 1) { + vedtakConsumer.fatteVedtak(any()) + } + verify(exactly = 1) { notatOpplysningerService.opprettNotat(any()) } + } + @Test @Transactional fun `Skal fatte vedtak og opprette grunnlagsstruktur for en særbidrag behandling med løpende bidrag og personobjekter`() { @@ -424,7 +539,7 @@ class VedtakserviceSærbidragTest : VedtakserviceTest() { @Test @Transactional - fun `Skal fatte vedtak og opprette grunnlagsstruktur for en særbidrag behandling med løpende bidrag 2`() { + fun `Skal fatte vedtak og opprette grunnlagsstruktur for en særbidrag behandling med løpende bidrag med flere vedtak`() { stubPersonConsumer() stubUtils.stubBidragVedtakForStønad(testdataBarn1.ident, "vedtak-for-stønad-barn1_2") stubUtils.stubBidragStonadLøpendeSaker("løpende-bidragssaker-bp_2") @@ -507,10 +622,10 @@ class VedtakserviceSærbidragTest : VedtakserviceTest() { val innhold = innholdTilObjekt().first() innhold.beløp shouldBe BigDecimal("14009") } - assertSoftly(hentGrunnlagstyper(Grunnlagstype.DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_SÆRBIDRAG)) { + assertSoftly(hentGrunnlagstyper(Grunnlagstype.DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL)) { shouldHaveSize(1) - val innhold = innholdTilObjekt().first() - innhold.andelFaktor shouldBe BigDecimal("0.4919") + val innhold = innholdTilObjekt().first() + innhold.endeligAndelFaktor shouldBe BigDecimal("0.4919") innhold.andelBeløp shouldBe BigDecimal("9838") } assertSoftly(hentGrunnlagstyper(Grunnlagstype.DELBEREGNING_SUM_LØPENDE_BIDRAG)) { @@ -1832,14 +1947,14 @@ class VedtakserviceSærbidragTest : VedtakserviceTest() { val delberegningBpsAndel = grunnlagListe .finnGrunnlagSomErReferertAv( - Grunnlagstype.DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_SÆRBIDRAG, + Grunnlagstype.DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL, sluttberegningSærbidrag.first(), ).toList() assertSoftly(delberegningBpsAndel) { shouldHaveSize(1) - val innhold = innholdTilObjekt().first() - innhold.andelFaktor shouldBe "0.4919".toBigDecimal() + val innhold = innholdTilObjekt().first() + innhold.endeligAndelFaktor shouldBe "0.4919".toBigDecimal() innhold.andelProsent shouldBe "49.19".toBigDecimal() innhold.andelBeløp shouldBe BigDecimal(9838) innhold.barnetErSelvforsørget shouldBe false diff --git a/src/test/kotlin/no/nav/bidrag/behandling/transformers/VedtakInnhentetGrunnlagTest.kt b/src/test/kotlin/no/nav/bidrag/behandling/transformers/VedtakInnhentetGrunnlagTest.kt index b23921c69..f731b5e06 100644 --- a/src/test/kotlin/no/nav/bidrag/behandling/transformers/VedtakInnhentetGrunnlagTest.kt +++ b/src/test/kotlin/no/nav/bidrag/behandling/transformers/VedtakInnhentetGrunnlagTest.kt @@ -292,6 +292,77 @@ class VedtakInnhentetGrunnlagTest { } } + @Test + fun `skal mappe innhentet grunnlag for husstandsmedlemmer hvis innhentet grunnlag for søknadsbarn mangler`() { + val behandling = oppretteBehandling() + behandling.roller = + mutableSetOf( + opprettRolle(behandling, testdataBM), + opprettRolle(behandling, testdataBarn1), + opprettRolle(behandling, testdataBarn2), + ) + val grunnlagListe = + listOf( + RelatertPersonGrunnlagDto( + partPersonId = testdataBM.ident, + relatertPersonPersonId = testdataBarn2.ident, + navn = testdataBarn2.navn, + fødselsdato = testdataBarn2.fødselsdato, + erBarnAvBmBp = true, + borISammeHusstandDtoListe = + listOf( + BorISammeHusstandDto( + LocalDate.parse("2023-07-01"), + null, + ), + ), + ), + RelatertPersonGrunnlagDto( + partPersonId = testdataBM.ident, + relatertPersonPersonId = "12312312", + navn = "Voksen i husstand", + fødselsdato = LocalDate.parse("1999-01-01"), + erBarnAvBmBp = false, + borISammeHusstandDtoListe = + listOf( + BorISammeHusstandDto( + LocalDate.parse("2020-07-01"), + null, + ), + ), + ), + ).tilGrunnlagEntity(behandling) + val grunnlagHusstandsmedlemmer = + grunnlagListe.tilInnhentetHusstandsmedlemmer(personobjekter).toList() + assertSoftly(grunnlagHusstandsmedlemmer) { + it.hentAllePersoner().shouldHaveSize(1) + val husstandGrunnlag = it.hentGrunnlagHusstand() + husstandGrunnlag shouldHaveSize 3 + husstandGrunnlag + .hentHusstandsmedlemMedReferanse(søknadsbarnGrunnlag2.referanse) + .shouldHaveSize(1) + husstandGrunnlag + .hentHusstandsmedlemMedReferanse(søknadsbarnGrunnlag1.referanse) + .shouldHaveSize(1) + + assertSoftly( + husstandGrunnlag + .hentHusstandsmedlemMedReferanse(søknadsbarnGrunnlag1.referanse) + .hentGrunnlagHusstand() + .first(), + ) { + this.type shouldBe Grunnlagstype.INNHENTET_HUSSTANDSMEDLEM + it.gjelderReferanse.shouldBe(grunnlagBm.referanse) + val grunnlag = it.innholdTilObjekt() + grunnlag.grunnlag.relatertPerson shouldBe søknadsbarnGrunnlag1.referanse + grunnlag.grunnlag.navn shouldBe testdataBarn1.navn + grunnlag.grunnlag.fødselsdato shouldBe testdataBarn1.fødselsdato + grunnlag.grunnlag.erBarnAvBmBp shouldBe true + grunnlag.grunnlag.perioder shouldHaveSize 0 + } + } + } + @Test fun `skal mappe innhentet grunnlag for husstandsmedlemmer med null periode`() { val behandling = oppretteBehandling() diff --git a/src/test/kotlin/no/nav/bidrag/behandling/transformers/behandling/AktivInntektEndringerTest.kt b/src/test/kotlin/no/nav/bidrag/behandling/transformers/behandling/AktivInntektEndringerTest.kt index 33bde6740..0c61fe1e0 100644 --- a/src/test/kotlin/no/nav/bidrag/behandling/transformers/behandling/AktivInntektEndringerTest.kt +++ b/src/test/kotlin/no/nav/bidrag/behandling/transformers/behandling/AktivInntektEndringerTest.kt @@ -4,6 +4,7 @@ import io.kotest.assertions.assertSoftly import io.kotest.matchers.booleans.shouldBeTrue import io.kotest.matchers.collections.shouldHaveSize import io.kotest.matchers.shouldBe +import io.kotest.matchers.shouldNotBe import no.nav.bidrag.behandling.database.datamodell.Inntektspost import no.nav.bidrag.behandling.database.datamodell.konvertereData import no.nav.bidrag.behandling.database.grunnlag.SummerteInntekter @@ -257,7 +258,7 @@ class AktivInntektEndringerTest : AktivGrunnlagTestFelles() { ) // så - resultat.shouldHaveSize(5) + resultat.shouldHaveSize(7) resultat.filter { it.endringstype == GrunnlagInntektEndringstype.ENDRING }.shouldHaveSize(1) } @@ -307,12 +308,12 @@ class AktivInntektEndringerTest : AktivGrunnlagTestFelles() { resultat.shouldHaveSize(4) resultat.none { it.rapporteringstype == Inntektsrapportering.AINNTEKT_BEREGNET_12MND } shouldBe true resultat.none { it.rapporteringstype == Inntektsrapportering.LIGNINGSINNTEKT && it.periode.fom.year == 2023 } shouldBe true - resultat.none { it.rapporteringstype == Inntektsrapportering.LIGNINGSINNTEKT && it.periode.fom.year == 2022 } shouldBe false + resultat.none { it.rapporteringstype == Inntektsrapportering.LIGNINGSINNTEKT && it.periode.fom.year == 2022 } shouldBe true val resultatNy = resultat.filter { it.endringstype == GrunnlagInntektEndringstype.NY } resultatNy.filter { it.rapporteringstype == Inntektsrapportering.AINNTEKT } shouldHaveSize 1 resultatNy.filter { it.rapporteringstype == Inntektsrapportering.AINNTEKT_BEREGNET_3MND } shouldHaveSize 1 resultatNy.filter { it.rapporteringstype == Inntektsrapportering.AINNTEKT } shouldHaveSize 1 - resultatNy.filter { it.rapporteringstype == Inntektsrapportering.KAPITALINNTEKT } shouldHaveSize 1 + resultatNy.filter { it.rapporteringstype == Inntektsrapportering.KAPITALINNTEKT } shouldHaveSize 2 } @Test @@ -366,18 +367,18 @@ class AktivInntektEndringerTest : AktivGrunnlagTestFelles() { inntekter, Grunnlagsdatatype.SKATTEPLIKTIGE_INNTEKTER, ) - resultat.shouldHaveSize(6) + resultat.shouldHaveSize(7) val resultatSlettet = resultat.filter { it.endringstype == GrunnlagInntektEndringstype.SLETTET } - resultatSlettet shouldHaveSize 2 + resultatSlettet shouldHaveSize 1 resultatSlettet.filter { it.rapporteringstype == Inntektsrapportering.AINNTEKT } shouldHaveSize 1 val resultatEndring = resultat.filter { it.endringstype == GrunnlagInntektEndringstype.ENDRING } - resultatEndring shouldHaveSize 1 - resultatEndring.filter { it.rapporteringstype == Inntektsrapportering.LIGNINGSINNTEKT } shouldHaveSize 1 + resultatEndring shouldHaveSize 2 + resultatEndring.filter { it.rapporteringstype == Inntektsrapportering.LIGNINGSINNTEKT } shouldHaveSize 2 resultatEndring.find { it.rapporteringstype == Inntektsrapportering.LIGNINGSINNTEKT && it.periode.fom == YearMonth.parse("2022-01") - } shouldBe null + } shouldNotBe null assertSoftly( resultatEndring.find { it.rapporteringstype == Inntektsrapportering.LIGNINGSINNTEKT && it.periode.fom == YearMonth.parse("2023-01") @@ -390,7 +391,7 @@ class AktivInntektEndringerTest : AktivGrunnlagTestFelles() { resultatEndring.filter { it.rapporteringstype == Inntektsrapportering.AINNTEKT_BEREGNET_12MND } shouldHaveSize 0 val resultatNy = resultat.filter { it.endringstype == GrunnlagInntektEndringstype.NY } - resultatNy shouldHaveSize 3 + resultatNy shouldHaveSize 4 } @Test @@ -484,7 +485,7 @@ class AktivInntektEndringerTest : AktivGrunnlagTestFelles() { inntekter, Grunnlagsdatatype.SKATTEPLIKTIGE_INNTEKTER, ) - resultat.shouldHaveSize(5) + resultat.shouldHaveSize(7) val resultatSlettet = resultat.filter { it.endringstype == GrunnlagInntektEndringstype.SLETTET } resultatSlettet shouldHaveSize 0 diff --git a/src/test/kotlin/no/nav/bidrag/behandling/transformers/behandling/BehandlingDtoMappingTest.kt b/src/test/kotlin/no/nav/bidrag/behandling/transformers/behandling/BehandlingDtoMappingTest.kt index 85b7212f7..3490ceb31 100644 --- a/src/test/kotlin/no/nav/bidrag/behandling/transformers/behandling/BehandlingDtoMappingTest.kt +++ b/src/test/kotlin/no/nav/bidrag/behandling/transformers/behandling/BehandlingDtoMappingTest.kt @@ -100,7 +100,7 @@ class BehandlingDtoMappingTest : TestContainerRunner() { beløpDirekteBetaltAvBp shouldBe BigDecimal(1000) totalBeløpBetaltAvBp shouldBe BigDecimal(1000) totalGodkjentBeløp shouldBe BigDecimal(2100) - totalGodkjentBeløpBp shouldBe null + totalGodkjentBeløpBp shouldBe BigDecimal.ZERO } assertSoftly(utgiftDto) { avslag shouldBe null diff --git a/src/test/kotlin/no/nav/bidrag/behandling/utils/StubUtils.kt b/src/test/kotlin/no/nav/bidrag/behandling/utils/StubUtils.kt index 656660ba4..689d4497b 100644 --- a/src/test/kotlin/no/nav/bidrag/behandling/utils/StubUtils.kt +++ b/src/test/kotlin/no/nav/bidrag/behandling/utils/StubUtils.kt @@ -565,6 +565,7 @@ class StubUtils { emptyList(), emptyList(), emptyList(), + emptyList(), LocalDateTime.now(), ) diff --git "a/src/test/resources/__files/vedtak_response-s\303\246rbidrag.json" "b/src/test/resources/__files/vedtak_response-s\303\246rbidrag.json" index 451945ded..436aff16b 100644 --- "a/src/test/resources/__files/vedtak_response-s\303\246rbidrag.json" +++ "b/src/test/resources/__files/vedtak_response-s\303\246rbidrag.json" @@ -1182,15 +1182,17 @@ "gjelderReferanse": "person_PERSON_BIDRAGSPLIKTIG_19720829_39" }, { - "referanse": "delberegning_DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_SÆRBIDRAG_person_PERSON_SØKNADSBARN_20220726_40_202407_202408", - "type": "DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_SÆRBIDRAG", + "referanse": "delberegning_DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_person_PERSON_SØKNADSBARN_20220726_40_202407_202408", + "type": "DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL", "innhold": { "periode": { "fom": "2024-07", "til": "2024-08" }, "andelBeløp": 5796, - "andelFaktor": 0.6444, + "endeligAndelFaktor": 0.6444, + "beregnetAndelFaktor": 0.6444, + "barnEndeligInntekt": 0, "barnetErSelvforsørget": false }, "grunnlagsreferanseListe": [ @@ -1454,7 +1456,7 @@ }, "grunnlagsreferanseListe": [ "delberegning_DELBEREGNING_BIDRAGSEVNE_person_PERSON_SØKNADSBARN_20220726_40_202407_202408", - "delberegning_DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_SÆRBIDRAG_person_PERSON_SØKNADSBARN_20220726_40_202407_202408", + "delberegning_DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_person_PERSON_SØKNADSBARN_20220726_40_202407_202408", "delberegning_utgift" ], "gjelderReferanse": "person_PERSON_SØKNADSBARN_20220726_40" @@ -1533,7 +1535,7 @@ "særbidrag_kategori", "delberegning_DELBEREGNING_BARN_I_HUSSTAND_person_PERSON_SØKNADSBARN_20220726_40_202407", "delberegning_DELBEREGNING_BIDRAGSEVNE_person_PERSON_SØKNADSBARN_20220726_40_202407_202408", - "delberegning_DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_SÆRBIDRAG_person_PERSON_SØKNADSBARN_20220726_40_202407_202408", + "delberegning_DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_person_PERSON_SØKNADSBARN_20220726_40_202407_202408", "delberegning_DELBEREGNING_SUM_INNTEKT_person_PERSON_BIDRAGSMOTTAKER_19781115_41_202407", "delberegning_DELBEREGNING_SUM_INNTEKT_person_PERSON_BIDRAGSPLIKTIG_19720829_39_202407", "delberegning_DELBEREGNING_SUM_INNTEKT_person_PERSON_SØKNADSBARN_20220726_40_202407", diff --git "a/src/test/resources/__files/vedtak_response-s\303\246rbidrag_maksbel\303\270p.json" "b/src/test/resources/__files/vedtak_response-s\303\246rbidrag_maksbel\303\270p.json" index 509af1f00..80bd45cb2 100644 --- "a/src/test/resources/__files/vedtak_response-s\303\246rbidrag_maksbel\303\270p.json" +++ "b/src/test/resources/__files/vedtak_response-s\303\246rbidrag_maksbel\303\270p.json" @@ -3393,15 +3393,17 @@ "gjelderReferanse": "person_PERSON_BIDRAGSPLIKTIG_19781115_99" }, { - "referanse": "delberegning_DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_SÆRBIDRAG_person_PERSON_SØKNADSBARN_20050916_101_202409_202410", - "type": "DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_SÆRBIDRAG", + "referanse": "delberegning_DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_person_PERSON_SØKNADSBARN_20050916_101_202409_202410", + "type": "DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL", "innhold": { "periode": { "fom": "2024-09", "til": "2024-10" }, "andelBeløp": 9185, - "andelFaktor": 0.6123, + "endeligAndelFaktor": 0.6123, + "beregnetAndelFaktor": 0.6123, + "barnEndeligInntekt": 0, "barnetErSelvforsørget": false }, "grunnlagsreferanseListe": [ @@ -3665,7 +3667,7 @@ }, "grunnlagsreferanseListe": [ "delberegning_DELBEREGNING_BIDRAGSEVNE_person_PERSON_SØKNADSBARN_20050916_101_202409_202410", - "delberegning_DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_SÆRBIDRAG_person_PERSON_SØKNADSBARN_20050916_101_202409_202410", + "delberegning_DELBEREGNING_BIDRAGSPLIKTIGES_ANDEL_person_PERSON_SØKNADSBARN_20050916_101_202409_202410", "delberegning_utgift" ], "gjelderReferanse": "person_PERSON_SØKNADSBARN_20050916_101"