Skip to content

feat(TFP-6035): Prosesstask for sletting av ubrukte Inntektsmeldinger #2641

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@
import java.util.List;
import java.util.function.Function;

import no.nav.foreldrepenger.abakus.rydding.OppryddingTjeneste;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

Expand All @@ -28,6 +26,7 @@
import no.nav.foreldrepenger.abakus.domene.iay.søknad.OppgittOpptjening;
import no.nav.foreldrepenger.abakus.iay.InntektArbeidYtelseTjeneste;
import no.nav.foreldrepenger.abakus.kobling.KoblingReferanse;
import no.nav.foreldrepenger.abakus.rydding.OppryddingTjeneste;
import no.nav.foreldrepenger.abakus.typer.JournalpostId;
import no.nav.foreldrepenger.abakus.typer.OrgNummer;
import no.nav.vedtak.sikkerhet.abac.AbacDataAttributter;
Expand Down Expand Up @@ -144,6 +143,7 @@ public Response ryddOppGrunnlagUtenReferanse() {
LOG.info("FORVALTNING ABAKUS ryddOppGrunnlagUtenReferanse");
oppryddingTjeneste.fjernAlleIayAggregatUtenReferanse();
oppryddingTjeneste.fjernAlleIayInformasjontUtenReferanse();
oppryddingTjeneste.fjernAlleIayInntektsmeldingerUtenReferanse();
return Response.ok().build();
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,32 +1,33 @@
package no.nav.foreldrepenger.abakus.rydding;


import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.persistence.EntityManager;
import no.nav.foreldrepenger.abakus.domene.iay.InntektArbeidYtelseAggregat;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import static java.util.Collections.emptyList;

import java.util.List;
import java.util.Objects;

import static java.util.Collections.emptyList;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.persistence.EntityManager;
import no.nav.foreldrepenger.abakus.domene.iay.InntektArbeidYtelseAggregat;

@ApplicationScoped
public class OppryddingIAYAggregatRepository {
private static final Logger LOG = LoggerFactory.getLogger(OppryddingIAYAggregatRepository.class);
public class OppryddingIayAggregatRepository {
private static final Logger LOG = LoggerFactory.getLogger(OppryddingIayAggregatRepository.class);
protected static final String PARAM_IAY_ID = "iayId";
protected static final String PARAM_RELATERT_YTELSE_ID_LIST = "relatertYtelseIdList";

private EntityManager entityManager;

OppryddingIAYAggregatRepository() {
OppryddingIayAggregatRepository() {
// CDI proxy
}

@Inject
public OppryddingIAYAggregatRepository(EntityManager entityManager) {
public OppryddingIayAggregatRepository(EntityManager entityManager) {
Objects.requireNonNull(entityManager, "entityManager");
this.entityManager = entityManager;
}
Expand All @@ -38,10 +39,10 @@ public List<Long> hentIayAggregaterUtenReferanse(Integer maxResults) {
.setMaxResults(maxResults)
.getResultList();
if (result.isEmpty()) {
LOG.info("Fant ingen IAY-aggregater uten grunnlag referanse");
LOG.debug("Fant ingen IAY-aggregater uten grunnlag referanse");
return emptyList();
}
LOG.info("Fant {} IAY-aggregater uten grunnlag referanse", result.size());
LOG.debug("Fant {} IAY-aggregater uten grunnlag referanse", result.size());
return result.stream().map(Number::longValue).toList();
}

Expand Down Expand Up @@ -112,42 +113,42 @@ private List<Long> hentYtelseAnvistFor(List<Long> relatertYtelseIdList) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_ytelse_stoerrelse where ytelse_grunnlag_id in (:ytelseGrunnlagIdList)")
.setParameter("ytelseGrunnlagIdList", ytelseGrunnlagIdList)
.executeUpdate();
LOG.info("Fjernet {} ytelse størrelser for ytelse grunnlag: {}", antallFjernet, ytelseGrunnlagIdList);
LOG.debug("Fjernet {} ytelse størrelser for ytelse grunnlag: {}", antallFjernet, ytelseGrunnlagIdList);
}

private void fjernYtelseGrunnlagFor(List<Long> relatertYtelseIdList) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_ytelse_grunnlag where ytelse_id in (:relatertYtelseIdList)")
.setParameter(PARAM_RELATERT_YTELSE_ID_LIST, relatertYtelseIdList)
.executeUpdate();
LOG.info("Fjernet {} ytelse grunnlag for relatert ytelse: {}", antallFjernet, relatertYtelseIdList);
LOG.debug("Fjernet {} ytelse grunnlag for relatert ytelse: {}", antallFjernet, relatertYtelseIdList);
}

private void fjernYtelseAnvistAndelFor(List<Long> ytelseAnvistIdList) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_ytelse_anvist_andel where ytelse_anvist_id in (:ytelseAnvistIdList)")
.setParameter("ytelseAnvistIdList", ytelseAnvistIdList)
.executeUpdate();
LOG.info("Fjernet {} ytelse anvist andeler for ytelse anvist: {}", antallFjernet, ytelseAnvistIdList);
LOG.debug("Fjernet {} ytelse anvist andeler for ytelse anvist: {}", antallFjernet, ytelseAnvistIdList);
}

private void fjernYtelseAnvistFor(List<Long> relatertYtelseIdList) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_ytelse_anvist where ytelse_id in (:relatertYtelseIdList)")
.setParameter(PARAM_RELATERT_YTELSE_ID_LIST, relatertYtelseIdList)
.executeUpdate();
LOG.info("Fjernet {} ytelse anvist for relatert ytelse: {}", antallFjernet, relatertYtelseIdList);
LOG.debug("Fjernet {} ytelse anvist for relatert ytelse: {}", antallFjernet, relatertYtelseIdList);
}

private void fjernRelatertYtelseFor(List<Long> aktørYtelseIdList) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_relatert_ytelse where aktoer_ytelse_id in (:aktoerYtelseIdList)")
.setParameter("aktoerYtelseIdList", aktørYtelseIdList)
.executeUpdate();
LOG.info("Fjernet {} relatert ytelse for aktør ytelse: {}", antallFjernet, aktørYtelseIdList);
LOG.debug("Fjernet {} relatert ytelse for aktør ytelse: {}", antallFjernet, aktørYtelseIdList);
}

private void fjernAktørYtelseFor(Long iayIdForSletting) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_aktoer_ytelse where inntekt_arbeid_ytelser_id = :iayId")
.setParameter(PARAM_IAY_ID, iayIdForSletting)
.executeUpdate();
LOG.info("Fjernet {} aktør ytelse for iay-aggregat: {}", antallFjernet, iayIdForSletting);
LOG.debug("Fjernet {} aktør ytelse for iay-aggregat: {}", antallFjernet, iayIdForSletting);
}

private void slettIayAktørArbeid(Long iayIdForSletting) {
Expand Down Expand Up @@ -183,28 +184,28 @@ private void fjernPermisjonerFor(List<Long> yrkesaktivitetIdList) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_permisjon where yrkesaktivitet_id in (:yrkesaktivitetIdList)")
.setParameter("yrkesaktivitetIdList", yrkesaktivitetIdList)
.executeUpdate();
LOG.info("Fjernet {} permisjoner for yrkesaktiviteter: {}", antallFjernet, yrkesaktivitetIdList);
LOG.debug("Fjernet {} permisjoner for yrkesaktiviteter: {}", antallFjernet, yrkesaktivitetIdList);
}

private void fjernAktivitetsAvtalerFor(List<Long> yrkesaktivitetIdList) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_aktivitets_avtale where yrkesaktivitet_id in (:yrkesaktivitetIdList)")
.setParameter("yrkesaktivitetIdList", yrkesaktivitetIdList)
.executeUpdate();
LOG.info("Fjernet {} aktivitets avtaler for yrkesaktiviteter: {}", antallFjernet, yrkesaktivitetIdList);
LOG.debug("Fjernet {} aktivitets avtaler for yrkesaktiviteter: {}", antallFjernet, yrkesaktivitetIdList);
}

private void fjernYrkesaktiviteterFor(List<Long> aktørArbeidIdList) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_yrkesaktivitet where aktoer_arbeid_id in (:aktoerArbeidIdList)")
.setParameter("aktoerArbeidIdList", aktørArbeidIdList)
.executeUpdate();
LOG.info("Fjernet {} yrkesaktiviteter for aktør arbeid: {}", antallFjernet, aktørArbeidIdList);
LOG.debug("Fjernet {} yrkesaktiviteter for aktør arbeid: {}", antallFjernet, aktørArbeidIdList);
}

private void fjernAktørArbeidFor(Long iayIdForSletting) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_aktoer_arbeid where inntekt_arbeid_ytelser_id = :iayId")
.setParameter(PARAM_IAY_ID, iayIdForSletting)
.executeUpdate();
LOG.info("Fjernet {} aktør arbeid for iay-aggregat: {}", antallFjernet, iayIdForSletting);
LOG.debug("Fjernet {} aktør arbeid for iay-aggregat: {}", antallFjernet, iayIdForSletting);
}

private void slettIayAktørIntekt(Long iayIdForSletting) {
Expand Down Expand Up @@ -239,28 +240,28 @@ private void fjernInntektsposterFor(List<Long> inntektIdList) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_inntektspost where inntekt_id in (:inntektIdList)")
.setParameter("inntektIdList", inntektIdList)
.executeUpdate();
LOG.info("Fjernet {} inntektsposter for inntekter: {}", antallFjernet, inntektIdList);
LOG.debug("Fjernet {} inntektsposter for inntekter: {}", antallFjernet, inntektIdList);
}

private void fjernInntekterFor(List<Long> aktørInntektIdList) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_inntekt where aktoer_inntekt_id in (:aktoerInntektIdList)")
.setParameter("aktoerInntektIdList", aktørInntektIdList)
.executeUpdate();
LOG.info("Fjernet {} inntekter for aktør inntekter: {}", antallFjernet, aktørInntektIdList);
LOG.debug("Fjernet {} inntekter for aktør inntekter: {}", antallFjernet, aktørInntektIdList);

}

private void fjernAktørInntektFor(Long iayIdForSletting) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_aktoer_inntekt where inntekt_arbeid_ytelser_id = :iayId")
.setParameter(PARAM_IAY_ID, iayIdForSletting)
.executeUpdate();
LOG.info("Fjernet {} aktør inntekter for iay-aggregat: {}", antallFjernet, iayIdForSletting);
LOG.debug("Fjernet {} aktør inntekter for iay-aggregat: {}", antallFjernet, iayIdForSletting);
}

private void fjernInntektArbeidYtelseFor(Long iayIdForSletting) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_inntekt_arbeid_ytelser where id = :iayId")
.setParameter(PARAM_IAY_ID, iayIdForSletting)
.executeUpdate();
LOG.info("Fjernet {} IAY-aggregat med id: {}", antallFjernet, iayIdForSletting);
.setParameter(PARAM_IAY_ID, iayIdForSletting)
.executeUpdate();
LOG.debug("Fjernet {} IAY-aggregat med id: {}", antallFjernet, iayIdForSletting);
}
}
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
package no.nav.foreldrepenger.abakus.rydding;

import static java.util.Collections.emptyList;

import java.util.List;
import java.util.Objects;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
import jakarta.persistence.EntityManager;
import no.nav.foreldrepenger.abakus.domene.iay.arbeidsforhold.ArbeidsforholdInformasjon;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.List;
import java.util.Objects;

import static java.util.Collections.emptyList;

@ApplicationScoped
public class OppryddingIayInformasjonRepository {
Expand All @@ -31,12 +30,12 @@ public OppryddingIayInformasjonRepository(EntityManager entityManager) {

public List<Long> hentIayInformasjonUtenReferanse(Integer maxResults) {
@SuppressWarnings("unchecked") List<Number> result = entityManager.createNativeQuery("select distinct id from iay_informasjon info where "
+ "not exists (select 1 from gr_arbeid_inntekt gr where info.id = gr.informasjon_id)").setMaxResults(maxResults).getResultList();
+ "not exists (select 1 from gr_arbeid_inntekt gr where info.id = gr.informasjon_id)").setMaxResults(maxResults).getResultList();
if (result.isEmpty()) {
LOG.info("Fant ingen IAY-Informasjon uten grunnlag referanse");
LOG.debug("Fant ingen IAY-Informasjon uten grunnlag referanse");
return emptyList();
}
LOG.info("Fant {} IAY-Informasjon uten grunnlag referanse", result.size());
LOG.debug("Fant {} IAY-Informasjon uten grunnlag referanse", result.size());
return result.stream().map(Number::longValue).toList();
}

Expand All @@ -59,36 +58,36 @@ private void slettArbeidsforholdInformasjon(Long informasjonId) {

private List<Long> hentOverstyrteArbeidsforholdFor(Long informasjonId) {
@SuppressWarnings("unchecked") List<Number> result = entityManager.createNativeQuery(
"select distinct id from iay_arbeidsforhold where informasjon_id = :infoId").setParameter("infoId", informasjonId).getResultList();
"select distinct id from iay_arbeidsforhold where informasjon_id = :infoId").setParameter("infoId", informasjonId).getResultList();
return result.stream().map(Number::longValue).toList();
}

private void fjernOverstyrteArbeidsforholdPerioderFor(List<Long> overstyrteArbeidsforholdIdList) {
var antallFjernet = entityManager.createNativeQuery(
"delete from iay_overstyrte_perioder where arbeidsforhold_id in (:overstyrteArbeidsforholdIdList)")
.setParameter("overstyrteArbeidsforholdIdList", overstyrteArbeidsforholdIdList)
.executeUpdate();
LOG.info("Fjernet {} overstyrte arbeidsforhold perioder for arbeidsforhold: {}", antallFjernet, overstyrteArbeidsforholdIdList);
"delete from iay_overstyrte_perioder where arbeidsforhold_id in (:overstyrteArbeidsforholdIdList)")
.setParameter("overstyrteArbeidsforholdIdList", overstyrteArbeidsforholdIdList)
.executeUpdate();
LOG.debug("Fjernet {} overstyrte arbeidsforhold perioder for arbeidsforhold: {}", antallFjernet, overstyrteArbeidsforholdIdList);
}

private void fjernOverstyrteArbeidsforholFor(Long informasjonId) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_arbeidsforhold where informasjon_id = :informasjonId")
.setParameter("informasjonId", informasjonId)
.executeUpdate();
LOG.info("Fjernet {} overstyrte arbeidsforhold for informasjon: {}", antallFjernet, informasjonId);
.setParameter("informasjonId", informasjonId)
.executeUpdate();
LOG.debug("Fjernet {} overstyrte arbeidsforhold for informasjon: {}", antallFjernet, informasjonId);
}

private void fjernArbeidsforholReferanserFor(Long informasjonId) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_arbeidsforhold_refer where informasjon_id = :informasjonId")
.setParameter("informasjonId", informasjonId)
.executeUpdate();
LOG.info("Fjernet {} arbeidsforhold referanser for informasjon: {}", antallFjernet, informasjonId);
.setParameter("informasjonId", informasjonId)
.executeUpdate();
LOG.debug("Fjernet {} arbeidsforhold referanser for informasjon: {}", antallFjernet, informasjonId);
}

private void fjernInformasjonFor(Long informasjonId) {
var antallFjernet = entityManager.createNativeQuery("delete from iay_informasjon where id = :informasjonId")
.setParameter("informasjonId", informasjonId)
.executeUpdate();
LOG.info("Fjernet {} arbeidsforhold informasjon med id: {}", antallFjernet, informasjonId);
.setParameter("informasjonId", informasjonId)
.executeUpdate();
LOG.debug("Fjernet {} arbeidsforhold informasjon med id: {}", antallFjernet, informasjonId);
}
}
Loading