1
1
package no .nav .ung .sak .perioder ;
2
2
3
- import java .util .Collection ;
4
- import java .util .Set ;
5
-
6
3
import jakarta .enterprise .context .Dependent ;
7
4
import jakarta .inject .Inject ;
8
5
import no .nav .fpsak .tidsserie .LocalDateInterval ;
13
10
import no .nav .ung .sak .trigger .ProsessTriggereRepository ;
14
11
import no .nav .ung .sak .trigger .Trigger ;
15
12
13
+ import java .util .Collection ;
14
+ import java .util .Set ;
15
+
16
16
@ Dependent
17
17
public class ProsessTriggerPeriodeUtleder {
18
18
19
- // Prosesstriggere som er relevante. RE_HENDELSE_OPPHØR_UNGDOMSPROGRAM håndteres i UtledPeriodeTilVurderingFraUngdomsprogram
20
- public static final Set <BehandlingÅrsakType > RELEVANTE_ÅRSAKER = Set .of (
21
- BehandlingÅrsakType .RE_HENDELSE_DØD_FORELDER ,
22
- BehandlingÅrsakType .RE_HENDELSE_DØD_BARN ,
23
- BehandlingÅrsakType .RE_HENDELSE_FØDSEL ,
24
- BehandlingÅrsakType .RE_TRIGGER_BEREGNING_HØY_SATS ,
25
- BehandlingÅrsakType .RE_RAPPORTERING_INNTEKT ,
26
- BehandlingÅrsakType .NY_SØKT_PROGRAM_PERIODE
27
- );
28
19
private final ProsessTriggereRepository prosessTriggereRepository ;
29
20
private final UngdomsytelseSøknadsperiodeTjeneste ungdomsytelseSøknadsperiodeTjeneste ;
30
21
@@ -41,11 +32,13 @@ public ProsessTriggerPeriodeUtleder(ProsessTriggereRepository prosessTriggereRep
41
32
* @return Tidslinje for perioder til vurdering
42
33
*/
43
34
public LocalDateTimeline <Set <BehandlingÅrsakType >> utledTidslinje (Long behandligId ) {
44
- return prosessTriggereRepository .hentGrunnlag (behandligId )
35
+ final var triggere = prosessTriggereRepository .hentGrunnlag (behandligId )
45
36
.stream ()
46
37
.map (ProsessTriggere ::getTriggere )
47
38
.flatMap (Collection ::stream )
48
- .filter (it -> RELEVANTE_ÅRSAKER .contains (it .getÅrsak ()))
39
+ .toList ();
40
+ return triggere
41
+ .stream ()
49
42
.map (p -> new LocalDateTimeline <>(finnPeriodeForBehandlingsårsak (behandligId , p , p .getÅrsak ()), Set .of (p .getÅrsak ())))
50
43
.reduce ((t1 , t2 ) -> t1 .crossJoin (t2 , StandardCombinators ::union ))
51
44
.orElse (LocalDateTimeline .empty ());
0 commit comments