Skip to content

Commit e53a39d

Browse files
authored
Legger til SøknadÅrsak på FraværPeriode OMP (#179)
1 parent 4e3ee7d commit e53a39d

File tree

3 files changed

+58
-0
lines changed

3 files changed

+58
-0
lines changed

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

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,10 @@ public class FraværPeriode implements Comparable<FraværPeriode> {
3131
@JsonProperty(value = "årsak", required = true)
3232
private final FraværÅrsak årsak;
3333

34+
@Valid
35+
@JsonProperty(value = "søknadÅrsak")
36+
private SøknadÅrsak søknadÅrsak;
37+
3438
@NotNull
3539
@Size(min = 1, max = 2)
3640
@JsonProperty(value = "aktivitetFravær", required = true)
@@ -45,11 +49,13 @@ public class FraværPeriode implements Comparable<FraværPeriode> {
4549
@JsonProperty("periode") @Valid Periode periode,
4650
@JsonProperty("duration") Duration duration,
4751
@JsonProperty("årsak") FraværÅrsak årsak,
52+
@JsonProperty("søknadÅrsak") SøknadÅrsak søknadÅrsak,
4853
@JsonProperty("aktivitetFravær") List<AktivitetFravær> aktivitetFravær,
4954
@JsonProperty("organisasjonsnummer") Organisasjonsnummer arbeidsgiverOrgNr) {
5055
this.periode = periode;
5156
this.duration = duration;
5257
this.årsak = årsak;
58+
this.søknadÅrsak = søknadÅrsak;
5359
this.aktivitetFravær = aktivitetFravær.stream().sorted().collect(Collectors.toList()); //sorterer for å få enklere equals og hashcode
5460
this.arbeidsgiverOrgNr = arbeidsgiverOrgNr;
5561
}
@@ -102,6 +108,7 @@ public String toString() {
102108
"periode=" + periode +
103109
", duration=" + duration +
104110
", årsak=" + årsak +
111+
", søknadÅrsak=" + søknadÅrsak +
105112
", fraværFraAktivitet=" + aktivitetFravær +
106113
(arbeidsgiverOrgNr != null ? ", arbeidsgiverOrgNr=MASKERT" : "") +
107114
'}';
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
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 SøknadÅrsak {
7+
ARBEIDSGIVER_KONKURS(
8+
"ARBEIDSGIVER_KONKURS",
9+
"Arbeidsgiver er konkurs"),
10+
11+
NYOPPSTARTET_HOS_ARBEIDSGIVER(
12+
"NYOPPSTARTET_HOS_ARBEIDSGIVER",
13+
"Har startet hos ny arbeidsgiver"
14+
),
15+
16+
KONFLIKT_MED_ARBEIDSGIVER(
17+
"KONFLIKT_MED_ARBEIDSGIVER",
18+
"Konflikt med arbeidsgiver"
19+
);
20+
21+
22+
private String kode;
23+
private String årsak;
24+
25+
26+
SøknadÅrsak(String kode, String årsak) {
27+
this.kode = kode;
28+
this.årsak = årsak;
29+
}
30+
31+
public String getÅrsak() {
32+
return årsak;
33+
}
34+
35+
@JsonValue
36+
public String getKode() { return kode; }
37+
38+
@JsonCreator
39+
public static SøknadÅrsak of(String value) {
40+
if (value == null || value.isBlank()) {
41+
return null;
42+
}
43+
for (SøknadÅrsak årsak : values()) {
44+
if (årsak.kode.equals(value)) {
45+
return årsak;
46+
}
47+
}
48+
throw new IllegalArgumentException("Ikke støttet årsak '" + value + "'");
49+
}
50+
}

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ private static String jsonFromFile(String filename) {
111111
null,
112112
null,
113113
FraværÅrsak.ORDINÆRT_FRAVÆR,
114+
null,
114115
List.of(AktivitetFravær.SELVSTENDIG_VIRKSOMHET),
115116
null
116117
)

0 commit comments

Comments
 (0)