@@ -452,12 +452,14 @@ static List<BoolQueryBuilder> byggAktivitetFilterQuery(Filtervalg filtervalg, Bo
452
452
* som er lov å sortere på i OpenSearch er det viktig at vi ikke legger til nye sorteringsfelter i {@link Sorteringsfelt}
453
453
* uten å sørge for at disse også er tilgjengelige i {@link OppfolgingsBruker}.
454
454
*/
455
- static SearchSourceBuilder sorterQueryParametere (String sortOrder , String
456
- sortField , SearchSourceBuilder searchSourceBuilder , Filtervalg filtervalg , BrukerinnsynTilganger brukerinnsynTilganger ) {
457
- SortOrder order = "ascending" .equals (sortOrder ) ? SortOrder .ASC : SortOrder .DESC ;
458
-
459
- /* På sikt (tm) skal vi typesikre sortField slik at vi får Sorteringsfelt her, gjerne allereie på Controller-nivå. I denne omgangen lagar eg berre enumen for sorteringsfelta. 2024-11-28, Ingrid. */
460
- Sorteringsfelt sorteringsfelt = Sorteringsfelt .nameFromValue (sortField );
455
+ static SearchSourceBuilder sorterQueryParametere (
456
+ Sorteringsrekkefolge sorteringsrekkefolge ,
457
+ Sorteringsfelt sorteringsfelt ,
458
+ SearchSourceBuilder searchSourceBuilder ,
459
+ Filtervalg filtervalg ,
460
+ BrukerinnsynTilganger brukerinnsynTilganger
461
+ ) {
462
+ SortOrder sorteringsrekkefolgeOpenSearch = Sorteringsrekkefolge .STIGENDE .equals (sorteringsrekkefolge ) ? SortOrder .ASC : SortOrder .DESC ;
461
463
462
464
// Vi må assigne til en ny variabel for at kompilatoren sin exhaustiveness-check skal slå inn.
463
465
// Dette er strengt tatt ikke nødvendig da vi bare kunne returnert searchSourceBuilder direkte, men da ville vi
@@ -468,150 +470,150 @@ static SearchSourceBuilder sorterQueryParametere(String sortOrder, String
468
470
yield searchSourceBuilder ;
469
471
}
470
472
case VALGTE_AKTIVITETER -> {
471
- sorterValgteAktiviteter (filtervalg , searchSourceBuilder , order );
473
+ sorterValgteAktiviteter (filtervalg , searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
472
474
yield searchSourceBuilder ;
473
475
}
474
476
case MOTER_MED_NAV_IDAG -> {
475
- searchSourceBuilder .sort ("alle_aktiviteter_mote_startdato" , order );
477
+ searchSourceBuilder .sort ("alle_aktiviteter_mote_startdato" , sorteringsrekkefolgeOpenSearch );
476
478
yield searchSourceBuilder ;
477
479
}
478
480
case MOTESTATUS -> {
479
- searchSourceBuilder .sort ("aktivitet_mote_startdato" , order );
481
+ searchSourceBuilder .sort ("aktivitet_mote_startdato" , sorteringsrekkefolgeOpenSearch );
480
482
yield searchSourceBuilder ;
481
483
}
482
484
case I_AVTALT_AKTIVITET -> {
483
485
FieldSortBuilder builder = new FieldSortBuilder ("aktivitet_utlopsdatoer" )
484
- .order (order )
486
+ .order (sorteringsrekkefolgeOpenSearch )
485
487
.sortMode (MIN );
486
488
searchSourceBuilder .sort (builder );
487
489
yield searchSourceBuilder ;
488
490
}
489
491
case FODSELSNUMMER -> {
490
- searchSourceBuilder .sort ("fnr.raw" , order );
492
+ searchSourceBuilder .sort ("fnr.raw" , sorteringsrekkefolgeOpenSearch );
491
493
yield searchSourceBuilder ;
492
494
}
493
495
case UTLOPTE_AKTIVITETER -> {
494
- searchSourceBuilder .sort ("nyesteutlopteaktivitet" , order );
496
+ searchSourceBuilder .sort ("nyesteutlopteaktivitet" , sorteringsrekkefolgeOpenSearch );
495
497
yield searchSourceBuilder ;
496
498
}
497
499
case ARBEIDSLISTE_FRIST -> {
498
- searchSourceBuilder .sort ("arbeidsliste_frist" , order );
500
+ searchSourceBuilder .sort ("arbeidsliste_frist" , sorteringsrekkefolgeOpenSearch );
499
501
yield searchSourceBuilder ;
500
502
}
501
503
case AAP_TYPE -> {
502
- searchSourceBuilder .sort ("ytelse" , order );
504
+ searchSourceBuilder .sort ("ytelse" , sorteringsrekkefolgeOpenSearch );
503
505
yield searchSourceBuilder ;
504
506
}
505
507
case AAP_VURDERINGSFRIST -> {
506
- sorterAapVurderingsfrist (searchSourceBuilder , order , filtervalg );
508
+ sorterAapVurderingsfrist (searchSourceBuilder , sorteringsrekkefolgeOpenSearch , filtervalg );
507
509
yield searchSourceBuilder ;
508
510
}
509
511
case AAP_RETTIGHETSPERIODE -> {
510
- sorterAapRettighetsPeriode (searchSourceBuilder , order );
512
+ sorterAapRettighetsPeriode (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
511
513
yield searchSourceBuilder ;
512
514
}
513
515
case GJELDENDE_VEDTAK_14A_INNSATSGRUPPE -> {
514
- searchSourceBuilder .sort ("gjeldendeVedtak14a.innsatsgruppe" , order );
516
+ searchSourceBuilder .sort ("gjeldendeVedtak14a.innsatsgruppe" , sorteringsrekkefolgeOpenSearch );
515
517
yield searchSourceBuilder ;
516
518
}
517
519
case GJELDENDE_VEDTAK_14A_HOVEDMAL -> {
518
- searchSourceBuilder .sort ("gjeldendeVedtak14a.hovedmal" , order );
520
+ searchSourceBuilder .sort ("gjeldendeVedtak14a.hovedmal" , sorteringsrekkefolgeOpenSearch );
519
521
yield searchSourceBuilder ;
520
522
}
521
523
case GJELDENDE_VEDTAK_14A_VEDTAKSDATO -> {
522
- sorterGjeldendeVedtak14aVedtaksdato (searchSourceBuilder , order );
524
+ sorterGjeldendeVedtak14aVedtaksdato (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
523
525
yield searchSourceBuilder ;
524
526
}
525
527
case UTKAST_14A_STATUS -> {
526
- searchSourceBuilder .sort ("utkast_14a_status" , order );
528
+ searchSourceBuilder .sort ("utkast_14a_status" , sorteringsrekkefolgeOpenSearch );
527
529
yield searchSourceBuilder ;
528
530
}
529
531
case ARBEIDSLISTE_KATEGORI -> {
530
- searchSourceBuilder .sort ("arbeidsliste_kategori" , order );
532
+ searchSourceBuilder .sort ("arbeidsliste_kategori" , sorteringsrekkefolgeOpenSearch );
531
533
yield searchSourceBuilder ;
532
534
}
533
535
case SISTE_ENDRING_DATO -> {
534
- sorterSisteEndringTidspunkt (searchSourceBuilder , order , filtervalg );
536
+ sorterSisteEndringTidspunkt (searchSourceBuilder , sorteringsrekkefolgeOpenSearch , filtervalg );
535
537
yield searchSourceBuilder ;
536
538
}
537
539
case ARBEIDSLISTE_OVERSKRIFT -> {
538
- sorterArbeidslisteOverskrift (searchSourceBuilder , order );
540
+ sorterArbeidslisteOverskrift (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
539
541
yield searchSourceBuilder ;
540
542
}
541
543
case FODELAND -> {
542
- sorterFodeland (searchSourceBuilder , order );
544
+ sorterFodeland (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
543
545
yield searchSourceBuilder ;
544
546
}
545
547
case STATSBORGERSKAP -> {
546
- sorterStatsborgerskap (searchSourceBuilder , order );
548
+ sorterStatsborgerskap (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
547
549
yield searchSourceBuilder ;
548
550
}
549
551
case STATSBORGERSKAP_GYLDIG_FRA -> {
550
- sorterStatsborgerskapGyldigFra (searchSourceBuilder , order );
552
+ sorterStatsborgerskapGyldigFra (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
551
553
yield searchSourceBuilder ;
552
554
}
553
555
case TOLKESPRAK -> {
554
- sorterTolkeSpraak (filtervalg , searchSourceBuilder , order );
556
+ sorterTolkeSpraak (filtervalg , searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
555
557
yield searchSourceBuilder ;
556
558
}
557
559
case TOLKEBEHOV_SIST_OPPDATERT -> {
558
- searchSourceBuilder .sort ("tolkBehovSistOppdatert" , order );
560
+ searchSourceBuilder .sort ("tolkBehovSistOppdatert" , sorteringsrekkefolgeOpenSearch );
559
561
yield searchSourceBuilder ;
560
562
}
561
563
case ENSLIGE_FORSORGERE_UTLOP_YTELSE -> {
562
- sorterEnsligeForsorgereUtlopsDato (searchSourceBuilder , order );
564
+ sorterEnsligeForsorgereUtlopsDato (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
563
565
yield searchSourceBuilder ;
564
566
}
565
567
case ENSLIGE_FORSORGERE_VEDTAKSPERIODETYPE -> {
566
- sorterEnsligeForsorgereVedtaksPeriode (searchSourceBuilder , order );
568
+ sorterEnsligeForsorgereVedtaksPeriode (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
567
569
yield searchSourceBuilder ;
568
570
}
569
571
case ENSLIGE_FORSORGERE_AKTIVITETSPLIKT -> {
570
- sorterEnsligeForsorgereAktivitetsPlikt (searchSourceBuilder , order );
572
+ sorterEnsligeForsorgereAktivitetsPlikt (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
571
573
yield searchSourceBuilder ;
572
574
}
573
575
case ENSLIGE_FORSORGERE_OM_BARNET -> {
574
- sorterEnsligeForsorgereOmBarnet (searchSourceBuilder , order );
576
+ sorterEnsligeForsorgereOmBarnet (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
575
577
yield searchSourceBuilder ;
576
578
}
577
579
case BARN_UNDER_18_AR -> {
578
- sorterBarnUnder18 (searchSourceBuilder , order , brukerinnsynTilganger , filtervalg );
580
+ sorterBarnUnder18 (searchSourceBuilder , sorteringsrekkefolgeOpenSearch , brukerinnsynTilganger , filtervalg );
579
581
yield searchSourceBuilder ;
580
582
}
581
583
case BRUKERS_SITUASJON_SIST_ENDRET -> {
582
- searchSourceBuilder .sort ("brukers_situasjon_sist_endret" , order );
584
+ searchSourceBuilder .sort ("brukers_situasjon_sist_endret" , sorteringsrekkefolgeOpenSearch );
583
585
yield searchSourceBuilder ;
584
586
}
585
587
case UTDANNING_OG_SITUASJON_SIST_ENDRET -> {
586
- searchSourceBuilder .sort ("utdanning_og_situasjon_sist_endret" , order );
588
+ searchSourceBuilder .sort ("utdanning_og_situasjon_sist_endret" , sorteringsrekkefolgeOpenSearch );
587
589
yield searchSourceBuilder ;
588
590
}
589
591
case HUSKELAPP_FRIST -> {
590
- sorterHuskelappFrist (searchSourceBuilder , order );
592
+ sorterHuskelappFrist (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
591
593
yield searchSourceBuilder ;
592
594
}
593
595
case HUSKELAPP -> {
594
- sorterHuskelappEksistere (searchSourceBuilder , order );
596
+ sorterHuskelappEksistere (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
595
597
yield searchSourceBuilder ;
596
598
}
597
599
case HUSKELAPP_KOMMENTAR -> {
598
- searchSourceBuilder .sort ("huskelapp.kommentar" , order );
600
+ searchSourceBuilder .sort ("huskelapp.kommentar" , sorteringsrekkefolgeOpenSearch );
599
601
yield searchSourceBuilder ;
600
602
}
601
603
case FARGEKATEGORI -> {
602
- searchSourceBuilder .sort ("fargekategori" , order );
604
+ searchSourceBuilder .sort ("fargekategori" , sorteringsrekkefolgeOpenSearch );
603
605
yield searchSourceBuilder ;
604
606
}
605
607
case TILTAKSHENDELSE_DATO_OPPRETTET -> {
606
- sorterTiltakshendelseOpprettetDato (searchSourceBuilder , order );
608
+ sorterTiltakshendelseOpprettetDato (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
607
609
yield searchSourceBuilder ;
608
610
}
609
611
case TILTAKSHENDELSE_TEKST -> {
610
- searchSourceBuilder .sort ("tiltakshendelse.tekst" , order );
612
+ searchSourceBuilder .sort ("tiltakshendelse.tekst" , sorteringsrekkefolgeOpenSearch );
611
613
yield searchSourceBuilder ;
612
614
}
613
615
case UTGATT_VARSEL_DATO -> {
614
- sorterUtgattVarselHendelseDato (searchSourceBuilder , order );
616
+ sorterUtgattVarselHendelseDato (searchSourceBuilder , sorteringsrekkefolgeOpenSearch );
615
617
yield searchSourceBuilder ;
616
618
}
617
619
// Vi har eksplisitt latt være å definere en "default" case i switch-en for å tvinge oss selv til å håndtere
@@ -621,7 +623,7 @@ static SearchSourceBuilder sorterQueryParametere(String sortOrder, String
621
623
FORRIGE_DATO_FOR_AVTALT_AKTIVITET , UTKAST_14A_STATUS_ENDRET , UTKAST_14A_ANSVARLIG_VEILEDER ,
622
624
BOSTED_KOMMUNE , BOSTED_BYDEL , BOSTED_SIST_OPPDATERT , OPPFOLGING_STARTET , UTLOPSDATO , VEILEDER_IDENT ,
623
625
DAGPENGER_UTLOP_UKE , DAGPENGER_PERM_UTLOP_UKE -> {
624
- searchSourceBuilder .sort (sorteringsfelt .sorteringsverdi , order );
626
+ searchSourceBuilder .sort (sorteringsfelt .sorteringsverdi , sorteringsrekkefolgeOpenSearch );
625
627
yield searchSourceBuilder ;
626
628
}
627
629
};
0 commit comments