use of no.nav.pto.veilarbportefolje.aktiviteter.AktivitetStatus in project veilarbportefolje by navikt.
the class TiltakTest method skal_komme_i_tiltak.
@Test
public void skal_komme_i_tiltak() {
insertBruker();
TiltakDTO tiltakDTO = new TiltakDTO().setAfter(new TiltakInnhold().setFnr(fnr.get()).setPersonId(personId.toInteger()).setHendelseId(1).setTiltaksnavn("Test").setTiltakstype("T123").setDeltakerStatus("GJENN").setEndretDato(new ArenaDato("2021-01-01")).setAktivitetid("TA-123456789"));
tiltakService.behandleKafkaMeldingOracle(tiltakDTO);
Optional<AktivitetStatus> tiltak = hentAktivitetStatus();
assertThat(tiltak).isPresent();
}
use of no.nav.pto.veilarbportefolje.aktiviteter.AktivitetStatus in project veilarbportefolje by navikt.
the class TiltakRepositoryV1 method utledOgLagreTiltakInformasjon.
public void utledOgLagreTiltakInformasjon(AktorId aktorId, PersonId personId) {
List<BrukertiltakV2> tiltak = hentTiltak(aktorId);
LocalDate yesterday = LocalDate.now().minusDays(1);
Timestamp nesteUtlopsdato = tiltak.stream().map(BrukertiltakV2::getTildato).filter(Objects::nonNull).filter(utlopsdato -> utlopsdato.toLocalDateTime().toLocalDate().isAfter(yesterday)).min(Comparator.naturalOrder()).orElse(null);
boolean aktiv = !tiltak.isEmpty();
AktivitetStatus aktivitetStatus = new AktivitetStatus().setAktivitetType(AktivitetsType.tiltak.name()).setAktiv(aktiv).setAktoerid(aktorId).setPersonid(personId).setNesteUtlop(nesteUtlopsdato);
aktivitetDAO.upsertAktivitetStatus(aktivitetStatus);
}
use of no.nav.pto.veilarbportefolje.aktiviteter.AktivitetStatus in project veilarbportefolje by navikt.
the class OpensearchIndexer method leggTilAktiviteter.
private void leggTilAktiviteter(List<OppfolgingsBruker> brukere) {
if (brukere == null || brukere.isEmpty()) {
throw new IllegalArgumentException();
}
validateBatchSize(brukere);
List<PersonId> personIder = brukere.stream().map(OppfolgingsBruker::getPerson_id).map(PersonId::of).collect(toList());
Map<PersonId, Set<AktivitetStatus>> alleAktiviteterForBrukere = aktivitetDAO.getAktivitetstatusForBrukere(personIder);
alleAktiviteterForBrukere.forEach((personId, statuserForBruker) -> {
OppfolgingsBruker bruker = finnBruker(brukere, personId);
statuserForBruker.forEach(status -> {
IndekseringUtils.leggTilUtlopsDato(bruker, status);
IndekseringUtils.leggTilStartDato(bruker, status);
});
Set<String> aktiviteterSomErAktive = statuserForBruker.stream().filter(AktivitetStatus::isAktiv).map(AktivitetStatus::getAktivitetType).collect(toSet());
bruker.setAktiviteter(aktiviteterSomErAktive);
});
}
use of no.nav.pto.veilarbportefolje.aktiviteter.AktivitetStatus in project veilarbportefolje by navikt.
the class GruppeAktivitetRepository method utledOgLagreGruppeaktiviteter.
public void utledOgLagreGruppeaktiviteter(AktorId aktorId, PersonId personId) {
LocalDate yesterday = LocalDate.now().minusDays(1);
List<GruppeAktivitetSchedueldDTO> gruppeAktiviteter = hentAktiveAktivteter(aktorId);
Timestamp nesteStart = gruppeAktiviteter.stream().filter(GruppeAktivitetSchedueldDTO::isAktiv).map(GruppeAktivitetSchedueldDTO::getAktivitetperiodeFra).filter(startDato -> startDato.toLocalDateTime().toLocalDate().isAfter(yesterday)).min(Comparator.naturalOrder()).orElse(null);
Timestamp nesteUtlopsdato = gruppeAktiviteter.stream().filter(GruppeAktivitetSchedueldDTO::isAktiv).map(GruppeAktivitetSchedueldDTO::getAktivitetperiodeTil).filter(utlopsDato -> utlopsDato.toLocalDateTime().toLocalDate().isAfter(yesterday)).min(Comparator.naturalOrder()).orElse(null);
boolean aktiv = (nesteUtlopsdato != null && gruppeAktiviteter.stream().anyMatch(GruppeAktivitetSchedueldDTO::isAktiv));
AktivitetStatus aktivitetStatus = new AktivitetStatus().setAktivitetType(AktivitetsType.gruppeaktivitet.name()).setAktiv(aktiv).setAktoerid(aktorId).setPersonid(personId).setNesteStart(nesteStart).setNesteUtlop(nesteUtlopsdato);
aktivitetDAO.upsertAktivitetStatus(aktivitetStatus);
}
use of no.nav.pto.veilarbportefolje.aktiviteter.AktivitetStatus in project veilarbportefolje by navikt.
the class GruppeAktivitetTest method skal_komme_i_gruppe_aktivitet.
@Test
public void skal_komme_i_gruppe_aktivitet() {
insertBruker();
GruppeAktivitetDTO gruppeAktivitet = getInsertDTO();
gruppeAktivitetService.behandleKafkaMeldingOracle(gruppeAktivitet);
Optional<AktivitetStatus> gruppe = hentAktivitetStatus();
assertThat(gruppe).isPresent();
}
Aggregations