use of no.nav.common.types.identer.Fnr in project veilarbportefolje by navikt.
the class TestDataClient method setupBruker.
public void setupBruker(AktorId aktoerId, NavKontor navKontor, VeilederId veilederId, ZonedDateTime startDato) {
final Fnr fnr = TestDataUtils.randomFnr();
setupBrukerOracle(aktoerId, fnr, navKontor, veilederId, startDato);
setupBruker(aktoerId, fnr, navKontor, veilederId, startDato);
}
use of no.nav.common.types.identer.Fnr in project veilarbportefolje by navikt.
the class OppfolgingsbrukerService method behandleKafkaMeldingLogikk.
@Override
public void behandleKafkaMeldingLogikk(EndringPaaOppfoelgingsBrukerV2 kafkaMelding) {
AktorId aktorId = hentAktorIdMedUnntakIDev(Fnr.of(kafkaMelding.getFodselsnummer()));
ZonedDateTime iservDato = Optional.ofNullable(kafkaMelding.getIservFraDato()).map(dato -> ZonedDateTime.of(dato.atStartOfDay(), ZoneId.systemDefault())).orElse(null);
ZonedDateTime dodFraDato = Optional.ofNullable(kafkaMelding.getDoedFraDato()).map(dato -> ZonedDateTime.of(dato.atStartOfDay(), ZoneId.systemDefault())).orElse(null);
if (aktorId == null) {
throw new IllegalStateException("Fnr -> AktoerId var null på topic endringPaaOppfoelgingsBruker");
}
log.info("Fikk endring pa oppfolgingsbruker: {}, topic: aapen-fo-endringPaaOppfoelgingsBruker-v2", aktorId);
OppfolgingsbrukerEntity oppfolgingsbruker = new OppfolgingsbrukerEntity(aktorId.get(), kafkaMelding.getFodselsnummer(), kafkaMelding.getFormidlingsgruppe().name(), iservDato, kafkaMelding.getEtternavn(), kafkaMelding.getFornavn(), kafkaMelding.getOppfolgingsenhet(), Optional.ofNullable(kafkaMelding.getKvalifiseringsgruppe()).map(Kvalifiseringsgruppe::name).orElse(null), Optional.ofNullable(kafkaMelding.getRettighetsgruppe()).map(Rettighetsgruppe::name).orElse(null), Optional.ofNullable(kafkaMelding.getHovedmaal()).map(Hovedmaal::name).orElse(null), Optional.ofNullable(kafkaMelding.getSikkerhetstiltakType()).map(SikkerhetstiltakType::name).orElse(null), kafkaMelding.getDiskresjonskode(), Optional.ofNullable(kafkaMelding.getHarOppfolgingssak()).orElse(false), Optional.ofNullable(kafkaMelding.getSperretAnsatt()).orElse(false), Optional.ofNullable(kafkaMelding.getErDoed()).orElse(false), dodFraDato, kafkaMelding.getSistEndretDato());
oppfolgingsbrukerRepositoryV2.leggTilEllerEndreOppfolgingsbruker(oppfolgingsbruker);
oppdaterOpensearch(aktorId, oppfolgingsbruker);
}
use of no.nav.common.types.identer.Fnr in project veilarbportefolje by navikt.
the class ArbeidsListeController method getArbeidsListe.
@GetMapping("{fnr}")
public Arbeidsliste getArbeidsListe(@PathVariable("fnr") String fnrString) {
validerOppfolgingOgBruker(fnrString);
String innloggetVeileder = AuthUtils.getInnloggetVeilederIdent().toString();
Fnr fnr = Fnr.ofValidFnr(fnrString);
Try<AktorId> aktoerId = Try.of(() -> aktorClient.hentAktorId(fnr));
boolean harVeilederTilgang = brukerService.hentNavKontorFraDbLinkTilArena(fnr).map(enhet -> authService.harVeilederTilgangTilEnhet(innloggetVeileder, enhet)).orElse(false);
Arbeidsliste arbeidsliste = aktoerId.flatMap((id) -> arbeidslisteService.getArbeidsliste(id, innloggetVeileder)).toJavaOptional().orElse(emptyArbeidsliste()).setIsOppfolgendeVeileder(aktoerId.map(id -> arbeidslisteService.erVeilederForBruker(fnr, VeilederId.of(innloggetVeileder))).get()).setHarVeilederTilgang(harVeilederTilgang);
return harVeilederTilgang ? arbeidsliste : emptyArbeidsliste().setHarVeilederTilgang(false);
}
use of no.nav.common.types.identer.Fnr in project veilarbportefolje by navikt.
the class ArbeidsListeController method oppdaterArbeidsListe.
@PutMapping("{fnr}")
public Arbeidsliste oppdaterArbeidsListe(@RequestBody ArbeidslisteRequest body, @PathVariable("fnr") String fnrString) {
validerOppfolgingOgBruker(fnrString);
Fnr fnr = Fnr.ofValidFnr(fnrString);
sjekkTilgangTilEnhet(fnr);
validerArbeidsliste(body, true);
String veileder = AuthUtils.getInnloggetVeilederIdent().toString();
arbeidslisteService.updateArbeidsliste(data(body, fnr)).onFailure(e -> log.warn("Kunne ikke oppdatere arbeidsliste: {}", e.getMessage())).getOrElseThrow((Function<Throwable, RuntimeException>) RuntimeException::new);
return arbeidslisteService.getArbeidsliste(fnr, veileder).get().setHarVeilederTilgang(true).setIsOppfolgendeVeileder(arbeidslisteService.erVeilederForBruker(fnr, AuthUtils.getInnloggetVeilederIdent()));
}
use of no.nav.common.types.identer.Fnr in project veilarbportefolje by navikt.
the class ArbeidslisteService method erVeilederForBruker.
public Validation<String, Fnr> erVeilederForBruker(String fnr) {
VeilederId veilederId = AuthUtils.getInnloggetVeilederIdent();
boolean erVeilederForBruker = ValideringsRegler.validerFnr(fnr).map(validFnr -> erVeilederForBruker(validFnr, veilederId)).getOrElse(false);
if (erVeilederForBruker) {
return valid(Fnr.ofValidFnr(fnr));
}
return invalid(format("Veileder %s er ikke veileder for bruker med fnr %s", veilederId, fnr));
}
Aggregations