Skip to content

Commit 7eeeb29

Browse files
authored
Legger til fødselsdato på Pleietrengende for livets sluttfase (#257)
1 parent c724119 commit 7eeeb29

File tree

3 files changed

+35
-10
lines changed

3 files changed

+35
-10
lines changed

soknad/src/main/java/no/nav/k9/søknad/ytelse/pls/v1/Pleietrengende.java

Lines changed: 33 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
package no.nav.k9.søknad.ytelse.pls.v1;
22

3+
import java.time.LocalDate;
34
import java.util.Objects;
45

56
import javax.validation.Valid;
67
import javax.validation.constraints.NotNull;
8+
import javax.validation.constraints.PastOrPresent;
79

810
import com.fasterxml.jackson.annotation.JsonAlias;
911
import com.fasterxml.jackson.annotation.JsonAutoDetect;
1012
import com.fasterxml.jackson.annotation.JsonCreator;
13+
import com.fasterxml.jackson.annotation.JsonFormat;
1114
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
1215
import com.fasterxml.jackson.annotation.JsonProperty;
1316

@@ -25,11 +28,37 @@ public class Pleietrengende implements Person {
2528
@Valid
2629
private NorskIdentitetsnummer norskIdentitetsnummer;
2730

31+
@JsonProperty(value = "fødselsdato", required = false)
32+
@Valid
33+
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "Europe/Oslo")
34+
@PastOrPresent(message = "[ugyldigFødselsdato] Fødselsdato kan ikke være fremtidig")
35+
private LocalDate fødselsdato;
36+
2837
@JsonCreator
29-
public Pleietrengende(@JsonProperty(value = "norskIdentitetsnummer", required = true) @JsonAlias({ "fødselsnummer", "norskIdentifikator", "identitetsnummer", "fnr" }) NorskIdentitetsnummer norskIdentitetsnummer) {
38+
public Pleietrengende(@JsonProperty(value = "norskIdentitetsnummer", required = true) @JsonAlias({ "fødselsnummer", "norskIdentifikator", "identitetsnummer", "fnr" }) NorskIdentitetsnummer norskIdentitetsnummer,
39+
@JsonProperty("fødselsdato") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "Europe/Oslo") LocalDate fødselsdato) {
3040
this.norskIdentitetsnummer = Objects.requireNonNull(norskIdentitetsnummer, "norskIdentitetsnummer");
3141
}
3242

43+
@Override
44+
public PersonIdent getPersonIdent() {
45+
return norskIdentitetsnummer;
46+
}
47+
48+
public LocalDate getFødselsdato() {
49+
return fødselsdato;
50+
}
51+
52+
public Pleietrengende medNorskIdentitetsnummer(NorskIdentitetsnummer norskIdentitetsnummer) {
53+
this.norskIdentitetsnummer = norskIdentitetsnummer;
54+
return this;
55+
}
56+
57+
public Pleietrengende medFødselsdato(LocalDate fødselsdato) {
58+
this.fødselsdato = fødselsdato;
59+
return this;
60+
}
61+
3362
@Override
3463
public boolean equals(Object obj) {
3564
if (obj == this)
@@ -38,17 +67,13 @@ public boolean equals(Object obj) {
3867
return false;
3968
var other = (Pleietrengende) obj;
4069

41-
return Objects.equals(norskIdentitetsnummer, other.norskIdentitetsnummer);
42-
}
43-
44-
@Override
45-
public PersonIdent getPersonIdent() {
46-
return norskIdentitetsnummer;
70+
return Objects.equals(norskIdentitetsnummer, other.norskIdentitetsnummer)
71+
&& Objects.equals(fødselsdato, other.fødselsdato);
4772
}
4873

4974
@Override
5075
public int hashCode() {
51-
return Objects.hash(norskIdentitetsnummer);
76+
return Objects.hash(norskIdentitetsnummer, fødselsdato);
5277
}
5378

5479
}

soknad/src/test/java/no/nav/k9/søknad/ytelse/pls/v1/YtelseEksempel.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public static PleipengerLivetsSluttfase lagYtelse() {
3535
}
3636

3737
public static Pleietrengende lagPleietrengende() {
38-
return new Pleietrengende(TestUtils.okNorskIdentitetsnummerBarn());
38+
return new Pleietrengende(TestUtils.okNorskIdentitetsnummerBarn(), null);
3939
}
4040

4141
public static Bosteder lagBosteder(Periode... perioder) {

soknad/src/test/java/no/nav/k9/søknad/ytelse/pls/v1/YtelseTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public void skal_tolerere_flere_aktiviteter_i_samme_periode() {
3636
);
3737

3838
var psb = new PleipengerLivetsSluttfase()
39-
.medPleietrengende(new Pleietrengende(NorskIdentitetsnummer.of("12345678911")))
39+
.medPleietrengende(new Pleietrengende(NorskIdentitetsnummer.of("12345678911"), null))
4040
.medArbeidstid(
4141
new Arbeidstid()
4242
.medArbeidstaker(

0 commit comments

Comments
 (0)