13
13
import no .nav .k9 .søknad .felles .type .Periode ;
14
14
import no .nav .k9 .søknad .ytelse .psb .v1 .arbeidstid .Arbeidstid ;
15
15
16
- public class EndringsperiodeKalkulator {
17
-
16
+ class PerioderMedEndringUtil {
18
17
19
18
public static List <Periode > getEndringsperiode (PleiepengerSyktBarn psb ) {
20
- var alleYtelsePerioderTidsserie =
21
- ytelsePerioderTilTidsserie ( getYtelsePerioder (psb ));
19
+ var allePerioderMedEndringTidsserie =
20
+ tilTidsserie ( getAllePerioderMedEndring (psb ));
22
21
var søknadsperiode = toLocalDateTimeline (psb .getSøknadsperiodeList ());
23
- var endringsperiodeTidsserie = alleYtelsePerioderTidsserie .disjoint (søknadsperiode );
22
+ var endringsperiodeTidsserie = allePerioderMedEndringTidsserie .disjoint (søknadsperiode );
24
23
return TidsserieUtils .toPeriodeList (endringsperiodeTidsserie );
25
24
}
26
25
27
- public static List <YtelsePerioder > getYtelsePerioder (PleiepengerSyktBarn psb ) {
28
- var listen = new ArrayList <YtelsePerioder >();
29
- listen .add (new YtelsePerioder ().medPerioder ("utenlandsopphold" , psb .getUtenlandsopphold ().getPerioder ()));
30
- listen .add (new YtelsePerioder ().medPerioder ("bosteder" , psb .getBosteder ().getPerioder ()));
31
- listen .add (new YtelsePerioder ().medPerioder ("beredskap" , psb .getBeredskap ().getPerioder ()));
32
- listen .add (new YtelsePerioder ().medPerioder ("nattevåk" , psb .getNattevåk ().getPerioder ()));
33
- listen .add (new YtelsePerioder ().medPerioder ("tilsynsordning" , psb .getTilsynsordning ().getPerioder ()));
34
- listen .add (new YtelsePerioder ().medPerioder ("lovbestemtFerie" , psb .getLovbestemtFerie ().getPerioder ()));
35
- listen .add (new YtelsePerioder ().medPerioder ("uttak" , psb .getUttak ().getPerioder ()));
26
+ public static List <PerioderMedEndring > getAllePerioderMedEndring (PleiepengerSyktBarn psb ) {
27
+ var listen = new ArrayList <PerioderMedEndring >();
28
+ listen .add (new PerioderMedEndring ().medPerioder ("utenlandsopphold" , psb .getUtenlandsopphold ().getPerioder ()));
29
+ listen .add (new PerioderMedEndring ().medPerioder ("bosteder" , psb .getBosteder ().getPerioder ()));
30
+ listen .add (new PerioderMedEndring ().medPerioder ("beredskap" , psb .getBeredskap ().getPerioder ()));
31
+ listen .add (new PerioderMedEndring ().medPerioder ("nattevåk" , psb .getNattevåk ().getPerioder ()));
32
+ listen .add (new PerioderMedEndring ().medPerioder ("tilsynsordning" , psb .getTilsynsordning ().getPerioder ()));
33
+ listen .add (new PerioderMedEndring ().medPerioder ("lovbestemtFerie" , psb .getLovbestemtFerie ().getPerioder ()));
34
+ listen .add (new PerioderMedEndring ().medPerioder ("uttak" , psb .getUttak ().getPerioder ()));
36
35
listen .addAll (getArbeidstidPerioder (psb .getArbeidstid ()));
37
36
return listen ;
38
37
}
39
38
40
- public static List <YtelsePerioder > getArbeidstidPerioder (Arbeidstid arbeidstid ) {
41
- var listen = new ArrayList <YtelsePerioder >();
39
+ public static List <PerioderMedEndring > getArbeidstidPerioder (Arbeidstid arbeidstid ) {
40
+ var listen = new ArrayList <PerioderMedEndring >();
42
41
if (arbeidstid == null ) {
43
42
return listen ;
44
43
}
45
44
if (arbeidstid .getArbeidstakerList () != null && !arbeidstid .getArbeidstakerList ().isEmpty ()) {
46
45
int i = 0 ;
47
46
for (var at : arbeidstid .getArbeidstakerList ()) {
48
- listen .add (new YtelsePerioder ().medPerioder ("arbeidstid.arbeidstaker[" + i + "]" , at .getArbeidstidInfo ().getPerioder ()));
47
+ listen .add (new PerioderMedEndring ().medPerioder ("arbeidstid.arbeidstaker[" + i + "]" , at .getArbeidstidInfo ().getPerioder ()));
49
48
i ++;
50
49
}
51
50
}
52
51
if (arbeidstid .getFrilanserArbeidstidInfo ().isPresent ()) {
53
- listen .add (new YtelsePerioder ().medPerioder ("arbeidstid.frilanser" ,
52
+ listen .add (new PerioderMedEndring ().medPerioder ("arbeidstid.frilanser" ,
54
53
arbeidstid .getFrilanserArbeidstidInfo ().get ().getPerioder ()));
55
54
}
56
55
if (arbeidstid .getSelvstendigNæringsdrivendeArbeidstidInfo ().isPresent ()) {
57
- listen .add (new YtelsePerioder ().medPerioder ("arbeidstid.selvstendigNæringsdrivende" ,
56
+ listen .add (new PerioderMedEndring ().medPerioder ("arbeidstid.selvstendigNæringsdrivende" ,
58
57
arbeidstid .getSelvstendigNæringsdrivendeArbeidstidInfo ().get ().getPerioder ()));
59
58
}
60
59
return listen ;
61
60
}
62
61
63
- public static LocalDateTimeline <Boolean > ytelsePerioderTilTidsserie (List <YtelsePerioder > listen ) {
62
+ public static LocalDateTimeline <Boolean > tilTidsserie (List <PerioderMedEndring > listen ) {
64
63
var temp = new LocalDateTimeline <Boolean >(Collections .emptyList ());
65
- for (YtelsePerioder yp : listen ) {
64
+ for (PerioderMedEndring yp : listen ) {
66
65
temp = temp .union (
67
66
toLocalDateTimeline (yp .getPeriodeList ()),
68
67
StandardCombinators ::coalesceLeftHandSide );
69
68
}
70
69
return temp ;
71
70
}
72
71
73
- public static class YtelsePerioder {
72
+ public static class PerioderMedEndring {
74
73
private String felt ;
75
74
private List <Periode > periodeList ;
76
75
77
- public YtelsePerioder () {
76
+ public PerioderMedEndring () {
78
77
79
78
}
80
79
@@ -86,13 +85,7 @@ public List<Periode> getPeriodeList() {
86
85
return periodeList ;
87
86
}
88
87
89
- YtelsePerioder medPerioder (String felt , List <Periode > periodeList ) {
90
- this .felt = felt ;
91
- this .periodeList = periodeList ;
92
- return this ;
93
- }
94
-
95
- YtelsePerioder medPerioder (String felt , Map <Periode , ?> periodeMap ) {
88
+ PerioderMedEndring medPerioder (String felt , Map <Periode , ?> periodeMap ) {
96
89
this .felt = felt ;
97
90
this .periodeList = new ArrayList <>(periodeMap .keySet ());
98
91
return this ;
0 commit comments