diff --git a/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/mappers/fra_kalkulus_til_domene/KalkulusTilFpsakMapper.java b/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/mappers/fra_kalkulus_til_domene/KalkulusTilFpsakMapper.java index 01d337c80ab..f1273bac4e7 100644 --- a/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/mappers/fra_kalkulus_til_domene/KalkulusTilFpsakMapper.java +++ b/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/mappers/fra_kalkulus_til_domene/KalkulusTilFpsakMapper.java @@ -6,6 +6,7 @@ import java.util.Optional; import java.util.UUID; +import no.nav.folketrygdloven.fpkalkulus.kontrakt.besteberegning.BesteberegningGrunnlagDto; import no.nav.folketrygdloven.kalkulus.kodeverk.AktivitetStatus; import no.nav.folketrygdloven.kalkulus.response.v1.beregningsgrunnlag.detaljert.BeregningAktivitetAggregatDto; import no.nav.folketrygdloven.kalkulus.response.v1.beregningsgrunnlag.detaljert.BeregningAktivitetDto; @@ -34,6 +35,9 @@ import no.nav.foreldrepenger.domene.modell.BeregningsgrunnlagGrunnlagBuilder; import no.nav.foreldrepenger.domene.modell.BeregningsgrunnlagPeriode; import no.nav.foreldrepenger.domene.modell.BeregningsgrunnlagPrStatusOgAndel; +import no.nav.foreldrepenger.domene.modell.BesteberegningGrunnlag; +import no.nav.foreldrepenger.domene.modell.BesteberegningInntekt; +import no.nav.foreldrepenger.domene.modell.BesteberegningMånedsgrunnlag; import no.nav.foreldrepenger.domene.modell.SammenligningsgrunnlagPrStatus; import no.nav.foreldrepenger.domene.tid.ÅpenDatoIntervallEntitet; import no.nav.foreldrepenger.domene.typer.AktørId; @@ -49,9 +53,9 @@ private KalkulusTilFpsakMapper() { // Hindrer instansiering } - public static BeregningsgrunnlagGrunnlag map(BeregningsgrunnlagGrunnlagDto grunnlagDto) { + public static BeregningsgrunnlagGrunnlag map(BeregningsgrunnlagGrunnlagDto grunnlagDto, Optional besteberegningGrunnlagDto) { return BeregningsgrunnlagGrunnlagBuilder.nytt() - .medBeregningsgrunnlag(grunnlagDto.getBeregningsgrunnlag() == null ? null : mapGrunnlag(grunnlagDto.getBeregningsgrunnlag())) + .medBeregningsgrunnlag(grunnlagDto.getBeregningsgrunnlag() == null ? null : mapGrunnlag(grunnlagDto.getBeregningsgrunnlag(), besteberegningGrunnlagDto)) .medRegisterAktiviteter(grunnlagDto.getRegisterAktiviteter() == null ? null : mapAktiviteter(grunnlagDto.getRegisterAktiviteter())) .medSaksbehandletAktiviteter(grunnlagDto.getSaksbehandletAktiviteter() == null ? null : mapAktiviteter(grunnlagDto.getSaksbehandletAktiviteter())) .medOverstyring(grunnlagDto.getOverstyringer() == null ? null : mapAktivitetOverstyringer(grunnlagDto.getOverstyringer())) @@ -59,6 +63,29 @@ public static BeregningsgrunnlagGrunnlag map(BeregningsgrunnlagGrunnlagDto grunn .build(KodeverkFraKalkulusMapper.mapTilstand(grunnlagDto.getBeregningsgrunnlagTilstand())); } + public static BesteberegningGrunnlag mapBesteberegning(BesteberegningGrunnlagDto bbg) { + var builder = BesteberegningGrunnlag.ny().medAvvik(mapTilBigDecimal(bbg.avvikFørsteOgTredjeLedd())); + bbg.seksBesteMåneder().stream().map(KalkulusTilFpsakMapper::mapBesteberegningMåned).forEach(builder::leggTilMånedsgrunnlag); + return builder.build(); + + } + + private static BesteberegningMånedsgrunnlag mapBesteberegningMåned(BesteberegningGrunnlagDto.BesteberegningMånedDto m) { + var builder = BesteberegningMånedsgrunnlag.ny().medPeriode(m.periode().getFom(), m.periode().getTom()); + m.inntekter().stream() + .map(KalkulusTilFpsakMapper::maBesteberegningInntekt) + .forEach(builder::leggTilInntekt); + return builder.build(); + } + + private static BesteberegningInntekt maBesteberegningInntekt(BesteberegningGrunnlagDto.BesteberegningInntektDto i) { + return BesteberegningInntekt.ny().medInntekt(mapTilBigDecimal(i.inntekt())) + .medArbeidsgiver(i.arbeidsgiver() == null ? null : mapArbeidsgiver(i.arbeidsgiver())) + .medOpptjeningAktivitetType(KodeverkFraKalkulusMapper.mapOpptjeningtype(i.opptjeningAktiviteterDto())) + .medArbeidsforholdRef(i.internArbeidsforholdRefDto() == null ? null : InternArbeidsforholdRef.ref(i.internArbeidsforholdRefDto().getAbakusReferanse())) + .build(); + } + private static BeregningRefusjonOverstyringer mapRefusjonoverstyringer(BeregningRefusjonOverstyringerDto refusjonOverstyringer) { var builder = BeregningRefusjonOverstyringer.builder(); refusjonOverstyringer.getOverstyringer().stream().map(KalkulusTilFpsakMapper::mapRefusjonoverstyring).forEach(builder::leggTilOverstyring); @@ -109,7 +136,8 @@ private static BeregningAktivitet mapAktivitet(BeregningAktivitetDto aktivitetDt .build(); } - private static Beregningsgrunnlag mapGrunnlag(BeregningsgrunnlagDto beregningsgrunnlagDto) { + private static Beregningsgrunnlag mapGrunnlag(BeregningsgrunnlagDto beregningsgrunnlagDto, + Optional besteberegningGrunnlagDto) { var builder = Beregningsgrunnlag.builder() .medSkjæringstidspunkt(beregningsgrunnlagDto.getSkjæringstidspunkt()) .medGrunnbeløp(mapTilBeløp(beregningsgrunnlagDto.getGrunnbeløp())) @@ -135,6 +163,9 @@ private static Beregningsgrunnlag mapGrunnlag(BeregningsgrunnlagDto beregningsgr .map(KalkulusTilFpsakMapper::mapSammenligningsgrunnlag) .forEach(builder::leggTilSammenligningsgrunnlagPrStatus); + // Besteberegning + besteberegningGrunnlagDto.ifPresent(bbg -> builder.medBesteberegningsgrunnlag(mapBesteberegning(bbg))); + return builder.build(); } diff --git a/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/prosess/BeregningKalkulus.java b/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/prosess/BeregningKalkulus.java index 4044096efab..cc702382893 100644 --- a/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/prosess/BeregningKalkulus.java +++ b/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/prosess/BeregningKalkulus.java @@ -6,9 +6,6 @@ import jakarta.enterprise.context.ApplicationScoped; import jakarta.inject.Inject; -import no.nav.folketrygdloven.kalkulus.håndtering.v1.HåndterBeregningDto; -import no.nav.foreldrepenger.behandling.aksjonspunkt.OverstyringAksjonspunktDto; - import org.jboss.weld.exceptions.IllegalStateException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -19,12 +16,15 @@ import no.nav.folketrygdloven.fpkalkulus.kontrakt.HentBeregningsgrunnlagGUIRequest; import no.nav.folketrygdloven.fpkalkulus.kontrakt.HåndterBeregningRequestDto; import no.nav.folketrygdloven.fpkalkulus.kontrakt.KopierBeregningsgrunnlagRequestDto; +import no.nav.folketrygdloven.fpkalkulus.kontrakt.besteberegning.BesteberegningGrunnlagDto; import no.nav.folketrygdloven.kalkulus.felles.v1.AktørIdPersonident; import no.nav.folketrygdloven.kalkulus.felles.v1.Saksnummer; +import no.nav.folketrygdloven.kalkulus.håndtering.v1.HåndterBeregningDto; import no.nav.folketrygdloven.kalkulus.kodeverk.BeregningSteg; import no.nav.folketrygdloven.kalkulus.response.v1.beregningsgrunnlag.gui.BeregningsgrunnlagDto; import no.nav.foreldrepenger.behandling.BehandlingReferanse; import no.nav.foreldrepenger.behandling.aksjonspunkt.BekreftetAksjonspunktDto; +import no.nav.foreldrepenger.behandling.aksjonspunkt.OverstyringAksjonspunktDto; import no.nav.foreldrepenger.behandlingslager.behandling.BehandlingStegType; import no.nav.foreldrepenger.behandlingslager.fagsak.FagsakYtelseType; import no.nav.foreldrepenger.domene.aksjonspunkt.KalkulusAksjonspunktMapper; @@ -32,12 +32,14 @@ import no.nav.foreldrepenger.domene.aksjonspunkt.OppdaterBeregningsgrunnlagResultat; import no.nav.foreldrepenger.domene.entiteter.BeregningsgrunnlagKobling; import no.nav.foreldrepenger.domene.entiteter.BeregningsgrunnlagKoblingRepository; +import no.nav.foreldrepenger.domene.fp.BesteberegningFødendeKvinneTjeneste; import no.nav.foreldrepenger.domene.mappers.KalkulusInputTjeneste; import no.nav.foreldrepenger.domene.mappers.fra_kalkulus_til_domene.KalkulusTilFpsakMapper; import no.nav.foreldrepenger.domene.modell.BeregningsgrunnlagGrunnlag; import no.nav.foreldrepenger.domene.modell.kodeverk.BeregningsgrunnlagTilstand; import no.nav.foreldrepenger.domene.output.BeregningsgrunnlagVilkårOgAkjonspunktResultat; import no.nav.foreldrepenger.domene.typer.Beløp; +import no.nav.foreldrepenger.skjæringstidspunkt.SkjæringstidspunktTjeneste; @ApplicationScoped public class BeregningKalkulus implements BeregningAPI { @@ -46,6 +48,8 @@ public class BeregningKalkulus implements BeregningAPI { private KalkulusKlient klient; private KalkulusInputTjeneste kalkulusInputTjeneste; private BeregningsgrunnlagKoblingRepository koblingRepository; + private BesteberegningFødendeKvinneTjeneste besteberegningFødendeKvinneTjeneste; + private SkjæringstidspunktTjeneste skjæringstidspunktTjeneste; BeregningKalkulus() { // CDI @@ -54,10 +58,14 @@ public class BeregningKalkulus implements BeregningAPI { @Inject public BeregningKalkulus(KalkulusKlient klient, KalkulusInputTjeneste kalkulusInputTjeneste, - BeregningsgrunnlagKoblingRepository koblingRepository) { + BeregningsgrunnlagKoblingRepository koblingRepository, + BesteberegningFødendeKvinneTjeneste besteberegningFødendeKvinneTjeneste, + SkjæringstidspunktTjeneste skjæringstidspunktTjeneste) { this.klient = klient; this.kalkulusInputTjeneste = kalkulusInputTjeneste; this.koblingRepository = koblingRepository; + this.besteberegningFødendeKvinneTjeneste = besteberegningFødendeKvinneTjeneste; + this.skjæringstidspunktTjeneste = skjæringstidspunktTjeneste; } @Override @@ -65,7 +73,10 @@ public Optional hent(BehandlingReferanse referanse) var kobling = koblingRepository.hentKobling(referanse.behandlingId()); return kobling.flatMap(k -> { var request = new EnkelFpkalkulusRequestDto(k.getKoblingUuid(), new Saksnummer(referanse.saksnummer().getVerdi())); - return klient.hentGrunnlag(request).map(KalkulusTilFpsakMapper::map); + var stp = skjæringstidspunktTjeneste.getSkjæringstidspunkter(referanse.behandlingId()); + var måHenteBesteberegningsgrunnlag = besteberegningFødendeKvinneTjeneste.brukerOmfattesAvBesteBeregningsRegelForFødendeKvinne(referanse, stp); + Optional besteberegnetGrunnlag = måHenteBesteberegningsgrunnlag ? klient.hentGrunnlagBesteberegning(request) : Optional.empty(); + return klient.hentGrunnlag(request).map(bgDto -> KalkulusTilFpsakMapper.map(bgDto, besteberegnetGrunnlag)); }); } diff --git a/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/prosess/KalkulusKlient.java b/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/prosess/KalkulusKlient.java index e78a8b2db92..532186026ba 100644 --- a/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/prosess/KalkulusKlient.java +++ b/domenetjenester/beregningsgrunnlag/src/main/java/no/nav/foreldrepenger/domene/prosess/KalkulusKlient.java @@ -7,6 +7,7 @@ import jakarta.enterprise.context.ApplicationScoped; import jakarta.ws.rs.core.UriBuilder; +import no.nav.folketrygdloven.fpkalkulus.kontrakt.besteberegning.BesteberegningGrunnlagDto; import no.nav.vedtak.exception.TekniskException; import org.slf4j.Logger; @@ -37,6 +38,7 @@ public class KalkulusKlient { private URI beregn; private URI hentGrunnlag; private URI hentGrunnlagGui; + private URI hentGrunnlagBesteberegning; private URI kopierGrunnlag; private URI avklaringsbehov; private URI deatkvier; @@ -50,6 +52,7 @@ public KalkulusKlient() { this.beregn = toUri(restConfig.fpContextPath(), "/api/kalkulus/v1/beregn"); this.hentGrunnlag = toUri(restConfig.fpContextPath(), "/api/kalkulus/v1/grunnlag"); this.hentGrunnlagGui = toUri(restConfig.fpContextPath(), "/api/kalkulus/v1/grunnlag/gui"); + this.hentGrunnlagBesteberegning = toUri(restConfig.fpContextPath(), "/api/kalkulus/v1/grunnlag/besteberegning"); this.kopierGrunnlag = toUri(restConfig.fpContextPath(), "/api/kalkulus/v1/kopier"); this.avklaringsbehov = toUri(restConfig.fpContextPath(), "/api/kalkulus/v1/avklaringsbehov"); this.deatkvier = toUri(restConfig.fpContextPath(), "/api/kalkulus/v1/deaktiver"); @@ -77,6 +80,11 @@ public Optional hentGrunnlagGUI(HentBeregningsgrunnlagGUI return restClient.sendReturnOptional(restRequest, BeregningsgrunnlagDto.class); } + public Optional hentGrunnlagBesteberegning(EnkelFpkalkulusRequestDto request) { + var restRequest = RestRequest.newPOSTJson(request, hentGrunnlagBesteberegning, restConfig); + return restClient.sendReturnOptional(restRequest, BesteberegningGrunnlagDto.class); + } + public void kopierGrunnlag(KopierBeregningsgrunnlagRequestDto request) { var restRequest = RestRequest.newPOSTJson(request, kopierGrunnlag, restConfig); var respons = restClient.sendReturnUnhandled(restRequest); diff --git a/domenetjenester/beregningsgrunnlag/src/test/java/no/nav/foreldrepenger/domene/mappers/fra_kalkulus/KalkulusTilFpsakMapperTest.java b/domenetjenester/beregningsgrunnlag/src/test/java/no/nav/foreldrepenger/domene/mappers/fra_kalkulus/KalkulusTilFpsakMapperTest.java index e4c24678f2b..923a96debd6 100644 --- a/domenetjenester/beregningsgrunnlag/src/test/java/no/nav/foreldrepenger/domene/mappers/fra_kalkulus/KalkulusTilFpsakMapperTest.java +++ b/domenetjenester/beregningsgrunnlag/src/test/java/no/nav/foreldrepenger/domene/mappers/fra_kalkulus/KalkulusTilFpsakMapperTest.java @@ -3,29 +3,35 @@ import static org.assertj.core.api.Assertions.assertThat; import java.math.BigDecimal; +import java.time.LocalDate; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.Objects; import java.util.Optional; +import java.util.UUID; import java.util.stream.Collectors; +import org.junit.jupiter.api.Test; + +import no.nav.folketrygdloven.fpkalkulus.kontrakt.besteberegning.BesteberegningGrunnlagDto; import no.nav.folketrygdloven.kalkulus.felles.v1.Beløp; +import no.nav.folketrygdloven.kalkulus.felles.v1.InternArbeidsforholdRefDto; +import no.nav.folketrygdloven.kalkulus.felles.v1.Periode; +import no.nav.folketrygdloven.kalkulus.kodeverk.OpptjeningAktivitetType; import no.nav.folketrygdloven.kalkulus.response.v1.beregningsgrunnlag.detaljert.BGAndelArbeidsforhold; import no.nav.folketrygdloven.kalkulus.response.v1.beregningsgrunnlag.detaljert.BeregningAktivitetDto; +import no.nav.folketrygdloven.kalkulus.response.v1.beregningsgrunnlag.detaljert.BeregningsgrunnlagGrunnlagDto; +import no.nav.folketrygdloven.kalkulus.response.v1.beregningsgrunnlag.detaljert.BeregningsgrunnlagPeriodeDto; import no.nav.folketrygdloven.kalkulus.response.v1.beregningsgrunnlag.detaljert.BeregningsgrunnlagPrStatusOgAndelDto; import no.nav.foreldrepenger.behandlingslager.virksomhet.Arbeidsgiver; +import no.nav.foreldrepenger.domene.json.StandardJsonConfig; import no.nav.foreldrepenger.domene.mappers.fra_kalkulator_til_entitet.KodeverkFraKalkulusMapper; import no.nav.foreldrepenger.domene.mappers.fra_kalkulus_til_domene.KalkulusTilFpsakMapper; import no.nav.foreldrepenger.domene.modell.BeregningAktivitet; -import no.nav.foreldrepenger.domene.modell.BeregningsgrunnlagPrStatusOgAndel; - -import org.junit.jupiter.api.Test; - -import no.nav.folketrygdloven.kalkulus.response.v1.beregningsgrunnlag.detaljert.BeregningsgrunnlagGrunnlagDto; -import no.nav.folketrygdloven.kalkulus.response.v1.beregningsgrunnlag.detaljert.BeregningsgrunnlagPeriodeDto; -import no.nav.foreldrepenger.domene.json.StandardJsonConfig; import no.nav.foreldrepenger.domene.modell.BeregningsgrunnlagAktivitetStatus; import no.nav.foreldrepenger.domene.modell.BeregningsgrunnlagPeriode; +import no.nav.foreldrepenger.domene.modell.BeregningsgrunnlagPrStatusOgAndel; class KalkulusTilFpsakMapperTest { @@ -33,7 +39,7 @@ class KalkulusTilFpsakMapperTest { void skal_teste_mapping() { var kontraktBgg = bgFraJson(); - var domeneBgg = KalkulusTilFpsakMapper.map(kontraktBgg); + var domeneBgg = KalkulusTilFpsakMapper.map(kontraktBgg, Optional.empty()); var domenebg = domeneBgg.getBeregningsgrunnlag().orElseThrow(); var kontraktbg = kontraktBgg.getBeregningsgrunnlag(); @@ -52,6 +58,55 @@ void skal_teste_mapping() { } } + @Test + void skal_teste_mapping_med_besteberegning() { + var kontraktBgg = bgFraJson(); + + + var arbRef = UUID.randomUUID().toString(); + var inntektDPDto = new BesteberegningGrunnlagDto.BesteberegningInntektDto(OpptjeningAktivitetType.DAGPENGER, Beløp.fra(5000), + null, null); + var inntektATDto = new BesteberegningGrunnlagDto.BesteberegningInntektDto(OpptjeningAktivitetType.ARBEID, Beløp.fra(1234), + new no.nav.folketrygdloven.kalkulus.response.v1.Arbeidsgiver("999999999", null), new InternArbeidsforholdRefDto(arbRef)); + var inntektMåned = new BesteberegningGrunnlagDto.BesteberegningMånedDto( + new Periode(LocalDate.of(2024, 1, 1), LocalDate.of(2024, 1, 31)), List.of(inntektDPDto, inntektATDto)); + var besteberegningDto = new BesteberegningGrunnlagDto(Collections.singletonList(inntektMåned), Beløp.fra(70000)); + var domeneBgg = KalkulusTilFpsakMapper.map(kontraktBgg, Optional.of(besteberegningDto)); + + var domenebg = domeneBgg.getBeregningsgrunnlag().orElseThrow(); + var kontraktbg = kontraktBgg.getBeregningsgrunnlag(); + assertThat(domenebg.getSkjæringstidspunkt()).isEqualTo(kontraktbg.getSkjæringstidspunkt()); + assertThat(domenebg.getGrunnbeløp().getVerdi()).isEqualTo(kontraktbg.getGrunnbeløp().verdi()); + assertThat(domenebg.getAktivitetStatuser().stream().map(BeregningsgrunnlagAktivitetStatus::getAktivitetStatus)) + .containsAll(kontraktbg.getAktivitetStatuser().stream().map(KodeverkFraKalkulusMapper::mapAktivitetstatus).collect(Collectors.toList())); + assertThat(domenebg.getBeregningsgrunnlagPerioder()).hasSameSizeAs(kontraktbg.getBeregningsgrunnlagPerioder()); + assertPerioder(domenebg.getBeregningsgrunnlagPerioder().stream() + .sorted(Comparator.comparing(bgp -> bgp.getPeriode().getFomDato())).collect(Collectors.toList()), kontraktbg.getBeregningsgrunnlagPerioder().stream() + .sorted(Comparator.comparing(bgp -> bgp.getPeriode().getFom())).collect(Collectors.toList())); + if (kontraktBgg.getRegisterAktiviteter() != null) { + assertThat(domeneBgg.getRegisterAktiviteter()).isNotNull(); + assertThat(domeneBgg.getRegisterAktiviteter().getSkjæringstidspunktOpptjening()).isEqualTo(kontraktBgg.getRegisterAktiviteter().getSkjæringstidspunktOpptjening()); + assertLikeAktiviteter(kontraktBgg.getRegisterAktiviteter().getAktiviteter(), domeneBgg.getRegisterAktiviteter().getBeregningAktiviteter()); + } + + var domeneBbg = domenebg.getBesteberegningGrunnlag(); + assertThat(domeneBbg).isPresent(); + assertThat(domeneBbg.get().getAvvik().get()).isEqualByComparingTo(BigDecimal.valueOf(70000)); + assertThat(domeneBbg.get().getSeksBesteMåneder()).hasSize(1); + assertThat(domeneBbg.get().getSeksBesteMåneder().stream().findFirst().get().getInntekter()).hasSize(2); + assertThat(domeneBbg.get().getSeksBesteMåneder().stream().findFirst().get().getPeriode().getFomDato()).isEqualTo(inntektMåned.periode().getFom()); + assertThat(domeneBbg.get().getSeksBesteMåneder().stream().findFirst().get().getPeriode().getTomDato()).isEqualTo(inntektMåned.periode().getTom()); + var atAndel = domeneBbg.get().getSeksBesteMåneder().stream().findFirst().get().getInntekter().stream().filter(i -> i.getOpptjeningAktivitetType().equals( + no.nav.foreldrepenger.behandlingslager.behandling.opptjening.OpptjeningAktivitetType.ARBEID)).findFirst(); + var dpAndel = domeneBbg.get().getSeksBesteMåneder().stream().findFirst().get().getInntekter().stream().filter(i -> i.getOpptjeningAktivitetType().equals( + no.nav.foreldrepenger.behandlingslager.behandling.opptjening.OpptjeningAktivitetType.DAGPENGER)).findFirst(); + assertThat(dpAndel.get().getInntekt()).isEqualByComparingTo(BigDecimal.valueOf(5000)); + + assertThat(atAndel.get().getInntekt()).isEqualByComparingTo(BigDecimal.valueOf(1234)); + assertThat(atAndel.get().getArbeidsgiver().getIdentifikator()).isEqualTo("999999999"); + assertThat(atAndel.get().getArbeidsforholdRef().getReferanse()).isEqualTo(arbRef); + } + private void assertLikeAktiviteter(List kontraktAktiviteter, List domeneAktiviteter) { assertThat(kontraktAktiviteter).hasSameSizeAs(domeneAktiviteter); kontraktAktiviteter.forEach(ka -> { diff --git a/domenetjenester/beregningsgrunnlag/src/test/java/no/nav/foreldrepenger/domene/prosess/BeregningKalkulusTest.java b/domenetjenester/beregningsgrunnlag/src/test/java/no/nav/foreldrepenger/domene/prosess/BeregningKalkulusTest.java index 8b167c274fc..fcf7129f921 100644 --- a/domenetjenester/beregningsgrunnlag/src/test/java/no/nav/foreldrepenger/domene/prosess/BeregningKalkulusTest.java +++ b/domenetjenester/beregningsgrunnlag/src/test/java/no/nav/foreldrepenger/domene/prosess/BeregningKalkulusTest.java @@ -25,10 +25,12 @@ import no.nav.foreldrepenger.behandlingslager.fagsak.FagsakYtelseType; import no.nav.foreldrepenger.domene.entiteter.BeregningsgrunnlagKobling; import no.nav.foreldrepenger.domene.entiteter.BeregningsgrunnlagKoblingRepository; +import no.nav.foreldrepenger.domene.fp.BesteberegningFødendeKvinneTjeneste; import no.nav.foreldrepenger.domene.mappers.KalkulusInputTjeneste; import no.nav.foreldrepenger.domene.modell.kodeverk.BeregningsgrunnlagTilstand; import no.nav.foreldrepenger.domene.typer.AktørId; import no.nav.foreldrepenger.domene.typer.Saksnummer; +import no.nav.foreldrepenger.skjæringstidspunkt.SkjæringstidspunktTjeneste; @ExtendWith(MockitoExtension.class) class BeregningKalkulusTest { @@ -38,12 +40,16 @@ class BeregningKalkulusTest { private KalkulusInputTjeneste kalkulusInputTjeneste; @Mock private BeregningsgrunnlagKoblingRepository koblingRepository; + @Mock + private BesteberegningFødendeKvinneTjeneste besteberegningFødendeKvinneTjeneste; + @Mock + private SkjæringstidspunktTjeneste skjæringstidspunktTjeneste; private BeregningKalkulus beregningKalkulus; @BeforeEach void setup() { - beregningKalkulus = new BeregningKalkulus(kalkulusKlient, kalkulusInputTjeneste, koblingRepository); + beregningKalkulus = new BeregningKalkulus(kalkulusKlient, kalkulusInputTjeneste, koblingRepository, besteberegningFødendeKvinneTjeneste, skjæringstidspunktTjeneste); } @Test diff --git a/pom.xml b/pom.xml index f38b0e1f2f2..fc22dbc9b16 100644 --- a/pom.xml +++ b/pom.xml @@ -29,7 +29,7 @@ 2.7.1 2.6.3 1.1.0 - 5.4.3 + 5.4.4 15.3.0 2.1.1 2.4.4 @@ -40,7 +40,7 @@ 9.1.20 2.1.2 - 0.0.5 + 0.0.6 ${project.artifactId} fp-sak