Search in sources :

Example 41 with AktorId

use of no.nav.common.types.identer.AktorId in project veilarbportefolje by navikt.

the class YtelsesService method oppdaterBrukereMedYtelserSomStarterIDagOracle.

public void oppdaterBrukereMedYtelserSomStarterIDagOracle() {
    List<AktorId> brukere = ytelsesRepository.hentBrukereMedYtelserSomStarterIDag();
    log.info("Oppdaterer ytelser for: " + brukere.size() + " antall brukere");
    brukere.forEach(aktorId -> {
        log.info("Oppdaterer ytelse for aktorId: " + aktorId);
        PersonId personId = brukerService.hentPersonidFraAktoerid(aktorId).toJavaOptional().orElse(null);
        if (personId == null) {
            log.warn("Avbryter ytelse oppdatering pga. manglende personId for aktorId: " + aktorId);
            return;
        }
        oppdaterYtelsesInformasjonOracle(aktorId, personId);
    });
    log.info("Oppdatering av ytelser fullført. Starter indeksering");
    brukere.forEach(opensearchIndexer::indekser);
    log.info("Oppdatering av ytelser fullført og indeksert");
}
Also used : PersonId(no.nav.pto.veilarbportefolje.domene.value.PersonId) AktorId(no.nav.common.types.identer.AktorId) ArenaUtils.getAktorId(no.nav.pto.veilarbportefolje.arenapakafka.ArenaUtils.getAktorId)

Example 42 with AktorId

use of no.nav.common.types.identer.AktorId in project veilarbportefolje by navikt.

the class YtelsesServicePostgres method finnSisteYtelsePaSakIdSomIkkeErUtloptPostgres.

public Optional<YtelseDAO> finnSisteYtelsePaSakIdSomIkkeErUtloptPostgres(AktorId aktorId, String sakID) {
    LocalDate iDag = LocalDate.now();
    List<YtelseDAO> aktiveYtelserPaSakID = ytelsesRepositoryV2.getYtelser(aktorId).stream().filter(Objects::nonNull).filter(ytelse -> sakID.equals(ytelse.getSaksId())).filter(ytelse -> harFremtidigUtlopsdato(ytelse.getUtlopsDato(), iDag)).collect(Collectors.toList());
    if (aktiveYtelserPaSakID.isEmpty()) {
        return Optional.empty();
    }
    Optional<YtelseDAO> ytelseMedSluttDatoEllerNull = aktiveYtelserPaSakID.stream().filter(ytelseDAO -> ytelseDAO.getUtlopsDato() != null).max(Comparator.comparing(YtelseDAO::getUtlopsDato));
    return Optional.of(ytelseMedSluttDatoEllerNull.orElse(aktiveYtelserPaSakID.get(0)));
}
Also used : AktorClient(no.nav.pto.veilarbportefolje.domene.AktorClient) ArenaUtils(no.nav.pto.veilarbportefolje.arenapakafka.ArenaUtils) Timestamp(java.sql.Timestamp) RequiredArgsConstructor(lombok.RequiredArgsConstructor) Collectors(java.util.stream.Collectors) YtelsesInnhold(no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.YtelsesInnhold) Objects(java.util.Objects) AktorId(no.nav.common.types.identer.AktorId) Slf4j(lombok.extern.slf4j.Slf4j) List(java.util.List) YtelsesDTO(no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.YtelsesDTO) Service(org.springframework.stereotype.Service) LocalDate(java.time.LocalDate) Optional(java.util.Optional) BrukerDataService(no.nav.pto.veilarbportefolje.database.BrukerDataService) Comparator(java.util.Comparator) Transactional(org.springframework.transaction.annotation.Transactional) LocalDate(java.time.LocalDate)

Example 43 with AktorId

use of no.nav.common.types.identer.AktorId in project veilarbportefolje by navikt.

the class YtelsesServicePostgres method behandleKafkaMeldingPostgres.

public void behandleKafkaMeldingPostgres(YtelsesDTO kafkaMelding, TypeKafkaYtelse ytelse) {
    YtelsesInnhold innhold = getInnhold(kafkaMelding);
    AktorId aktorId = getAktorId(aktorClient, innhold.getFnr());
    if (skalSlettesGoldenGate(kafkaMelding)) {
        log.info("Postgres: Sletter ytelse: {}, pa aktorId: {}", innhold.getVedtakId(), aktorId);
        ytelsesRepositoryV2.slettYtelse(innhold.getVedtakId());
        oppdaterYtelsesInformasjonMedUnntaksLogikkForSletting(aktorId, innhold);
    } else {
        log.info("Postgres: Lagrer ytelse: {}, pa aktorId: {}", innhold.getVedtakId(), aktorId);
        ytelsesRepositoryV2.upsert(aktorId, ytelse, innhold);
        oppdaterYtelsesInformasjonPostgres(aktorId);
    }
}
Also used : YtelsesInnhold(no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.YtelsesInnhold) AktorId(no.nav.common.types.identer.AktorId)

Example 44 with AktorId

use of no.nav.common.types.identer.AktorId in project veilarbportefolje by navikt.

the class OpensearchIndexer method leggTilTiltak.

private void leggTilTiltak(List<OppfolgingsBruker> brukere) {
    validateBatchSize(brukere);
    List<AktorId> aktorIder = brukere.stream().map(OppfolgingsBruker::getAktoer_id).map(AktorId::of).collect(toList());
    Map<AktorId, Set<BrukertiltakV2>> alleTiltakForBrukere = tiltakRepositoryV1.hentBrukertiltak(aktorIder);
    alleTiltakForBrukere.forEach((aktorId, brukerMedTiltak) -> {
        Set<String> tiltak = brukerMedTiltak.stream().map(BrukertiltakV2::getTiltak).collect(toSet());
        OppfolgingsBruker bruker = finnBruker(brukere, aktorId);
        bruker.setTiltak(tiltak);
    });
}
Also used : Collectors.toSet(java.util.stream.Collectors.toSet) Set(java.util.Set) AktorId(no.nav.common.types.identer.AktorId) OppfolgingsBruker(no.nav.pto.veilarbportefolje.opensearch.domene.OppfolgingsBruker)

Example 45 with AktorId

use of no.nav.common.types.identer.AktorId in project veilarbportefolje by navikt.

the class CVService method behandleCVHjemmelMelding.

public void behandleCVHjemmelMelding(CVMelding cvMelding) {
    AktorId aktoerId = cvMelding.getAktoerId();
    boolean harDeltCv = (cvMelding.getSlettetDato() == null);
    if (cvMelding.getRessurs() != CV_HJEMMEL) {
        log.info("Ignorer melding for ressurs {} for bruker {}", cvMelding.getRessurs(), aktoerId);
        return;
    }
    log.info("Oppdaterte bruker: {}. Har delt cv: {}", aktoerId, harDeltCv);
    cvRepositoryV2.upsertHarDeltCv(aktoerId, harDeltCv);
    cvRepository.upsertHarDeltCv(aktoerId, harDeltCv);
    opensearchIndexerV2.updateHarDeltCv(aktoerId, harDeltCv);
}
Also used : AktorId(no.nav.common.types.identer.AktorId)

Aggregations

AktorId (no.nav.common.types.identer.AktorId)85 Test (org.junit.jupiter.api.Test)31 TestDataUtils.randomAktorId (no.nav.pto.veilarbportefolje.util.TestDataUtils.randomAktorId)24 EndToEndTest (no.nav.pto.veilarbportefolje.util.EndToEndTest)21 ZonedDateTime (java.time.ZonedDateTime)15 PersonId (no.nav.pto.veilarbportefolje.domene.value.PersonId)13 List (java.util.List)12 Slf4j (lombok.extern.slf4j.Slf4j)12 ApplicationConfigTest (no.nav.pto.veilarbportefolje.config.ApplicationConfigTest)12 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)12 Fnr (no.nav.common.types.identer.Fnr)11 VeilederId (no.nav.pto.veilarbportefolje.domene.value.VeilederId)11 Test (org.junit.Test)11 Timestamp (java.sql.Timestamp)10 Optional (java.util.Optional)10 AktorClient (no.nav.pto.veilarbportefolje.domene.AktorClient)10 BrukerOppdatertInformasjon (no.nav.pto.veilarbportefolje.domene.BrukerOppdatertInformasjon)10 GetResponse (org.opensearch.action.get.GetResponse)10 Collectors (java.util.stream.Collectors)8 Service (org.springframework.stereotype.Service)8