use of no.nav.common.types.identer.EnhetId in project veilarbportefolje by navikt.
the class ArbeidslisteRepositoryTest method hentArbeidslisteForVeilederPaEnhet_arbeidslisteKanLagesAvAnnenVeileder.
@Test
public void hentArbeidslisteForVeilederPaEnhet_arbeidslisteKanLagesAvAnnenVeileder() {
EnhetId navKontor = EnhetId.of(data.getNavKontorForArbeidsliste());
ArbeidslisteDTO arbeidslisteLagetAvAnnenVeileder = new ArbeidslisteDTO(randomFnr()).setAktorId(randomAktorId()).setVeilederId(randomVeilederId()).setFrist(data.getFrist()).setOverskrift(data.getOverskrift()).setKategori(data.getKategori()).setNavKontorForArbeidsliste(navKontor.get()).setKommentar("Arbeidsliste 1 kopi kommentar");
insertArbeidslister();
insertOppfolgingsInformasjon();
repo.insertArbeidsliste(arbeidslisteLagetAvAnnenVeileder);
insertOppfolgingsInformasjon(arbeidslisteLagetAvAnnenVeileder.getAktorId(), data.getVeilederId(), navKontor);
List<Arbeidsliste> arbeidslister = repo.hentArbeidslisteForVeilederPaEnhet(navKontor, data.getVeilederId());
assertThat(arbeidslister.size()).isEqualTo(2);
assertThat(arbeidslister.stream().anyMatch(x -> x.getKommentar().equals(data.getKommentar()))).isTrue();
assertThat(arbeidslister.stream().anyMatch(x -> x.getKommentar().equals(arbeidslisteLagetAvAnnenVeileder.getKommentar()))).isTrue();
}
use of no.nav.common.types.identer.EnhetId in project veilarbportefolje by navikt.
the class ArbeidslisteRepositoryTest method hentArbeidslisteForVeilederPaEnhet_filtrerPaEnhet.
@Test
public void hentArbeidslisteForVeilederPaEnhet_filtrerPaEnhet() {
EnhetId annetNavKontor = EnhetId.of("1111");
ArbeidslisteDTO arbeidslistePaNyEnhet = new ArbeidslisteDTO(randomFnr()).setAktorId(randomAktorId()).setVeilederId(data.getVeilederId()).setFrist(data.getFrist()).setOverskrift(data.getOverskrift()).setKategori(data.getKategori()).setNavKontorForArbeidsliste(annetNavKontor.get()).setKommentar("Arbeidsliste 1 kopi kommentar");
insertArbeidslister();
insertOppfolgingsInformasjon();
insertOppfolgingsInformasjon(arbeidslistePaNyEnhet.getAktorId(), arbeidslistePaNyEnhet.getVeilederId(), annetNavKontor);
repo.insertArbeidsliste(arbeidslistePaNyEnhet);
List<Arbeidsliste> arbeidslistes1 = repo.hentArbeidslisteForVeilederPaEnhet(EnhetId.of(data.getNavKontorForArbeidsliste()), data.getVeilederId());
List<Arbeidsliste> arbeidslistesAnnenEnhet = repo.hentArbeidslisteForVeilederPaEnhet(EnhetId.of(arbeidslistePaNyEnhet.getNavKontorForArbeidsliste()), arbeidslistePaNyEnhet.getVeilederId());
assertThat(arbeidslistePaNyEnhet.getVeilederId()).isEqualTo(data.getVeilederId());
assertThat(arbeidslistes1.size()).isEqualTo(1);
assertThat(arbeidslistesAnnenEnhet.size()).isEqualTo(1);
assertThat(arbeidslistes1.get(0).getKommentar()).isEqualTo(data.getKommentar());
assertThat(arbeidslistesAnnenEnhet.get(0).getKommentar()).isEqualTo(arbeidslistePaNyEnhet.getKommentar());
}
use of no.nav.common.types.identer.EnhetId in project veilarbportefolje by navikt.
the class OpensearchService method hentBrukereMedArbeidsliste.
public List<Bruker> hentBrukereMedArbeidsliste(String veilederId, String enhetId) {
SearchSourceBuilder request = byggArbeidslisteQuery(enhetId, veilederId);
OpensearchResponse response = search(request, indexName.getValue(), OpensearchResponse.class);
return response.hits().getHits().stream().map(hit -> Bruker.of(hit.get_source(), erVedtakstottePilotPa(EnhetId.of(enhetId)))).collect(toList());
}
use of no.nav.common.types.identer.EnhetId in project veilarbportefolje by navikt.
the class OpensearchService method hentBrukere.
public BrukereMedAntall hentBrukere(String enhetId, Optional<String> veilederIdent, String sortOrder, String sortField, Filtervalg filtervalg, Integer fra, Integer antall) {
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
int from = Optional.ofNullable(fra).orElse(0);
int size = Optional.ofNullable(antall).orElse(5000);
searchSourceBuilder.from(from);
searchSourceBuilder.size(size);
BoolQueryBuilder boolQuery = boolQuery();
boolQuery.must(matchQuery("enhet_id", enhetId));
boolQuery.must(matchQuery("oppfolging", true));
boolean kallesFraMinOversikt = veilederIdent.isPresent() && StringUtils.isNotBlank(veilederIdent.get());
if (kallesFraMinOversikt) {
boolQuery.filter(termQuery("veileder_id", veilederIdent.get()));
}
List<String> veiledereMedTilgangTilEnhet = veilarbVeilederClient.hentVeilederePaaEnhet(EnhetId.of(enhetId));
if (filtervalg.harAktiveFilter()) {
boolean erVedtakstottePilotPa = erVedtakstottePilotPa(EnhetId.of(enhetId));
filtervalg.ferdigfilterListe.forEach(filter -> boolQuery.filter(leggTilFerdigFilter(filter, veiledereMedTilgangTilEnhet, erVedtakstottePilotPa)));
leggTilManuelleFilter(boolQuery, filtervalg, unleashService);
}
searchSourceBuilder.query(boolQuery);
if (kallesFraMinOversikt) {
searchSourceBuilder.sort("ny_for_veileder", SortOrder.DESC);
} else {
sorterPaaNyForEnhet(searchSourceBuilder, veiledereMedTilgangTilEnhet);
}
sorterQueryParametere(sortOrder, sortField, searchSourceBuilder, filtervalg);
OpensearchResponse response = search(searchSourceBuilder, indexName.getValue(), OpensearchResponse.class);
int totalHits = response.hits().getTotal().getValue();
List<Bruker> brukere = response.hits().getHits().stream().map(Hit::get_source).map(oppfolgingsBruker -> setNyForEnhet(oppfolgingsBruker, veiledereMedTilgangTilEnhet)).map(oppfolgingsBruker -> mapOppfolgingsBrukerTilBruker(oppfolgingsBruker, filtervalg, enhetId)).collect(toList());
return new BrukereMedAntall(totalHits, brukere);
}
use of no.nav.common.types.identer.EnhetId in project veilarbportefolje by navikt.
the class ArbeidslistaSorteringOpensearch method sisteendring_sortering.
@Test
public void sisteendring_sortering() {
EnhetId enhetId = EnhetId.of("123");
VeilederId veilederId = new VeilederId("V1");
final AktorId aktoerId_1 = randomAktorId();
final AktorId aktoerId_2 = randomAktorId();
final AktorId aktoerId_3 = randomAktorId();
populateOpensearch(enhetId, veilederId, aktoerId_1.get(), aktoerId_2.get(), aktoerId_3.get());
Arbeidsliste.Kategori arbeidsliste1_kategori = GRONN;
Arbeidsliste.Kategori arbeidsliste2_kategori = BLA;
Arbeidsliste.Kategori arbeidsliste3_kategori = LILLA;
ArbeidslisteDTO arbeidsliste1 = new ArbeidslisteDTO(Fnr.ofValidFnr("01010101010")).setAktorId(aktoerId_1).setVeilederId(veilederId).setKategori(arbeidsliste1_kategori).setOverskrift("Arbeid er en overskrift");
ArbeidslisteDTO arbeidsliste2 = new ArbeidslisteDTO(Fnr.ofValidFnr("01010101010")).setAktorId(aktoerId_2).setVeilederId(veilederId).setKategori(arbeidsliste2_kategori).setOverskrift("Arbeid skal først");
ArbeidslisteDTO arbeidsliste3 = new ArbeidslisteDTO(Fnr.ofValidFnr("01010101010")).setAktorId(aktoerId_3).setVeilederId(veilederId).setKategori(arbeidsliste3_kategori).setOverskrift("Nav skal sist");
opensearchIndexerV2.updateArbeidsliste(arbeidsliste1);
opensearchIndexerV2.updateArbeidsliste(arbeidsliste3);
opensearchIndexerV2.updateArbeidsliste(arbeidsliste2);
pollOpensearchUntil(() -> {
final BrukereMedAntall brukereMedAntall = opensearchService.hentBrukere(enhetId.get(), empty(), "ascending", "ikke_satt", getArbeidslisteFilter(), null, null);
return brukereMedAntall.getAntall() == 3;
});
var sortertResponsAscending = opensearchService.hentBrukere(enhetId.get(), empty(), "ascending", "arbeidsliste_overskrift", getArbeidslisteFilter(), null, null);
var sortertResponsDescending = opensearchService.hentBrukere(enhetId.get(), empty(), "desc", "arbeidsliste_overskrift", getArbeidslisteFilter(), null, null);
assertThat(sortertResponsAscending.getBrukere().get(0).getArbeidsliste().getKategori()).isEqualTo(arbeidsliste2_kategori);
assertThat(sortertResponsAscending.getBrukere().get(1).getArbeidsliste().getKategori()).isEqualTo(arbeidsliste1_kategori);
assertThat(sortertResponsAscending.getBrukere().get(2).getArbeidsliste().getKategori()).isEqualTo(arbeidsliste3_kategori);
assertThat(sortertResponsDescending.getBrukere().get(2).getArbeidsliste().getKategori()).isEqualTo(arbeidsliste2_kategori);
assertThat(sortertResponsDescending.getBrukere().get(1).getArbeidsliste().getKategori()).isEqualTo(arbeidsliste1_kategori);
assertThat(sortertResponsDescending.getBrukere().get(0).getArbeidsliste().getKategori()).isEqualTo(arbeidsliste3_kategori);
}
Aggregations