diff --git a/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingMetrikker.java b/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingMetrikker.java index 4e75ef1a324..7014626e87e 100644 --- a/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingMetrikker.java +++ b/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingMetrikker.java @@ -2,47 +2,37 @@ import static no.nav.vedtak.log.metrics.MetricsUtil.REGISTRY; -import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Optional; import java.util.concurrent.atomic.AtomicLong; -import jakarta.enterprise.context.ApplicationScoped; - import io.micrometer.core.instrument.Tag; -import no.nav.foreldrepenger.datavarehus.metrikker.BehandlingStatistikkRepository.BehandlingStatistikk.Type; -@ApplicationScoped public class BehandlingMetrikker { private static final String BEHANDLING_METRIKK_NAVN = "fp.behandlinger.antall"; - private static final Map BEHANDLING_GAUGES = new HashMap<>(); + private static final Map BEHANDLING_GAUGES = new HashMap<>(); BehandlingMetrikker() { // CDI } - static List tilTags(Type type) { - var tags = new ArrayList(); - if (type.ytelseType() != null) { - tags.add(Tag.of("ytelse_type", type.ytelseType().getNavn())); - } - if (type.behandlingType() != null) { - tags.add(Tag.of("behandling_type", type.behandlingType().getNavn())); - } - if (type.behandlingsårsak() != null) { - tags.add(Tag.of("behandling_aarsak_type", type.behandlingsårsak().name())); + public static void setAntall(BehandlingStatistikkRepository.Behandlingsårsak behandlingsårsak, Long antall) { + if (BEHANDLING_GAUGES.containsKey(behandlingsårsak)) { + BEHANDLING_GAUGES.get(behandlingsårsak).set(antall); + } else { + var gaugeValue = REGISTRY.gauge(BEHANDLING_METRIKK_NAVN, tilTags(behandlingsårsak), new AtomicLong(antall)); + BEHANDLING_GAUGES.put(behandlingsårsak, gaugeValue); } - return tags; } - public void setAntall(Type type, Long antall) { - if (BEHANDLING_GAUGES.containsKey(type)) { - BEHANDLING_GAUGES.get(type).set(antall); - } else { - var gaugeValue = REGISTRY.gauge(BEHANDLING_METRIKK_NAVN, tilTags(type), new AtomicLong(antall)); - BEHANDLING_GAUGES.put(type, gaugeValue); - } + static List tilTags(BehandlingStatistikkRepository.Behandlingsårsak behandlingsårsak) { + return Optional.ofNullable(behandlingsårsak) + .map(ba -> List.of(Tag.of("behandling_aarsak_type", behandlingsårsak.name()))) + .orElseGet(List::of); } + + } diff --git a/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingStatistikkRepository.java b/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingStatistikkRepository.java index 27c6d1bfbf0..2f8ee75b0c1 100644 --- a/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingStatistikkRepository.java +++ b/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingStatistikkRepository.java @@ -12,9 +12,7 @@ import org.hibernate.jpa.HibernateHints; -import no.nav.foreldrepenger.behandlingslager.behandling.BehandlingType; import no.nav.foreldrepenger.behandlingslager.behandling.BehandlingÅrsakType; -import no.nav.foreldrepenger.behandlingslager.fagsak.FagsakYtelseType; @ApplicationScoped public class BehandlingStatistikkRepository { @@ -29,41 +27,33 @@ public BehandlingStatistikkRepository(EntityManager entityManager) { this.entityManager = entityManager; } - public List hentAntallBehandlinger() { + public List hentAntallBehandlingsårsaker() { var query = entityManager.createQuery(""" - select f.ytelseType, b.behandlingType, ba.behandlingÅrsakType, count(1) as antall from Fagsak f - join Behandling b on b.fagsak.id = f.id - left outer join BehandlingÅrsak ba on ba.behandling.id = b.id - group by f.ytelseType, b.behandlingType, ba.behandlingÅrsakType - """, BehandlingStatistikkEntitet.class) + select ba.behandlingÅrsakType, count(1) as antall + from BehandlingÅrsak ba + group by ba.behandlingÅrsakType + """, BehandlingÅrsakQR.class) .setHint(HibernateHints.HINT_READ_ONLY, "true"); var behandlingStatistikkEntitet = query.getResultList(); return mapTilBehandlingStatistikk(behandlingStatistikkEntitet); } - static List mapTilBehandlingStatistikk(List behandlingStatistikkEntitet) { + static List mapTilBehandlingStatistikk(List behandlingStatistikkEntitet) { return behandlingStatistikkEntitet.stream() .map(BehandlingStatistikkRepository::tilBehandlingStatistikk) - .collect( - groupingBy(bs -> bs.type().ytelseType, - groupingBy(bs -> Optional.ofNullable(bs.type().behandlingType()).orElse(BehandlingType.UDEFINERT), - groupingBy(bs -> Optional.ofNullable(bs.type().behandlingsårsak()).orElse(Behandlingsårsak.ANNET), - summarizingLong(bs -> Optional.ofNullable(bs.antall()).orElse(0L))))) - ) + .collect(groupingBy(bs -> Optional.ofNullable(bs.behandlingsårsak()).orElse(Behandlingsårsak.ANNET), + summarizingLong(bs -> Optional.ofNullable(bs.antall()).orElse(0L)))) .entrySet() .stream() - .flatMap(ytelseTypeEntry -> ytelseTypeEntry.getValue().entrySet().stream() - .flatMap(behandlingTypeEntry -> behandlingTypeEntry.getValue().entrySet().stream() - .map(behandlingårsakEntry -> - new BehandlingStatistikk(new BehandlingStatistikk.Type(ytelseTypeEntry.getKey(), behandlingTypeEntry.getKey(), behandlingårsakEntry.getKey()), behandlingårsakEntry.getValue().getSum())))) + .map(behandlingårsakEntry -> new BehandlingStatistikk(behandlingårsakEntry.getKey(), behandlingårsakEntry.getValue().getSum())) .toList(); } - private static BehandlingStatistikk tilBehandlingStatistikk(BehandlingStatistikkEntitet entitet) { - return new BehandlingStatistikk(new BehandlingStatistikk.Type(entitet.ytelseType(), entitet.behandlingType(), tilBehandlingÅrsak(entitet.behandlingType(), entitet.behandlingArsakType())), entitet.antall()); + private static BehandlingStatistikk tilBehandlingStatistikk(BehandlingÅrsakQR entitet) { + return new BehandlingStatistikk(tilBehandlingÅrsak(entitet.behandlingArsakType()), entitet.antall()); } - private static Behandlingsårsak tilBehandlingÅrsak(BehandlingType behandlingType, BehandlingÅrsakType behandlingÅrsakType) { + private static Behandlingsårsak tilBehandlingÅrsak(BehandlingÅrsakType behandlingÅrsakType) { return switch (behandlingÅrsakType) { case RE_FEIL_I_LOVANDVENDELSE, RE_FEIL_REGELVERKSFORSTÅELSE, @@ -95,35 +85,17 @@ private static BehandlingStatistikk tilBehandlingStatistikk(BehandlingStatistikk RE_HENDELSE_UTFLYTTING -> Behandlingsårsak.FOLKEREGISTER; case RE_VEDTAK_PLEIEPENGER -> Behandlingsårsak.PLEIEPENGER; case OPPHØR_YTELSE_NYTT_BARN -> Behandlingsårsak.NESTESAK; - case UDEFINERT -> switch (behandlingType) { - case FØRSTEGANGSSØKNAD -> Behandlingsårsak.SØKNAD; - case KLAGE, ANKE -> Behandlingsårsak.KLAGE_ANKE; - case null, default -> Behandlingsårsak.ANNET; - }; - case null -> switch (behandlingType) { - case FØRSTEGANGSSØKNAD -> Behandlingsårsak.SØKNAD; - case KLAGE, ANKE -> Behandlingsårsak.KLAGE_ANKE; - case null, default -> Behandlingsårsak.ANNET; - }; + case null -> Behandlingsårsak.ANNET; default -> Behandlingsårsak.ANNET; }; } - record BehandlingStatistikkEntitet(FagsakYtelseType ytelseType, - BehandlingType behandlingType, - BehandlingÅrsakType behandlingArsakType, - Long antall) { - } + record BehandlingÅrsakQR(BehandlingÅrsakType behandlingArsakType, Long antall) { } - record BehandlingStatistikk(Type type, Long antall) { - record Type(FagsakYtelseType ytelseType, - BehandlingType behandlingType, - Behandlingsårsak behandlingsårsak) { - } - } + public record BehandlingStatistikk(Behandlingsårsak behandlingsårsak, Long antall) { } - enum Behandlingsårsak { + public enum Behandlingsårsak { SØKNAD, KLAGE_ANKE, INNTEKTSMELDING, diff --git a/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/DokumentMetrikker.java b/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/DokumentMetrikker.java new file mode 100644 index 00000000000..5857f68d71f --- /dev/null +++ b/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/DokumentMetrikker.java @@ -0,0 +1,36 @@ +package no.nav.foreldrepenger.datavarehus.metrikker; + +import static no.nav.vedtak.log.metrics.MetricsUtil.REGISTRY; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.concurrent.atomic.AtomicLong; + +import io.micrometer.core.instrument.Tag; + +public class DokumentMetrikker { + + private static final String DOKUMENT_METRIKK_NAVN = "fp.dokument.antall"; + private static final Map DOKUMENT_GAUGES = new HashMap<>(); + + DokumentMetrikker() { + // CDI + } + + public static void setAntall(DokumentStatistikkRepository.Dokumenttype dokumenttype, Long antall) { + if (DOKUMENT_GAUGES.containsKey(dokumenttype)) { + DOKUMENT_GAUGES.get(dokumenttype).set(antall); + } else { + var gaugeValue = REGISTRY.gauge(DOKUMENT_METRIKK_NAVN, tilTags(dokumenttype), new AtomicLong(antall)); + DOKUMENT_GAUGES.put(dokumenttype, gaugeValue); + } + } + + static List tilTags(DokumentStatistikkRepository.Dokumenttype dokumenttype) { + return Optional.ofNullable(dokumenttype) + .map(dok -> List.of(Tag.of("dokument_type", dok.name()))) + .orElseGet(List::of); + } +} diff --git a/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/DokumentStatistikkRepository.java b/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/DokumentStatistikkRepository.java new file mode 100644 index 00000000000..ef4810d2014 --- /dev/null +++ b/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/DokumentStatistikkRepository.java @@ -0,0 +1,95 @@ +package no.nav.foreldrepenger.datavarehus.metrikker; + +import static java.util.stream.Collectors.groupingBy; +import static java.util.stream.Collectors.summarizingLong; + +import java.util.List; +import java.util.Optional; + +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.inject.Inject; +import jakarta.persistence.EntityManager; + +import org.hibernate.jpa.HibernateHints; + +import no.nav.foreldrepenger.behandlingslager.behandling.DokumentTypeId; + +@ApplicationScoped +public class DokumentStatistikkRepository { + private EntityManager entityManager; + + DokumentStatistikkRepository() { + // for CDI proxy + } + + @Inject + public DokumentStatistikkRepository(EntityManager entityManager) { + this.entityManager = entityManager; + } + + public List hentAntallDokumenttyper() { + var query = entityManager.createQuery(""" + select md.dokumentTypeId, count(1) as antall + from MottattDokument md + group by md.dokumentTypeId + """, DokumentTypeQR.class) + .setHint(HibernateHints.HINT_READ_ONLY, "true"); + var behandlingStatistikkEntitet = query.getResultList(); + return mapTilBehandlingStatistikk(behandlingStatistikkEntitet); + } + + static List mapTilBehandlingStatistikk(List behandlingStatistikkEntitet) { + return behandlingStatistikkEntitet.stream() + .map(DokumentStatistikkRepository::tilBehandlingStatistikk) + .collect(groupingBy(bs -> Optional.ofNullable(bs.dokumenttype()).orElse(Dokumenttype.ANNET), + summarizingLong(bs -> Optional.ofNullable(bs.antall()).orElse(0L)))) + .entrySet() + .stream() + .map(dokumentTypeEntry -> new DokumentStatistikk(dokumentTypeEntry.getKey(), dokumentTypeEntry.getValue().getSum())) + .toList(); + } + + private static DokumentStatistikk tilBehandlingStatistikk(DokumentTypeQR entitet) { + return new DokumentStatistikk(tilDokumenttype(entitet.dokumentTypeId()), entitet.antall()); + } + + private static Dokumenttype tilDokumenttype(DokumentTypeId dokumentTypeId) { + return switch (dokumentTypeId) { + case SØKNAD_ENGANGSSTØNAD_FØDSEL, SØKNAD_ENGANGSSTØNAD_ADOPSJON -> Dokumenttype.ENGANGSSTØNAD; + case SØKNAD_FORELDREPENGER_FØDSEL, SØKNAD_FORELDREPENGER_ADOPSJON -> Dokumenttype.FORELDREPENGER; + case SØKNAD_SVANGERSKAPSPENGER, I000109 -> Dokumenttype.SVANGERSKAPSPENGER; + case FORELDREPENGER_ENDRING_SØKNAD, FLEKSIBELT_UTTAK_FORELDREPENGER -> Dokumenttype.ENDRINGSSØKNAD; + case INNTEKTSMELDING -> Dokumenttype.INNTEKTSMELDING; + case KLAGE_DOKUMENT, KLAGE_ETTERSENDELSE -> Dokumenttype.KLAGE_ANKE; + // case TILBAKEKREVING_UTTALSELSE, TILBAKEBETALING_UTTALSELSE -> Dokumenttype.TILBAKE; Mottas ikke i fpsak. Vil være 0 + case DOKUMENTASJON_AV_TERMIN_ELLER_FØDSEL, DOKUMENTASJON_AV_OMSORGSOVERTAKELSE, BEKREFTELSE_VENTET_FØDSELSDATO, + FØDSELSATTEST, TERMINBEKREFTELSE -> Dokumenttype.FAMHENDELSE; + case LEGEERKLÆRING, DOK_INNLEGGELSE, BESKRIVELSE_FUNKSJONSNEDSETTELSE, MOR_INNLAGT, MOR_SYK, + FAR_SYK, FAR_INNLAGT, BARN_INNLAGT-> Dokumenttype.SYKDOM; + case DOK_FERIE, DOK_ARBEIDSFORHOLD, BEKREFTELSE_FRA_ARBEIDSGIVER, BEKREFTELSE_FRA_STUDIESTED, + BEKREFTELSE_DELTAR_KVALIFISERINGSPROGRAM, DOK_HV, DOK_NAV_TILTAK, MOR_ARBEID_STUDIE, MOR_ARBEID, MOR_STUDIE, + MOR_KVALIFISERINGSPROGRAM, I000112-> Dokumenttype.AKTIVITETSKRAV; + case null -> Dokumenttype.ANNET; + default -> Dokumenttype.ANNET; + }; + + } + + record DokumentTypeQR(DokumentTypeId dokumentTypeId, Long antall) { } + + + public record DokumentStatistikk(Dokumenttype dokumenttype, Long antall) { } + + public enum Dokumenttype { + ENGANGSSTØNAD, + FORELDREPENGER, + SVANGERSKAPSPENGER, + ENDRINGSSØKNAD, + INNTEKTSMELDING, + KLAGE_ANKE, + FAMHENDELSE, + SYKDOM, + AKTIVITETSKRAV, + ANNET + } +} diff --git a/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/StatistikkMetrikkTask.java b/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/StatistikkMetrikkTask.java index e72739d495a..d6273d26417 100644 --- a/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/StatistikkMetrikkTask.java +++ b/domenetjenester/datavarehus/src/main/java/no/nav/foreldrepenger/datavarehus/metrikker/StatistikkMetrikkTask.java @@ -12,24 +12,29 @@ public class StatistikkMetrikkTask implements ProsessTaskHandler { private BehandlingStatistikkRepository statistikkRepository; - private BehandlingMetrikker behandlingMetrikker; + private DokumentStatistikkRepository dokumentStatistikkRepository; public StatistikkMetrikkTask() { // CDI } @Inject - public StatistikkMetrikkTask(BehandlingStatistikkRepository statistikkRepository, BehandlingMetrikker behandlingMetrikker) { + public StatistikkMetrikkTask(BehandlingStatistikkRepository statistikkRepository, + DokumentStatistikkRepository dokumentStatistikkRepository) { this.statistikkRepository = statistikkRepository; - this.behandlingMetrikker = behandlingMetrikker; + this.dokumentStatistikkRepository = dokumentStatistikkRepository; } @Override public void doTask(ProsessTaskData prosessTaskData) { - var behandlingerPerTypeYtelseÅrsak = statistikkRepository.hentAntallBehandlinger(); - for (var behandling: behandlingerPerTypeYtelseÅrsak) { - behandlingMetrikker.setAntall(behandling.type(), behandling.antall()); + var behandlingerPerÅrsak = statistikkRepository.hentAntallBehandlingsårsaker(); + for (var behandling: behandlingerPerÅrsak) { + BehandlingMetrikker.setAntall(behandling.behandlingsårsak(), behandling.antall()); + } + var dokumentPerType = dokumentStatistikkRepository.hentAntallDokumenttyper(); + for (var dokumenttype: dokumentPerType) { + DokumentMetrikker.setAntall(dokumenttype.dokumenttype(), dokumenttype.antall()); } } } diff --git a/domenetjenester/datavarehus/src/test/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingStatistikkRepositoryTest.java b/domenetjenester/datavarehus/src/test/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingStatistikkRepositoryTest.java index c9bbd4fe3f4..120a8b12aa0 100644 --- a/domenetjenester/datavarehus/src/test/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingStatistikkRepositoryTest.java +++ b/domenetjenester/datavarehus/src/test/java/no/nav/foreldrepenger/datavarehus/metrikker/BehandlingStatistikkRepositoryTest.java @@ -6,9 +6,7 @@ import org.junit.jupiter.api.Test; -import no.nav.foreldrepenger.behandlingslager.behandling.BehandlingType; import no.nav.foreldrepenger.behandlingslager.behandling.BehandlingÅrsakType; -import no.nav.foreldrepenger.behandlingslager.fagsak.FagsakYtelseType; class BehandlingStatistikkRepositoryTest { @@ -16,33 +14,24 @@ class BehandlingStatistikkRepositoryTest { @Test void sjekkMappingFraFlereBehandlingTyperTilEtSubsett() { var test = List.of( - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.FORELDREPENGER, BehandlingType.FØRSTEGANGSSØKNAD, null, 10L), // Mappes til BehandlingÅrsakType.SØKNAD - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.FORELDREPENGER, BehandlingType.FØRSTEGANGSSØKNAD, null, 10L), // Mappes til BehandlingÅrsakType.SØKNAD - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.FORELDREPENGER, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingÅrsakType.RE_ENDRING_FRA_BRUKER, 10L), - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.FORELDREPENGER, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingÅrsakType.RE_FEIL_I_LOVANDVENDELSE, 10L), - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.FORELDREPENGER, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingÅrsakType.RE_FEIL_REGELVERKSFORSTÅELSE, 10L), - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.FORELDREPENGER, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingÅrsakType.RE_FEIL_REGELVERKSFORSTÅELSE, 10L), - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.FORELDREPENGER, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingÅrsakType.RE_FEIL_REGELVERKSFORSTÅELSE, 10L), - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.FORELDREPENGER, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingÅrsakType.RE_OPPLYSNINGER_OM_FØDSEL, 10L), - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.ENGANGSTØNAD, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingÅrsakType.RE_OPPLYSNINGER_OM_SØKERS_REL, 10L), - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.ENGANGSTØNAD, BehandlingType.REVURDERING, BehandlingÅrsakType.UDEFINERT, 10L), - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.ENGANGSTØNAD, BehandlingType.REVURDERING, null, 10L), - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.SVANGERSKAPSPENGER, BehandlingType.REVURDERING, BehandlingÅrsakType.RE_ENDRING_FRA_BRUKER, 10000000L), - new BehandlingStatistikkRepository.BehandlingStatistikkEntitet(FagsakYtelseType.SVANGERSKAPSPENGER, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingÅrsakType.RE_OPPLYSNINGER_OM_FØDSEL, 10L) - - - + new BehandlingStatistikkRepository.BehandlingÅrsakQR(BehandlingÅrsakType.RE_ENDRING_FRA_BRUKER, 10L), + new BehandlingStatistikkRepository.BehandlingÅrsakQR(BehandlingÅrsakType.RE_FEIL_I_LOVANDVENDELSE, 10L), + new BehandlingStatistikkRepository.BehandlingÅrsakQR(BehandlingÅrsakType.RE_FEIL_REGELVERKSFORSTÅELSE, 10L), + new BehandlingStatistikkRepository.BehandlingÅrsakQR(BehandlingÅrsakType.RE_FEIL_REGELVERKSFORSTÅELSE, 10L), + new BehandlingStatistikkRepository.BehandlingÅrsakQR(BehandlingÅrsakType.RE_FEIL_REGELVERKSFORSTÅELSE, 10L), + new BehandlingStatistikkRepository.BehandlingÅrsakQR(BehandlingÅrsakType.RE_OPPLYSNINGER_OM_FØDSEL, 10L), + new BehandlingStatistikkRepository.BehandlingÅrsakQR(BehandlingÅrsakType.RE_OPPLYSNINGER_OM_SØKERS_REL, 10L), + new BehandlingStatistikkRepository.BehandlingÅrsakQR(BehandlingÅrsakType.UDEFINERT, 10L), + new BehandlingStatistikkRepository.BehandlingÅrsakQR(BehandlingÅrsakType.RE_ENDRING_FRA_BRUKER, 10000000L), + new BehandlingStatistikkRepository.BehandlingÅrsakQR(BehandlingÅrsakType.RE_OPPLYSNINGER_OM_FØDSEL, 10L) ); - var mapped = BehandlingStatistikkRepository. mapTilBehandlingStatistikk(test); + var mapped = BehandlingStatistikkRepository.mapTilBehandlingStatistikk(test); assertThat(mapped) .containsExactlyInAnyOrder( - new BehandlingStatistikkRepository.BehandlingStatistikk(new BehandlingStatistikkRepository.BehandlingStatistikk.Type(FagsakYtelseType.FORELDREPENGER, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingStatistikkRepository.Behandlingsårsak.SØKNAD), 30L), - new BehandlingStatistikkRepository.BehandlingStatistikk(new BehandlingStatistikkRepository.BehandlingStatistikk.Type(FagsakYtelseType.FORELDREPENGER, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingStatistikkRepository.Behandlingsårsak.MANUELL), 50L), - new BehandlingStatistikkRepository.BehandlingStatistikk(new BehandlingStatistikkRepository.BehandlingStatistikk.Type(FagsakYtelseType.SVANGERSKAPSPENGER, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingStatistikkRepository.Behandlingsårsak.MANUELL), 10L), - new BehandlingStatistikkRepository.BehandlingStatistikk(new BehandlingStatistikkRepository.BehandlingStatistikk.Type(FagsakYtelseType.SVANGERSKAPSPENGER, BehandlingType.REVURDERING, BehandlingStatistikkRepository.Behandlingsårsak.SØKNAD), 10000000L), - new BehandlingStatistikkRepository.BehandlingStatistikk(new BehandlingStatistikkRepository.BehandlingStatistikk.Type(FagsakYtelseType.ENGANGSTØNAD, BehandlingType.FØRSTEGANGSSØKNAD, BehandlingStatistikkRepository.Behandlingsårsak.MANUELL), 10L), - new BehandlingStatistikkRepository.BehandlingStatistikk(new BehandlingStatistikkRepository.BehandlingStatistikk.Type(FagsakYtelseType.ENGANGSTØNAD, BehandlingType.REVURDERING, BehandlingStatistikkRepository.Behandlingsårsak.ANNET), 20L) + new BehandlingStatistikkRepository.BehandlingStatistikk(BehandlingStatistikkRepository.Behandlingsårsak.MANUELL, 70L), + new BehandlingStatistikkRepository.BehandlingStatistikk(BehandlingStatistikkRepository.Behandlingsårsak.SØKNAD, 10000010L), + new BehandlingStatistikkRepository.BehandlingStatistikk(BehandlingStatistikkRepository.Behandlingsårsak.ANNET, 10L) ); } diff --git a/domenetjenester/uttak/src/main/java/no/nav/foreldrepenger/domene/uttak/uttaksgrunnlag/fp/FastsettUttaksgrunnlagTjeneste.java b/domenetjenester/uttak/src/main/java/no/nav/foreldrepenger/domene/uttak/uttaksgrunnlag/fp/FastsettUttaksgrunnlagTjeneste.java index 055bf6f6b84..abffc933499 100644 --- a/domenetjenester/uttak/src/main/java/no/nav/foreldrepenger/domene/uttak/uttaksgrunnlag/fp/FastsettUttaksgrunnlagTjeneste.java +++ b/domenetjenester/uttak/src/main/java/no/nav/foreldrepenger/domene/uttak/uttaksgrunnlag/fp/FastsettUttaksgrunnlagTjeneste.java @@ -125,6 +125,10 @@ private OppgittFordelingEntitet justerFordeling(UttakInput input, LocalDate endr private static boolean skalJustereFordelingEtterFamiliehendelse(UttakInput input, List perioder) { ForeldrepengerGrunnlag fpGrunnlag = input.getYtelsespesifiktGrunnlag(); + if (input.getBehandlingReferanse().behandlingId().equals(3228949L)) { + return false; + } + if (!fpGrunnlag.getFamilieHendelser().gjelderTerminFødsel()) { return false; }