Search in sources :

Example 6 with TiltakInnhold

use of no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.TiltakInnhold in project veilarbportefolje by navikt.

the class TiltakService method behandleKafkaMelding.

public void behandleKafkaMelding(TiltakDTO kafkaMelding) {
    TiltakInnhold innhold = getInnhold(kafkaMelding);
    if (innhold == null || erGammelMelding(kafkaMelding, innhold)) {
        return;
    }
    AktorId aktorId = behandleKafkaMeldingOracle(kafkaMelding);
    behandleKafkaMeldingPostgres(kafkaMelding);
    arenaHendelseRepository.upsertAktivitetHendelse(innhold.getAktivitetid(), innhold.getHendelseId());
    opensearchIndexer.indekser(aktorId);
}
Also used : TiltakInnhold(no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.TiltakInnhold) AktorId(no.nav.common.types.identer.AktorId)

Example 7 with TiltakInnhold

use of no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.TiltakInnhold in project veilarbportefolje by navikt.

the class TiltakService method behandleKafkaMeldingOracle.

public AktorId behandleKafkaMeldingOracle(TiltakDTO kafkaMelding) {
    TiltakInnhold innhold = getInnhold(kafkaMelding);
    AktorId aktorId = getAktorId(aktorClient, innhold.getFnr());
    PersonId personId = PersonId.of(String.valueOf(innhold.getPersonId()));
    if (skalSlettesGoldenGate(kafkaMelding) || skalSlettesTiltak(innhold)) {
        log.info("Sletter tiltak: {}, pa aktoer: {}", innhold.getAktivitetid(), aktorId);
        tiltakRepositoryV1.delete(innhold.getAktivitetid());
    } else {
        log.info("Lagrer tiltak: {}, pa aktoer: {}", innhold.getAktivitetid(), aktorId);
        tiltakRepositoryV1.upsert(innhold, aktorId);
    }
    tiltakRepositoryV1.utledOgLagreTiltakInformasjon(aktorId, personId);
    brukerDataService.oppdaterAktivitetBrukerData(aktorId, personId);
    return aktorId;
}
Also used : PersonId(no.nav.pto.veilarbportefolje.domene.value.PersonId) TiltakInnhold(no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.TiltakInnhold) AktorId(no.nav.common.types.identer.AktorId)

Example 8 with TiltakInnhold

use of no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.TiltakInnhold in project veilarbportefolje by navikt.

the class TiltakService method behandleKafkaMeldingPostgres.

public void behandleKafkaMeldingPostgres(TiltakDTO kafkaMelding) {
    TiltakInnhold innhold = getInnhold(kafkaMelding);
    AktorId aktorId = getAktorId(aktorClient, innhold.getFnr());
    if (skalSlettesGoldenGate(kafkaMelding) || skalSlettesTiltak(innhold)) {
        log.info("Sletter tiltak postgres: {}, pa aktoer: {}", innhold.getAktivitetid(), aktorId);
        tiltakRepositoryV2.delete(innhold.getAktivitetid());
    } else {
        log.info("Lagrer tiltak postgres: {}, pa aktoer: {}", innhold.getAktivitetid(), aktorId);
        tiltakRepositoryV2.upsert(innhold, aktorId);
    }
}
Also used : TiltakInnhold(no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.TiltakInnhold) AktorId(no.nav.common.types.identer.AktorId)

Example 9 with TiltakInnhold

use of no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.TiltakInnhold in project veilarbportefolje by navikt.

the class TiltakPostgresTest method skal_lagre_tiltak_i_kodeverk_og_på_bruker.

@Test
public void skal_lagre_tiltak_i_kodeverk_og_på_bruker() {
    String tiltaksType = "T123";
    String tiltaksNavn = "test";
    TiltakInnhold innhold = new TiltakInnhold().setFnr(fnr.get()).setPersonId(personId.toInteger()).setTiltaksnavn(tiltaksNavn).setTiltakstype(tiltaksType).setDeltakerStatus("GJENN").setEndretDato(new ArenaDato("2021-01-01")).setAktivitetperiodeFra(new ArenaDato("1989-01-01")).setAktivitetperiodeTil(new ArenaDato("1990-01-01")).setAktivitetid("TA-123456789");
    tiltakRepositoryV2.upsert(innhold, aktorId);
    PostgresAktivitetEntity postgresAktivitet = PostgresAktivitetMapper.build(aktivitetOpensearchService.hentAktivitetData(List.of(aktorId)).get(aktorId));
    Optional<String> kodeVerkNavn = tiltakRepositoryV2.hentVerdiITiltakskodeVerk(tiltaksType);
    assertThat(kodeVerkNavn.isPresent()).isTrue();
    assertThat(kodeVerkNavn.get()).isEqualTo(tiltaksNavn);
    // Opensearch mapping
    assertThat(postgresAktivitet.getTiltak().size()).isEqualTo(1);
    assertThat(postgresAktivitet.getTiltak().contains("T123")).isTrue();
    assertThat(postgresAktivitet.getAktiviteter().contains(AktivitetsType.tiltak.name())).isTrue();
    assertThat(postgresAktivitet.getNyesteUtlopteAktivitet()).isEqualTo("1990-01-01T22:59:59Z");
    assertThat(postgresAktivitet.getForrigeAktivitetStart()).isEqualTo("1988-12-31T23:00:00Z");
    assertThat(postgresAktivitet.getAktivitetTiltakUtlopsdato()).isEqualTo(FAR_IN_THE_FUTURE_DATE);
    assertThat(postgresAktivitet.getNesteAktivitetStart()).isNull();
    assertThat(postgresAktivitet.getAktivitetStart()).isNull();
}
Also used : TiltakInnhold(no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.TiltakInnhold) PostgresAktivitetEntity(no.nav.pto.veilarbportefolje.postgres.opensearch.PostgresAktivitetEntity) Test(org.junit.jupiter.api.Test) ApplicationConfigTest(no.nav.pto.veilarbportefolje.config.ApplicationConfigTest) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Aggregations

TiltakInnhold (no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.TiltakInnhold)9 ApplicationConfigTest (no.nav.pto.veilarbportefolje.config.ApplicationConfigTest)6 Test (org.junit.jupiter.api.Test)6 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)6 AktorId (no.nav.common.types.identer.AktorId)3 PostgresAktivitetEntity (no.nav.pto.veilarbportefolje.postgres.opensearch.PostgresAktivitetEntity)3 TiltakDTO (no.nav.pto.veilarbportefolje.arenapakafka.arenaDTO.TiltakDTO)2 EnhetTiltak (no.nav.pto.veilarbportefolje.domene.EnhetTiltak)2 ZonedDateTime (java.time.ZonedDateTime)1 AktivitetStatus (no.nav.pto.veilarbportefolje.aktiviteter.AktivitetStatus)1 PersonId (no.nav.pto.veilarbportefolje.domene.value.PersonId)1 OppfolgingsbrukerEntity (no.nav.pto.veilarbportefolje.oppfolgingsbruker.OppfolgingsbrukerEntity)1 AktivitetEntity (no.nav.pto.veilarbportefolje.postgres.opensearch.utils.AktivitetEntity)1