Skip to content

Commit 9c019c7

Browse files
ekunstiangre
andauthored
Rydder i valideringer (#198)
* Rydder i valideringer Co-authored-by: Stian Grenborgen <[email protected]>
1 parent 855175a commit 9c019c7

File tree

23 files changed

+103
-214
lines changed

23 files changed

+103
-214
lines changed

soknad-omsorgspenger-utbetaling/src/test/java/no/nav/k9/søknad/omsorgspenger/utbetaling/snf/OmsorgspengerUtbetalingSøknadValidatorTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ public class OmsorgspengerUtbetalingSøknadValidatorTest {
7777
.build()
7878
);
7979
builder.selvstendigNæringsdrivende(selvstendingeVirksomheter);
80-
Assertions.assertThat(verifyHarFeil(builder)).hasSize(3);
80+
Assertions.assertThat(verifyHarFeil(builder)).hasSize(2);
8181

8282
}
8383

@@ -89,7 +89,8 @@ public class OmsorgspengerUtbetalingSøknadValidatorTest {
8989
.organisasjonsnummer(Organisasjonsnummer.of("816338352"))
9090
.periode(
9191
new Periode(LocalDate.now().minusMonths(2), LocalDate.now()),
92-
SelvstendigNæringsdrivende.SelvstendigNæringsdrivendePeriodeInfo.builder().build()
92+
SelvstendigNæringsdrivende.SelvstendigNæringsdrivendePeriodeInfo.builder()
93+
.build()
9394
).build()
9495
);
9596
builder.selvstendigNæringsdrivende(selvstendingeVirksomheter);

soknad/src/main/java/no/nav/k9/søknad/felles/opptjening/AnnenAktivitet.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,23 +13,22 @@
1313

1414
@JsonIgnoreProperties(ignoreUnknown = true)
1515
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.NONE, getterVisibility = JsonAutoDetect.Visibility.NONE, setterVisibility = JsonAutoDetect.Visibility.NONE, isGetterVisibility = JsonAutoDetect.Visibility.NONE, creatorVisibility = JsonAutoDetect.Visibility.NONE)
16-
1716
public class AnnenAktivitet {
1817

19-
@JsonProperty("periode")
18+
@JsonProperty(value = "periode", required = true)
2019
@Valid
2120
@NotNull
2221
private Periode periode;
2322

24-
@JsonProperty(value = "annenAktivitetType")
23+
@JsonProperty(value = "annenAktivitetType", required = true)
2524
@Valid
2625
@NotNull
2726
private AnnenAktivitetType annenAktivitetType;
2827

2928

3029
@JsonCreator
31-
public AnnenAktivitet(@JsonProperty(value = "periode") @Valid @NotNull Periode periode,
32-
@JsonProperty(value = "annenAktivitetType") @Valid @NotNull AnnenAktivitetType annenAktivitetType) {
30+
public AnnenAktivitet(@JsonProperty(value = "periode", required = true) @Valid @NotNull Periode periode,
31+
@JsonProperty(value = "annenAktivitetType", required = true) @Valid @NotNull AnnenAktivitetType annenAktivitetType) {
3332
this.periode = periode;
3433
this.annenAktivitetType = annenAktivitetType;
3534
}

soknad/src/main/java/no/nav/k9/søknad/felles/opptjening/Arbeidstaker.java

Lines changed: 0 additions & 71 deletions
This file was deleted.

soknad/src/main/java/no/nav/k9/søknad/felles/opptjening/Frilanser.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.NONE, getterVisibility = JsonAutoDetect.Visibility.NONE, setterVisibility = JsonAutoDetect.Visibility.NONE, isGetterVisibility = JsonAutoDetect.Visibility.NONE, creatorVisibility = JsonAutoDetect.Visibility.NONE)
1414
public class Frilanser {
1515

16-
@JsonProperty(value = "startdato")
16+
@JsonProperty(value = "startdato", required = true)
1717
@NotNull
1818
private LocalDate startdato;
1919

soknad/src/main/java/no/nav/k9/søknad/felles/opptjening/OpptjeningAktivitet.java

Lines changed: 2 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,6 @@ public class OpptjeningAktivitet {
2828
@Valid
2929
private Frilanser frilanser;
3030

31-
@Valid
32-
@JsonInclude(value = JsonInclude.Include.NON_EMPTY)
33-
@JsonProperty(value = "arbeidstaker")
34-
private List<Arbeidstaker> arbeidstaker;
35-
3631
@Valid
3732
@JsonInclude(value = JsonInclude.Include.NON_EMPTY)
3833
@JsonProperty(value = "utenlandskeArbeidsforhold")
@@ -48,12 +43,10 @@ public OpptjeningAktivitet() {
4843
}
4944

5045
@JsonCreator
51-
public OpptjeningAktivitet(@JsonProperty(value = "arbeidstaker") @Valid List<Arbeidstaker> arbeidstaker,
52-
@JsonProperty(value = "selvstendigNæringsdrivende") @Valid List<SelvstendigNæringsdrivende> selvstendigNæringsdrivende,
46+
public OpptjeningAktivitet(@JsonProperty(value = "selvstendigNæringsdrivende") @Valid List<SelvstendigNæringsdrivende> selvstendigNæringsdrivende,
5347
@JsonProperty(value = "frilanser") @Valid Frilanser frilanser,
5448
@JsonProperty(value = "utenlandskeArbeidsforhold") @Valid List<UtenlandskArbeidsforhold> utenlandskeArbeidsforhold,
5549
@JsonProperty(value = "andreAktiviteter") @Valid List<AnnenAktivitet> andreAktiviteter) {
56-
this.arbeidstaker = arbeidstaker;
5750
this.selvstendigNæringsdrivende = (selvstendigNæringsdrivende == null) ? emptyList() : unmodifiableList(selvstendigNæringsdrivende);
5851
this.frilanser = frilanser;
5952
this.utenlandskeArbeidsforhold = utenlandskeArbeidsforhold;
@@ -73,10 +66,6 @@ public Frilanser getFrilanser() {
7366
return frilanser;
7467
}
7568

76-
public List<Arbeidstaker> getArbeidstaker() {
77-
return arbeidstaker;
78-
}
79-
8069
public List<AnnenAktivitet> getAndreAktiviteter() {
8170
return andreAktiviteter;
8271
}
@@ -100,20 +89,6 @@ public OpptjeningAktivitet medFrilanser(Frilanser frilanser) {
10089
return this;
10190
}
10291

103-
public OpptjeningAktivitet medArbeidstaker(Arbeidstaker arbeidstaker) {
104-
if (this.arbeidstaker == null)
105-
this.arbeidstaker = new ArrayList<>();
106-
this.arbeidstaker.add(arbeidstaker);
107-
return this;
108-
}
109-
110-
public OpptjeningAktivitet medArbeidstaker(List<Arbeidstaker> arbeidstaker) {
111-
if (this.arbeidstaker == null)
112-
this.arbeidstaker = new ArrayList<>();
113-
this.arbeidstaker.addAll(arbeidstaker);
114-
return this;
115-
}
116-
11792
public List<UtenlandskArbeidsforhold> getUtenlandskeArbeidsforhold() {
11893
return utenlandskeArbeidsforhold;
11994
}
@@ -150,7 +125,6 @@ public OpptjeningAktivitet medAndreAktiviteter(List<AnnenAktivitet> andreAktivit
150125
public static final class Builder {
151126
private List<SelvstendigNæringsdrivende> selvstendigNæringsdrivende = new ArrayList<>();
152127
private Frilanser frilanser;
153-
private List<Arbeidstaker> arbeidstaker = new ArrayList<>();
154128
private List<UtenlandskArbeidsforhold> utenlandskeArbeidsforhold = new ArrayList<>();
155129
private List<AnnenAktivitet> andreAktiviteter = new ArrayList<>();
156130

@@ -162,16 +136,6 @@ private Builder() {
162136
return this;
163137
}
164138

165-
public Builder arbeidstaker(Arbeidstaker arbeidstaker) {
166-
this.arbeidstaker.add(arbeidstaker);
167-
return this;
168-
}
169-
170-
public Builder arbeidstaker(List<Arbeidstaker> arbeidstaker) {
171-
this.arbeidstaker.addAll(arbeidstaker);
172-
return this;
173-
}
174-
175139
public Builder utenlandskeArbeidsforhold(List<UtenlandskArbeidsforhold> utenlandskeArbeidsforhold) {
176140
this.utenlandskeArbeidsforhold.addAll(utenlandskeArbeidsforhold);
177141
return this;
@@ -193,7 +157,7 @@ public Builder andreAktiviteter(List<AnnenAktivitet> andreAktiviteter) {
193157
}
194158

195159
public OpptjeningAktivitet build() {
196-
return new OpptjeningAktivitet(arbeidstaker, selvstendigNæringsdrivende, frilanser, utenlandskeArbeidsforhold, andreAktiviteter);
160+
return new OpptjeningAktivitet(selvstendigNæringsdrivende, frilanser, utenlandskeArbeidsforhold, andreAktiviteter);
197161
}
198162
}
199163
}

soknad/src/main/java/no/nav/k9/søknad/felles/opptjening/SelvstendigNæringsdrivende.java

Lines changed: 32 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,38 @@
11
package no.nav.k9.søknad.felles.opptjening;
22

3-
import com.fasterxml.jackson.annotation.*;
4-
import com.fasterxml.jackson.annotation.JsonInclude.Include;
5-
import no.nav.k9.søknad.felles.Feil;
6-
import no.nav.k9.søknad.felles.type.Landkode;
7-
import no.nav.k9.søknad.felles.type.Organisasjonsnummer;
8-
import no.nav.k9.søknad.felles.type.Periode;
9-
import no.nav.k9.søknad.felles.type.VirksomhetType;
3+
import static java.util.Collections.emptyMap;
4+
import static java.util.Collections.unmodifiableMap;
5+
import static no.nav.k9.søknad.felles.type.Periode.Utils.leggTilPeriode;
6+
import static no.nav.k9.søknad.felles.type.Periode.Utils.leggTilPerioder;
107

11-
import javax.validation.Valid;
12-
import javax.validation.constraints.*;
138
import java.math.BigDecimal;
149
import java.time.LocalDate;
1510
import java.util.HashMap;
1611
import java.util.List;
1712
import java.util.Map;
1813

19-
import static java.util.Collections.emptyMap;
20-
import static java.util.Collections.unmodifiableMap;
21-
import static no.nav.k9.søknad.felles.type.Periode.Utils.leggTilPeriode;
22-
import static no.nav.k9.søknad.felles.type.Periode.Utils.leggTilPerioder;
14+
import javax.validation.Valid;
15+
import javax.validation.constraints.AssertTrue;
16+
import javax.validation.constraints.DecimalMax;
17+
import javax.validation.constraints.DecimalMin;
18+
import javax.validation.constraints.NotBlank;
19+
import javax.validation.constraints.NotEmpty;
20+
import javax.validation.constraints.NotNull;
21+
import javax.validation.constraints.Pattern;
22+
import javax.validation.constraints.Size;
23+
24+
import com.fasterxml.jackson.annotation.JsonAutoDetect;
25+
import com.fasterxml.jackson.annotation.JsonCreator;
26+
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
27+
import com.fasterxml.jackson.annotation.JsonInclude;
28+
import com.fasterxml.jackson.annotation.JsonInclude.Include;
29+
import com.fasterxml.jackson.annotation.JsonProperty;
30+
31+
import no.nav.k9.søknad.felles.Feil;
32+
import no.nav.k9.søknad.felles.type.Landkode;
33+
import no.nav.k9.søknad.felles.type.Organisasjonsnummer;
34+
import no.nav.k9.søknad.felles.type.Periode;
35+
import no.nav.k9.søknad.felles.type.VirksomhetType;
2336

2437
@JsonIgnoreProperties(ignoreUnknown = true)
2538
@JsonInclude(value = Include.NON_EMPTY)
@@ -30,15 +43,15 @@ public class SelvstendigNæringsdrivende {
3043
@Valid
3144
@NotNull
3245
@NotEmpty
33-
private final Map<Periode, SelvstendigNæringsdrivendePeriodeInfo> perioder;
46+
private final Map<@NotNull Periode, @NotNull SelvstendigNæringsdrivendePeriodeInfo> perioder;
3447

3548
/** Orgnummer - påkrevd for norske selskaper, ikke for utenlandske enn så lenge. */
3649
@JsonProperty(value = "organisasjonsnummer")
50+
@Valid
3751
private final Organisasjonsnummer organisasjonsnummer;
3852

3953
/** Virsomhetsnavn - påkrevd for norske og utenlandske selskaper. */
4054
@JsonProperty(value = "virksomhetNavn")
41-
@NotBlank(message = "Virksomhetnavn er påkrevd")
4255
@Pattern(regexp = "^[\\p{Graph}\\p{Space}\\p{Sc}\\p{L}\\p{M}\\p{N}]+$", message = "'${validatedValue}' matcher ikke tillatt pattern '{regexp}'")
4356
private final String virksomhetNavn;
4457

@@ -60,8 +73,8 @@ public Organisasjonsnummer getOrganisasjonsnummer() {
6073

6174
@JsonCreator
6275
public SelvstendigNæringsdrivende(
63-
@JsonProperty(value = "perioder", required = true) Map<Periode, SelvstendigNæringsdrivendePeriodeInfo> perioder,
64-
@JsonProperty(value = "organisasjonsnummer", required = false) Organisasjonsnummer organisasjonsnummer,
76+
@JsonProperty(value = "perioder", required = true) @Valid Map<@NotNull Periode, @NotNull SelvstendigNæringsdrivendePeriodeInfo> perioder,
77+
@JsonProperty(value = "organisasjonsnummer", required = false) @Valid Organisasjonsnummer organisasjonsnummer,
6578
@JsonProperty(value = "virksomhetNavn", required = false) String virksomhetNavn) {
6679
this.perioder = (perioder == null) ? emptyMap() : unmodifiableMap(perioder);
6780
this.organisasjonsnummer = organisasjonsnummer;
@@ -122,8 +135,10 @@ public static final class SelvstendigNæringsdrivendePeriodeInfo {
122135

123136
private static final String PÅKREVD = "påkrevd";
124137

138+
@Valid
125139
@JsonProperty(value = "virksomhetstyper", required = true)
126140
@NotEmpty
141+
@NotNull
127142
private final List<VirksomhetType> virksomhetstyper;
128143

129144
@JsonProperty("regnskapsførerNavn")

soknad/src/main/java/no/nav/k9/søknad/felles/personopplysninger/Bosteder.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,12 @@ public class Bosteder {
2929
@JsonProperty(value = "perioder")
3030
@Valid
3131
@JsonInclude(value = Include.ALWAYS)
32-
private Map<Periode, BostedPeriodeInfo> perioder = new TreeMap<>();
32+
private Map<@NotNull Periode, @NotNull BostedPeriodeInfo> perioder = new TreeMap<>();
3333

3434
@JsonProperty(value = "perioderSomSkalSlettes")
3535
@Valid
3636
@JsonInclude(value = Include.ALWAYS)
37-
private Map<Periode, BostedPeriodeInfo> perioderSomSkalSlettes = new TreeMap<>();
37+
private Map<@NotNull Periode, @NotNull BostedPeriodeInfo> perioderSomSkalSlettes = new TreeMap<>();
3838

3939
/**@deprecated brukt tom ctor.*/
4040
@JsonCreator

soknad/src/main/java/no/nav/k9/søknad/felles/personopplysninger/Utenlandsopphold.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import java.util.Objects;
1010
import java.util.TreeMap;
1111

12+
import javax.validation.Valid;
1213
import javax.validation.constraints.NotNull;
1314

1415
import com.fasterxml.jackson.annotation.JsonAutoDetect;
@@ -26,13 +27,15 @@
2627
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.NONE, getterVisibility = JsonAutoDetect.Visibility.NONE, setterVisibility = JsonAutoDetect.Visibility.NONE, isGetterVisibility = JsonAutoDetect.Visibility.NONE, creatorVisibility = JsonAutoDetect.Visibility.NONE)
2728
public class Utenlandsopphold {
2829

30+
@Valid
2931
@JsonInclude(value = Include.ALWAYS)
3032
@JsonProperty(value = "perioder")
31-
private Map<Periode, UtenlandsoppholdPeriodeInfo> perioder = new TreeMap<>();
33+
private Map<Periode, @NotNull UtenlandsoppholdPeriodeInfo> perioder = new TreeMap<>();
3234

35+
@Valid
3336
@JsonInclude(value = Include.ALWAYS)
3437
@JsonProperty(value = "perioderSomSkalSlettes")
35-
private Map<Periode, UtenlandsoppholdPeriodeInfo> perioderSomSkalSlettes = new TreeMap<>();
38+
private Map<Periode, @NotNull UtenlandsoppholdPeriodeInfo> perioderSomSkalSlettes = new TreeMap<>();
3639

3740
/**@deprecated brukt tom ctor.*/
3841
@JsonCreator
@@ -126,7 +129,7 @@ public UtenlandsoppholdPeriodeInfo medLand(Landkode land) {
126129
this.land = Objects.requireNonNull(land, "UtenlandsoppholdPeriodeInfo.land");
127130
return this;
128131
}
129-
132+
130133
public UtenlandsoppholdÅrsak getÅrsak() {
131134
return årsak;
132135
}
@@ -181,7 +184,7 @@ public enum UtenlandsoppholdÅrsak {
181184
public String getÅrsak() {
182185
return årsak;
183186
}
184-
187+
185188
@JsonCreator
186189
public static UtenlandsoppholdÅrsak of(String value) {
187190
if (value == null || value.isBlank()) {

0 commit comments

Comments
 (0)