Skip to content

Commit 52492d0

Browse files
authored
Legger til info om fravær fra opptjeningsaktivitet. (#126)
1 parent 936a44d commit 52492d0

File tree

5 files changed

+66
-8
lines changed

5 files changed

+66
-8
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
package no.nav.k9.søknad.felles.fravær;
2+
3+
import com.fasterxml.jackson.annotation.JsonCreator;
4+
import com.fasterxml.jackson.annotation.JsonValue;
5+
6+
public enum AktivitetFravær {
7+
FRILNSER(
8+
"FRILANSER",
9+
"Frilanser"),
10+
11+
SELVSTENDIG_VIRKSOMHET(
12+
"SELVSTENDIG_VIRKSOMHET",
13+
"Selvstendig virksomhet"
14+
);
15+
16+
private String kode;
17+
private String årsak;
18+
19+
20+
AktivitetFravær(String kode, String årsak) {
21+
this.kode = kode;
22+
this.årsak = årsak;
23+
}
24+
25+
public String getÅrsak() {
26+
return årsak;
27+
}
28+
29+
@JsonValue
30+
public String getKode() { return kode; }
31+
32+
@JsonCreator
33+
public static AktivitetFravær of(String value) {
34+
if (value == null || value.isBlank()) {
35+
return null;
36+
}
37+
for (AktivitetFravær årsak : values()) {
38+
if (årsak.kode.equals(value)) {
39+
return årsak;
40+
}
41+
}
42+
throw new IllegalArgumentException("Ikke støttet årsak '" + value + "'");
43+
}
44+
}

soknad/src/main/java/no/nav/k9/søknad/felles/fravær/FraværPeriode.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
package no.nav.k9.søknad.felles.fravær;
22

33
import java.time.Duration;
4+
import java.util.List;
45
import java.util.Objects;
56

67
import javax.validation.Valid;
78
import javax.validation.constraints.NotNull;
9+
import javax.validation.constraints.Size;
810

911
import com.fasterxml.jackson.annotation.JsonAutoDetect;
1012
import com.fasterxml.jackson.annotation.JsonCreator;
@@ -27,15 +29,22 @@ public class FraværPeriode implements Comparable<FraværPeriode> {
2729
@JsonProperty(value = "årsak", required = true)
2830
private final FraværÅrsak årsak;
2931

32+
@NotNull
33+
@Size(min = 1, max = 2)
34+
@JsonProperty(value = "aktivitetFravær", required = true)
35+
private final List<AktivitetFravær> aktivitetFravær;
36+
3037
@JsonCreator
3138
public FraværPeriode(
3239
@JsonProperty("periode") @Valid Periode periode,
3340
@JsonProperty("duration") Duration duration,
34-
@JsonProperty("årsak") FraværÅrsak årsak
41+
@JsonProperty("årsak") FraværÅrsak årsak,
42+
@JsonProperty("aktivitetFravær") List<AktivitetFravær> aktivitetFravær
3543
) {
3644
this.periode = periode;
3745
this.duration = duration;
3846
this.årsak = årsak;
47+
this.aktivitetFravær = aktivitetFravær;
3948
}
4049

4150
public Periode getPeriode() {
@@ -74,6 +83,7 @@ public String toString() {
7483
"periode=" + periode +
7584
", duration=" + duration +
7685
", årsak=" + årsak +
86+
", fraværFraAktivitet=" + aktivitetFravær +
7787
'}';
7888
}
7989
}

soknad/src/test/java/no/nav/k9/søknad/ytelse/omsorgspenger/v1/OmsorgspengerUtbetalingValidatorTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,15 @@
55
import java.io.IOException;
66
import java.nio.file.Files;
77
import java.nio.file.Path;
8-
import java.time.LocalDate;
98
import java.util.List;
109

10+
import no.nav.k9.søknad.felles.fravær.AktivitetFravær;
1111
import org.junit.jupiter.api.Test;
1212

1313
import no.nav.k9.søknad.Søknad;
1414
import no.nav.k9.søknad.ValideringsFeil;
1515
import no.nav.k9.søknad.felles.Feil;
1616
import no.nav.k9.søknad.felles.opptjening.OpptjeningAktivitet;
17-
import no.nav.k9.søknad.felles.opptjening.Frilanser;
1817
import no.nav.k9.søknad.felles.fravær.FraværPeriode;
1918
import no.nav.k9.søknad.felles.fravær.FraværÅrsak;
2019
import no.nav.k9.søknad.ytelse.Ytelse;
@@ -111,7 +110,8 @@ private static String jsonFromFile(String filename) {
111110
new FraværPeriode(
112111
null,
113112
null,
114-
FraværÅrsak.ORDINÆRT_FRAVÆR
113+
FraværÅrsak.ORDINÆRT_FRAVÆR,
114+
List.of(AktivitetFravær.SELVSTENDIG_VIRKSOMHET)
115115
)
116116
),
117117
null,

soknad/src/test/resources/ytelse/omp/utbetaling/komplett-søknad-omp-utbetaling-snf.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,17 +49,20 @@
4949
{
5050
"periode": "2020-01-01/2020-01-11",
5151
"duration": "PT7H",
52-
"årsak": "STENGT_SKOLE_ELLER_BARNEHAGE"
52+
"årsak": "STENGT_SKOLE_ELLER_BARNEHAGE",
53+
"aktivitetFravær": ["FRILANSER"]
5354
},
5455
{
5556
"periode": "2020-01-21/2020-01-21",
5657
"duration": "PT5H",
57-
"årsak": "SMITTEVERNHENSYN"
58+
"årsak": "SMITTEVERNHENSYN",
59+
"aktivitetFravær": ["SELVSTENDIG_VIRKSOMHET"]
5860
},
5961
{
6062
"periode": "2020-01-31/2020-02-05",
6163
"duration": null,
62-
"årsak": "ORDINÆRT_FRAVÆR"
64+
"årsak": "ORDINÆRT_FRAVÆR",
65+
"aktivitetFravær": ["FRILANSER", "SELVSTENDIG_VIRKSOMHET"]
6366
}
6467
],
6568
"bosteder": null,

soknad/src/test/resources/ytelse/omp/utbetaling/minimum-søknad-omp-utbetaling-snf.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@
1717
{
1818
"periode": null,
1919
"duration": null,
20-
"årsak": "STENGT_SKOLE_ELLER_BARNEHAGE"
20+
"årsak": "STENGT_SKOLE_ELLER_BARNEHAGE",
21+
"aktivitetFravær": ["SELVSTENDIG_VIRKSOMHET"]
2122
}
2223
],
2324
"bosteder": null,

0 commit comments

Comments
 (0)