From 6fb6c5a15db0c0bb4d8aef4e4524093b03534c2c Mon Sep 17 00:00:00 2001 From: Petter Ekern Date: Mon, 23 Oct 2023 15:02:45 +0200 Subject: [PATCH 1/4] TFP-5605: Henter data om tilkjent ytelse fra eget endepunkt i fpsak --- ...oreldrepengerAvslagDokumentdataMapper.java | 2 +- ...engerOpph\303\270rDokumentdataMapper.java" | 2 +- .../tjenester/DomeneobjektProvider.java | 10 ++-- .../integrasjon/fpsak/Behandlinger.java | 14 +++--- .../fpsak/mapper/TilkjentYtelseDtoMapper.java | 48 +++++++++++++------ ...drepengerAvslagDokumentdataMapperTest.java | 2 +- ...rOpph\303\270rDokumentdataMapperTest.java" | 2 +- pom.xml | 2 +- 8 files changed, 50 insertions(+), 32 deletions(-) diff --git a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/avslagfp/ForeldrepengerAvslagDokumentdataMapper.java b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/avslagfp/ForeldrepengerAvslagDokumentdataMapper.java index 70240e766..a020e87d2 100644 --- a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/avslagfp/ForeldrepengerAvslagDokumentdataMapper.java +++ b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/avslagfp/ForeldrepengerAvslagDokumentdataMapper.java @@ -103,7 +103,7 @@ private boolean gjelderMor(FagsakBackend fagsak) { private void mapAvslåttePerioder(Behandling behandling, ForeldrepengerAvslagDokumentdata.Builder dokumentdataBuilder, Optional uttakResultatPerioder) { - var tilkjentYtelseFP = domeneobjektProvider.hentTilkjentYtelseFPHvisFinnes(behandling); + var tilkjentYtelseFP = domeneobjektProvider.hentTilkjentYtelseDagytelseHvisFinnes(behandling); var avslåttePerioderOgLovhjemmel = AvslåttPeriodeMapper.mapAvslåttePerioderOgLovhjemmel(behandling, tilkjentYtelseFP.map(TilkjentYtelseForeldrepenger::getPerioder).orElse(Collections.emptyList()), uttakResultatPerioder); diff --git "a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/opphorsvp/SvangerskapspengerOpph\303\270rDokumentdataMapper.java" "b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/opphorsvp/SvangerskapspengerOpph\303\270rDokumentdataMapper.java" index a68fae08e..640aa5e20 100644 --- "a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/opphorsvp/SvangerskapspengerOpph\303\270rDokumentdataMapper.java" +++ "b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/opphorsvp/SvangerskapspengerOpph\303\270rDokumentdataMapper.java" @@ -59,7 +59,7 @@ public String getTemplateNavn() { var svpUttaksresultat = domeneobjektProvider.hentSvangerskapspengerUttakHvisFinnes(behandling); var familieHendelse = domeneobjektProvider.hentFamiliehendelse(behandling); var iay = domeneobjektProvider.hentInntektsmeldinger(behandling); - var tilkjentYtelsePerioder = domeneobjektProvider.hentTilkjentYtelseFPHvisFinnes(behandling) + var tilkjentYtelsePerioder = domeneobjektProvider.hentTilkjentYtelseDagytelseHvisFinnes(behandling) .map(TilkjentYtelseForeldrepenger::getPerioder) .orElse(Collections.emptyList()); diff --git a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/tjenester/DomeneobjektProvider.java b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/tjenester/DomeneobjektProvider.java index b9b0cc5e5..51bdecbb4 100644 --- a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/tjenester/DomeneobjektProvider.java +++ b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/tjenester/DomeneobjektProvider.java @@ -101,13 +101,13 @@ public Optional hentOriginalBehandlingHvisFinnes(Behandling behandli } public TilkjentYtelseForeldrepenger hentTilkjentYtelseForeldrepenger(Behandling behandling) { - return TilkjentYtelseDtoMapper.mapTilkjentYtelseFPFraDto( - behandlingRestKlient.hentTilkjentYtelseForeldrepenger(behandling.getResourceLinker()), arbeidsgiverTjeneste::hentArbeidsgiverNavn); + return TilkjentYtelseDtoMapper.mapTilkjentYtelseDagytelseFraDto( + behandlingRestKlient.hentTilkjentYtelseDagytelse(behandling.getResourceLinker()), arbeidsgiverTjeneste::hentArbeidsgiverNavn); } - public Optional hentTilkjentYtelseFPHvisFinnes(Behandling behandling) { - return behandlingRestKlient.hentTilkjentYtelseForeldrepengerHvisFinnes(behandling.getResourceLinker()) - .map(r -> TilkjentYtelseDtoMapper.mapTilkjentYtelseFPFraDto(r, arbeidsgiverTjeneste::hentArbeidsgiverNavn)); + public Optional hentTilkjentYtelseDagytelseHvisFinnes(Behandling behandling) { + return behandlingRestKlient.hentTilkjentYtelseDagytelseHvisFinnes(behandling.getResourceLinker()) + .map(r -> TilkjentYtelseDtoMapper.mapTilkjentYtelseDagytelseFraDto(r, arbeidsgiverTjeneste::hentArbeidsgiverNavn)); } public FamilieHendelse hentFamiliehendelse(Behandling behandling) { diff --git a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/Behandlinger.java b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/Behandlinger.java index e7119fa29..8a3f1b35d 100644 --- a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/Behandlinger.java +++ b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/Behandlinger.java @@ -19,7 +19,6 @@ import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.personopplysning.VergeDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.soknad.SoknadBackendDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse.TilkjentYtelseEngangsstønadDto; -import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse.TilkjentYtelseMedUttaksplanDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.uttak.StartdatoUtsattDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.uttak.UttakResultatPerioderDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.uttak.YtelseFordelingDto; @@ -27,6 +26,7 @@ import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.uttak.svp.SvangerskapspengerUttakResultatDto; import no.nav.foreldrepenger.kontrakter.formidling.v1.DokumentProdusertDto; import no.nav.foreldrepenger.kontrakter.fpsak.beregningsgrunnlag.v2.BeregningsgrunnlagDto; +import no.nav.foreldrepenger.kontrakter.fpsak.tilkjentytelse.TilkjentYtelseDagytelseDto; public interface Behandlinger { @@ -69,7 +69,7 @@ default Optional hentFamiliehendelseHvisFinnes(List< default Optional hentTilkjentYtelseEngangsstønadHvisFinnes(List resourceLinker) { return resourceLinker.stream() - .filter(dto -> "beregningsresultat-engangsstonad".equals(dto.getRel())) + .filter(dto -> "tilkjentytelse-engangsstonad".equals(dto.getRel())) .findFirst() .flatMap(link -> hentDtoFraLink(link, TilkjentYtelseEngangsstønadDto.class)); } @@ -79,17 +79,17 @@ default Optional hentFamiliehendelseHvisFinnes(List< () -> new IllegalStateException("Klarte ikke hente Tilkjent ytelse engangsstønad for behandling: " + hentBehandlingId(resourceLinker))); } - default TilkjentYtelseMedUttaksplanDto hentTilkjentYtelseForeldrepenger(List resourceLinker) { - return hentTilkjentYtelseForeldrepengerHvisFinnes(resourceLinker).orElseThrow(() -> { + default TilkjentYtelseDagytelseDto hentTilkjentYtelseDagytelse(List resourceLinker) { + return hentTilkjentYtelseDagytelseHvisFinnes(resourceLinker).orElseThrow(() -> { throw new IllegalStateException("Klarte ikke hente Tilkjent ytelse foreldrepenger for behandling: " + hentBehandlingId(resourceLinker)); }); } - default Optional hentTilkjentYtelseForeldrepengerHvisFinnes(List resourceLinker) { + default Optional hentTilkjentYtelseDagytelseHvisFinnes(List resourceLinker) { return resourceLinker.stream() - .filter(dto -> "beregningsresultat-dagytelse".equals(dto.getRel())) + .filter(dto -> "tilkjentytelse-dagytelse".equals(dto.getRel())) .findFirst() - .flatMap(link -> hentDtoFraLink(link, TilkjentYtelseMedUttaksplanDto.class)); + .flatMap(link -> hentDtoFraLink(link, TilkjentYtelseDagytelseDto.class)); } default Optional hentSoknadHvisFinnes(List resourceLinker) { diff --git a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapper.java b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapper.java index d3ef0a66c..5acb18686 100644 --- a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapper.java +++ b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapper.java @@ -1,15 +1,13 @@ package no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.mapper; import java.util.ArrayList; -import java.util.Arrays; import java.util.List; import java.util.function.UnaryOperator; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; import no.nav.foreldrepenger.fpformidling.beregningsgrunnlag.AktivitetStatus; -import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse.TilkjentYtelseAndelDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse.TilkjentYtelseEngangsstønadDto; -import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse.TilkjentYtelseMedUttaksplanDto; -import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse.TilkjentYtelsePeriodeDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.mapper.sortering.PeriodeComparator; import no.nav.foreldrepenger.fpformidling.tilkjentytelse.TilkjentYtelseAndel; import no.nav.foreldrepenger.fpformidling.tilkjentytelse.TilkjentYtelseEngangsstønad; @@ -18,6 +16,7 @@ import no.nav.foreldrepenger.fpformidling.typer.ArbeidsforholdRef; import no.nav.foreldrepenger.fpformidling.typer.DatoIntervall; import no.nav.foreldrepenger.fpformidling.virksomhet.Arbeidsgiver; +import no.nav.foreldrepenger.kontrakter.fpsak.tilkjentytelse.TilkjentYtelseDagytelseDto; public class TilkjentYtelseDtoMapper { @@ -29,8 +28,9 @@ private TilkjentYtelseDtoMapper() { return new TilkjentYtelseEngangsstønad(dto.beregnetTilkjentYtelse()); } - public static TilkjentYtelseForeldrepenger mapTilkjentYtelseFPFraDto(TilkjentYtelseMedUttaksplanDto dto, UnaryOperator hentNavn) { - var tilkjentYtelsePerioder = Arrays.stream(dto.getPerioder()) + public static TilkjentYtelseForeldrepenger mapTilkjentYtelseDagytelseFraDto(TilkjentYtelseDagytelseDto dto, UnaryOperator hentNavn) { + var tilkjentYtelsePerioder = dto.perioder() + .stream() .map(p -> mapPeriodeFraDto(p, hentNavn)) .sorted(PeriodeComparator.TILKJENTYTELSERESULTAT) .toList(); @@ -38,22 +38,22 @@ public static TilkjentYtelseForeldrepenger mapTilkjentYtelseFPFraDto(TilkjentYte } - private static TilkjentYtelsePeriode mapPeriodeFraDto(TilkjentYtelsePeriodeDto dto, UnaryOperator hentNavn) { + private static TilkjentYtelsePeriode mapPeriodeFraDto(TilkjentYtelseDagytelseDto.@Valid @NotNull TilkjentYtelsePeriodeDto dto, UnaryOperator hentNavn) { List andelListe = new ArrayList<>(); - for (var tilkjentYtelseAndelDto : dto.getAndeler()) { + for (var tilkjentYtelseAndelDto : dto.andeler()) { andelListe.add(mapAndelFraDto(tilkjentYtelseAndelDto, hentNavn)); } return TilkjentYtelsePeriode.ny() - .medDagsats((long) dto.getDagsats()) - .medPeriode(DatoIntervall.fraOgMedTilOgMed(dto.getFom(), dto.getTom())) + .medDagsats((long) dto.dagsats()) + .medPeriode(DatoIntervall.fraOgMedTilOgMed(dto.fom(), dto.tom())) .medAndeler(andelListe) .build(); } //Fpsak slår sammen andeler i dto, så vi må eventuelt splitte dem opp igjen - private static TilkjentYtelseAndel mapAndelFraDto(TilkjentYtelseAndelDto dto, UnaryOperator hentNavn) { + private static TilkjentYtelseAndel mapAndelFraDto(TilkjentYtelseDagytelseDto.@Valid @NotNull TilkjentYtelseAndelDto dto, UnaryOperator hentNavn) { return TilkjentYtelseAndel.ny() - .medAktivitetStatus(dto.aktivitetStatus()) + .medAktivitetStatus(mapAktivitetstatusFraKontrakt(dto.aktivitetstatus())) .medArbeidsforholdRef( dto.arbeidsforholdId() != null && !dto.arbeidsforholdId().isEmpty() ? ArbeidsforholdRef.ref(dto.arbeidsforholdId()) : null) .medArbeidsgiver(mapArbeidsgiverFraDto(dto, hentNavn)) @@ -65,14 +65,32 @@ private static TilkjentYtelseAndel mapAndelFraDto(TilkjentYtelseAndelDto dto, Un .build(); } - private static Arbeidsgiver mapArbeidsgiverFraDto(TilkjentYtelseAndelDto dto, UnaryOperator hentNavn) { - if (!AktivitetStatus.ARBEIDSTAKER.equals(dto.aktivitetStatus()) || dto.arbeidsgiverReferanse() == null) { + private static AktivitetStatus mapAktivitetstatusFraKontrakt(TilkjentYtelseDagytelseDto.Aktivitetstatus aktivitetstatus) { + return switch(aktivitetstatus) { + case ARBEIDSAVKLARINGSPENGER -> AktivitetStatus.ARBEIDSAVKLARINGSPENGER; + case ARBEIDSTAKER -> AktivitetStatus.ARBEIDSTAKER; + case DAGPENGER -> AktivitetStatus.DAGPENGER; + case FRILANSER -> AktivitetStatus.FRILANSER; + case MILITÆR_ELLER_SIVIL -> AktivitetStatus.MILITÆR_ELLER_SIVIL; + case SELVSTENDIG_NÆRINGSDRIVENDE -> AktivitetStatus.SELVSTENDIG_NÆRINGSDRIVENDE; + case BRUKERS_ANDEL -> AktivitetStatus.BRUKERS_ANDEL; + case KUN_YTELSE -> AktivitetStatus.KUN_YTELSE; + case TTLSTØTENDE_YTELSE -> AktivitetStatus.TTLSTØTENDE_YTELSE; + case VENTELØNN_VARTPENGER -> AktivitetStatus.VENTELØNN_VARTPENGER; + case KOMBINERT_AT_FL, KOMBINERT_AT_SN, KOMBINERT_FL_SN, + KOMBINERT_AT_FL_SN, UDEFINERT -> throw new IllegalStateException("Ugyldig aktivitetstatus for tilkjent ytelse andel: " + aktivitetstatus); + }; + } + + + private static Arbeidsgiver mapArbeidsgiverFraDto(TilkjentYtelseDagytelseDto.@Valid @NotNull TilkjentYtelseAndelDto dto, UnaryOperator hentNavn) { + if (!TilkjentYtelseDagytelseDto.Aktivitetstatus.ARBEIDSTAKER.equals(dto.aktivitetstatus()) || dto.arbeidsgiverReferanse() == null) { return null; } return new Arbeidsgiver(dto.arbeidsgiverReferanse(), hentNavn.apply(dto.arbeidsgiverReferanse())); } - private static int summerDagsats(TilkjentYtelseAndelDto dto) { + private static int summerDagsats(TilkjentYtelseDagytelseDto.TilkjentYtelseAndelDto dto) { var sum = 0; if (dto.tilSoker() != null) { sum += dto.tilSoker(); diff --git a/brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/avslagfp/ForeldrepengerAvslagDokumentdataMapperTest.java b/brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/avslagfp/ForeldrepengerAvslagDokumentdataMapperTest.java index ceeda81ba..157484ec3 100644 --- a/brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/avslagfp/ForeldrepengerAvslagDokumentdataMapperTest.java +++ b/brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/avslagfp/ForeldrepengerAvslagDokumentdataMapperTest.java @@ -97,7 +97,7 @@ void before() { when(domeneobjektProvider.hentFagsakBackend(any(Behandling.class))).thenReturn(opprettFagsakBackend()); when(domeneobjektProvider.hentMottatteDokumenter(any(Behandling.class))).thenReturn(opprettMottattDokument()); when(domeneobjektProvider.hentFamiliehendelse(any(Behandling.class))).thenReturn(opprettFamiliehendelse()); - when(domeneobjektProvider.hentTilkjentYtelseFPHvisFinnes(any(Behandling.class))).thenReturn(opprettTilkjentYtelseFP()); + when(domeneobjektProvider.hentTilkjentYtelseDagytelseHvisFinnes(any(Behandling.class))).thenReturn(opprettTilkjentYtelseFP()); when(domeneobjektProvider.hentBeregningsgrunnlagHvisFinnes(any(Behandling.class))).thenReturn(opprettBeregningsgrunnlag()); lenient().when(domeneobjektProvider.hentForeldrepengerUttakHvisFinnes(any(Behandling.class))).thenReturn(opprettUttaksresultat()); } diff --git "a/brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/opphorsvp/SvangerskapspengerOpph\303\270rDokumentdataMapperTest.java" "b/brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/opphorsvp/SvangerskapspengerOpph\303\270rDokumentdataMapperTest.java" index be020ed66..545a718d1 100644 --- "a/brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/opphorsvp/SvangerskapspengerOpph\303\270rDokumentdataMapperTest.java" +++ "b/brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/mapper/opphorsvp/SvangerskapspengerOpph\303\270rDokumentdataMapperTest.java" @@ -87,7 +87,7 @@ void before() { when(domeneobjektProvider.hentFamiliehendelse(any(Behandling.class))).thenReturn(opprettFamiliehendelse()); when(domeneobjektProvider.hentBeregningsgrunnlagHvisFinnes(any(Behandling.class))).thenReturn(opprettBeregningsgrunnlag()); when(domeneobjektProvider.hentSvangerskapspengerUttakHvisFinnes(any(Behandling.class))).thenReturn(opprettUttaksresultat()); - when(domeneobjektProvider.hentTilkjentYtelseFPHvisFinnes(any(Behandling.class))).thenReturn(opprettTilkjentYtelse()); + when(domeneobjektProvider.hentTilkjentYtelseDagytelseHvisFinnes(any(Behandling.class))).thenReturn(opprettTilkjentYtelse()); } @Test diff --git a/pom.xml b/pom.xml index 6f00e5e64..e5ba265c6 100644 --- a/pom.xml +++ b/pom.xml @@ -32,7 +32,7 @@ 5.1.1 4.0.0 - 7.1.1 + 7.1.3 4.3.1 From 60aaa1518633bf86bb29c1b3394495ad52c86016 Mon Sep 17 00:00:00 2001 From: Petter Ekern Date: Mon, 23 Oct 2023 15:06:57 +0200 Subject: [PATCH 2/4] TFP-5605: Samme for ES + opprydning --- .../integrasjon/fpsak/Behandlinger.java | 2 +- .../TilkjentYtelseAndelDto.java | 9 ---- ...ilkjentYtelseEngangsst\303\270nadDto.java" | 5 --- .../TilkjentYtelseMedUttaksplanDto.java | 16 ------- .../TilkjentYtelsePeriodeDto.java | 43 ------------------- .../fpsak/mapper/TilkjentYtelseDtoMapper.java | 2 +- 6 files changed, 2 insertions(+), 75 deletions(-) delete mode 100644 brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseAndelDto.java delete mode 100644 "brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseEngangsst\303\270nadDto.java" delete mode 100644 brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseMedUttaksplanDto.java delete mode 100644 brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelsePeriodeDto.java diff --git a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/Behandlinger.java b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/Behandlinger.java index 8a3f1b35d..a35a39984 100644 --- a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/Behandlinger.java +++ b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/Behandlinger.java @@ -18,7 +18,6 @@ import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.klage.MottattKlagedokumentDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.personopplysning.VergeDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.soknad.SoknadBackendDto; -import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse.TilkjentYtelseEngangsstønadDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.uttak.StartdatoUtsattDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.uttak.UttakResultatPerioderDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.uttak.YtelseFordelingDto; @@ -27,6 +26,7 @@ import no.nav.foreldrepenger.kontrakter.formidling.v1.DokumentProdusertDto; import no.nav.foreldrepenger.kontrakter.fpsak.beregningsgrunnlag.v2.BeregningsgrunnlagDto; import no.nav.foreldrepenger.kontrakter.fpsak.tilkjentytelse.TilkjentYtelseDagytelseDto; +import no.nav.foreldrepenger.kontrakter.fpsak.tilkjentytelse.TilkjentYtelseEngangsstønadDto; public interface Behandlinger { diff --git a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseAndelDto.java b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseAndelDto.java deleted file mode 100644 index 1101898a9..000000000 --- a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseAndelDto.java +++ /dev/null @@ -1,9 +0,0 @@ -package no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse; - -import no.nav.foreldrepenger.fpformidling.beregningsgrunnlag.AktivitetStatus; - -import java.math.BigDecimal; - -public record TilkjentYtelseAndelDto(String arbeidsgiverReferanse, Integer refusjon, Integer tilSoker, AktivitetStatus aktivitetStatus, - String arbeidsforholdId, BigDecimal stillingsprosent) { -} diff --git "a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseEngangsst\303\270nadDto.java" "b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseEngangsst\303\270nadDto.java" deleted file mode 100644 index 590cbdac4..000000000 --- "a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseEngangsst\303\270nadDto.java" +++ /dev/null @@ -1,5 +0,0 @@ -package no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse; - -public record TilkjentYtelseEngangsstønadDto(Long beregnetTilkjentYtelse) { - -} diff --git a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseMedUttaksplanDto.java b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseMedUttaksplanDto.java deleted file mode 100644 index 027f5e88f..000000000 --- a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelseMedUttaksplanDto.java +++ /dev/null @@ -1,16 +0,0 @@ -package no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse; - -import java.util.Arrays; - -public class TilkjentYtelseMedUttaksplanDto { - private TilkjentYtelsePeriodeDto[] perioder; - - public TilkjentYtelsePeriodeDto[] getPerioder() { - return Arrays.copyOf(perioder, perioder.length); - } - - public void setPerioder(TilkjentYtelsePeriodeDto[] perioder) { - this.perioder = perioder; - } - -} diff --git a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelsePeriodeDto.java b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelsePeriodeDto.java deleted file mode 100644 index a5f23b16d..000000000 --- a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/dto/tilkjentytelse/TilkjentYtelsePeriodeDto.java +++ /dev/null @@ -1,43 +0,0 @@ -package no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse; - -import java.time.LocalDate; -import java.util.Arrays; - -public class TilkjentYtelsePeriodeDto { - private LocalDate fom; - private LocalDate tom; - private int dagsats; - private TilkjentYtelseAndelDto[] andeler; - - public LocalDate getFom() { - return fom; - } - - public LocalDate getTom() { - return tom; - } - - public int getDagsats() { - return dagsats; - } - - public TilkjentYtelseAndelDto[] getAndeler() { - return Arrays.copyOf(andeler, andeler.length); - } - - public void setFom(LocalDate fom) { - this.fom = fom; - } - - public void setTom(LocalDate tom) { - this.tom = tom; - } - - public void setDagsats(int dagsats) { - this.dagsats = dagsats; - } - - public void setAndeler(TilkjentYtelseAndelDto[] andeler) { - this.andeler = andeler; - } -} diff --git a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapper.java b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapper.java index 5acb18686..44da8e66e 100644 --- a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapper.java +++ b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapper.java @@ -7,7 +7,6 @@ import jakarta.validation.Valid; import jakarta.validation.constraints.NotNull; import no.nav.foreldrepenger.fpformidling.beregningsgrunnlag.AktivitetStatus; -import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.dto.tilkjentytelse.TilkjentYtelseEngangsstønadDto; import no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.mapper.sortering.PeriodeComparator; import no.nav.foreldrepenger.fpformidling.tilkjentytelse.TilkjentYtelseAndel; import no.nav.foreldrepenger.fpformidling.tilkjentytelse.TilkjentYtelseEngangsstønad; @@ -17,6 +16,7 @@ import no.nav.foreldrepenger.fpformidling.typer.DatoIntervall; import no.nav.foreldrepenger.fpformidling.virksomhet.Arbeidsgiver; import no.nav.foreldrepenger.kontrakter.fpsak.tilkjentytelse.TilkjentYtelseDagytelseDto; +import no.nav.foreldrepenger.kontrakter.fpsak.tilkjentytelse.TilkjentYtelseEngangsstønadDto; public class TilkjentYtelseDtoMapper { From ac503551b98d9580a7e3a643ef99b3d6022e9f1b Mon Sep 17 00:00:00 2001 From: Petter Ekern Date: Tue, 24 Oct 2023 14:45:26 +0200 Subject: [PATCH 3/4] TFP-5605: Endrer til formidlingressurser --- .../brevproduksjon/tjenester/DomeneobjektProvider.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/tjenester/DomeneobjektProvider.java b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/tjenester/DomeneobjektProvider.java index 51bdecbb4..2327d0596 100644 --- a/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/tjenester/DomeneobjektProvider.java +++ b/brevproduksjon/src/main/java/no/nav/foreldrepenger/fpformidling/brevproduksjon/tjenester/DomeneobjektProvider.java @@ -92,21 +92,21 @@ public Optional hentOriginalBehandlingHvisFinnes(Behandling behandli public TilkjentYtelseEngangsstønad hentTilkjentYtelseEngangsstønad(Behandling behandling) { return TilkjentYtelseDtoMapper.mapTilkjentYtelseESFraDto( - behandlingRestKlient.hentTilkjentYtelseEngangsstønad(behandling.getResourceLinker())); + behandlingRestKlient.hentTilkjentYtelseEngangsstønad(behandling.getFormidlingRessurser())); } public Optional hentTilkjentYtelseESHvisFinnes(Behandling behandling) { - return behandlingRestKlient.hentTilkjentYtelseEngangsstønadHvisFinnes(behandling.getResourceLinker()) + return behandlingRestKlient.hentTilkjentYtelseEngangsstønadHvisFinnes(behandling.getFormidlingRessurser()) .map(TilkjentYtelseDtoMapper::mapTilkjentYtelseESFraDto); } public TilkjentYtelseForeldrepenger hentTilkjentYtelseForeldrepenger(Behandling behandling) { return TilkjentYtelseDtoMapper.mapTilkjentYtelseDagytelseFraDto( - behandlingRestKlient.hentTilkjentYtelseDagytelse(behandling.getResourceLinker()), arbeidsgiverTjeneste::hentArbeidsgiverNavn); + behandlingRestKlient.hentTilkjentYtelseDagytelse(behandling.getFormidlingRessurser()), arbeidsgiverTjeneste::hentArbeidsgiverNavn); } public Optional hentTilkjentYtelseDagytelseHvisFinnes(Behandling behandling) { - return behandlingRestKlient.hentTilkjentYtelseDagytelseHvisFinnes(behandling.getResourceLinker()) + return behandlingRestKlient.hentTilkjentYtelseDagytelseHvisFinnes(behandling.getFormidlingRessurser()) .map(r -> TilkjentYtelseDtoMapper.mapTilkjentYtelseDagytelseFraDto(r, arbeidsgiverTjeneste::hentArbeidsgiverNavn)); } From 9756d6256883e72e014207f22e8f50f697428e01 Mon Sep 17 00:00:00 2001 From: Petter Ekern Date: Wed, 25 Oct 2023 10:30:33 +0200 Subject: [PATCH 4/4] TFP-5605: Legger til test av mapper --- .../mapper/TilkjentYtelseDtoMapperTest.java | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapperTest.java diff --git a/brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapperTest.java b/brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapperTest.java new file mode 100644 index 000000000..0c7bbf7bd --- /dev/null +++ b/brevproduksjon/src/test/java/no/nav/foreldrepenger/fpformidling/integrasjon/fpsak/mapper/TilkjentYtelseDtoMapperTest.java @@ -0,0 +1,65 @@ +package no.nav.foreldrepenger.fpformidling.integrasjon.fpsak.mapper; + +import no.nav.foreldrepenger.fpformidling.beregningsgrunnlag.AktivitetStatus; +import no.nav.foreldrepenger.kontrakter.fpsak.tilkjentytelse.TilkjentYtelseDagytelseDto; + +import no.nav.foreldrepenger.kontrakter.fpsak.tilkjentytelse.TilkjentYtelseEngangsstønadDto; + +import org.junit.jupiter.api.Test; + +import java.math.BigDecimal; +import java.time.LocalDate; +import java.util.Collections; + +import static org.assertj.core.api.Assertions.assertThat; + +class TilkjentYtelseDtoMapperTest { + private static final String AG_NAVN = "NAV"; + private static String hentAGNavn(String ref) { + return AG_NAVN; + } + @Test + void skal_teste_tilkjent_ytelse_dagytelse_mapper() { + // Arrange + var andelDto = new TilkjentYtelseDagytelseDto.TilkjentYtelseAndelDto("999999999", 100, 200, TilkjentYtelseDagytelseDto.Aktivitetstatus.ARBEIDSTAKER, "arb1", BigDecimal.valueOf(100)); + var periodeDto = new TilkjentYtelseDagytelseDto.TilkjentYtelsePeriodeDto(LocalDate.of(2021, 1, 1), LocalDate.of(2021,12,31), 200, Collections.singletonList(andelDto)); + var resultatDto = new TilkjentYtelseDagytelseDto(Collections.singletonList(periodeDto)); + + // Act + var resultatDomene = TilkjentYtelseDtoMapper.mapTilkjentYtelseDagytelseFraDto(resultatDto, + TilkjentYtelseDtoMapperTest::hentAGNavn); + assertThat(resultatDomene).isNotNull(); + assertThat(resultatDomene.getPerioder()).hasSameSizeAs(resultatDto.perioder()); + + var periodeDomene = resultatDomene.getPerioder().get(0); + assertThat(periodeDomene.getPeriodeFom()).isEqualTo(periodeDto.fom()); + assertThat(periodeDomene.getPeriodeTom()).isEqualTo(periodeDto.tom()); + assertThat(periodeDomene.getDagsats()).isEqualTo(periodeDto.dagsats().longValue()); + assertThat(periodeDomene.getUtbetaltTilSøker()).isEqualTo(andelDto.tilSoker().longValue()); + assertThat(periodeDomene.getAndeler()).hasSameSizeAs(periodeDto.andeler()); + + var andelDomene = periodeDomene.getAndeler().get(0); + assertThat(andelDomene.getDagsats()).isEqualTo(andelDto.tilSoker() + andelDto.refusjon()); + assertThat(andelDomene.getStillingsprosent()).isEqualByComparingTo(andelDto.stillingsprosent()); + assertThat(andelDomene.getUtbetalesTilBruker()).isEqualTo(andelDto.tilSoker()); + assertThat(andelDomene.getAktivitetStatus()).isEqualTo(AktivitetStatus.ARBEIDSTAKER); + assertThat(andelDomene.getArbeidsgiver()).isPresent(); + assertThat(andelDomene.getArbeidsgiver().get().arbeidsgiverReferanse()).isEqualTo(andelDto.arbeidsgiverReferanse()); + assertThat(andelDomene.getArbeidsgiver().get().navn()).isEqualTo(AG_NAVN); + assertThat(andelDomene.getArbeidsforholdRef().getReferanse()).isEqualTo(andelDto.arbeidsforholdId()); + } + + @Test + void skal_teste_tilkjent_ytelse_engangsstønad_mapper() { + // Arrange + var resultatDto = new TilkjentYtelseEngangsstønadDto(90000L); + + // Act + var resultatDomene = TilkjentYtelseDtoMapper.mapTilkjentYtelseESFraDto(resultatDto); + + // Assert + assertThat(resultatDomene).isNotNull(); + assertThat(resultatDomene.beløp()).isEqualTo(resultatDto.beregnetTilkjentYtelse()); + } + +}