Skip to content

Commit

Permalink
6472 Erendringsvedtak justering (#633)
Browse files Browse the repository at this point in the history
Ser tilsynelatende ut som om vi alltid svarer på spørsmålet: "**Er dette
et opprinnelig vedtak?**", men at man svarer på ulikt felt avhengig av
om det er et opprinnelig vedtak eller ikke.

- Er svaret **JA** (det er opprinnelig vedtak) setter man
`eropprinneligvedtak` = "ja", og `erendringsvedtak` forblir default
null.
- Er svaret **NEI** (det er endringsvedtak) setter man
`erendringsvedtak` = "nei", og `eropprinneligvedtak` forblir default
null.

Da gir det også meningen at `eropprinneligvedtak` kun kan være "ja" og
null, mens `erendringsvedtak` kun kan være "nei" og null.

Testet med manuell deploy til Q2 og får ønsket resultat både for endring
og opprinnelig vedtak.

https://jira.adeo.no/browse/MELOSYS-6472
  • Loading branch information
janitamarielle authored Feb 23, 2024
1 parent cab5715 commit c0f10cd
Show file tree
Hide file tree
Showing 4 changed files with 73 additions and 24 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,12 @@ default SED mapTilSed(SedDataDto sedData) {

default void setVedtaksdata(Vedtak vedtak, VedtakDto vedtakDto) {
if (vedtakDto != null && !vedtakDto.isErFørstegangsvedtak()) {
vedtak.setEropprinneligvedtak("nei");
vedtak.setErendringsvedtak("nei");
vedtak.setDatoforrigevedtak(
vedtakDto.getDatoForrigeVedtak() != null ? vedtakDto.getDatoForrigeVedtak().toString() : null
);
} else {
vedtak.setEropprinneligvedtak("ja");
vedtak.setErendringsvedtak("ja");
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,15 @@
import java.net.URISyntaxException;
import java.time.LocalDate;


import no.nav.melosys.eessi.controller.dto.SedDataDto;
import no.nav.melosys.eessi.controller.dto.VedtakDto;
import no.nav.melosys.eessi.models.exception.MappingException;
import no.nav.melosys.eessi.models.exception.NotFoundException;
import no.nav.melosys.eessi.models.sed.SED;
import no.nav.melosys.eessi.models.sed.medlemskap.impl.MedlemskapA003;
import no.nav.melosys.eessi.service.sed.SedDataStub;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import static org.assertj.core.api.Assertions.assertThat;

Expand All @@ -30,7 +29,7 @@ public void setup() throws IOException, URISyntaxException {
}

@Test
void mapTilSed() throws IOException, URISyntaxException, MappingException, NotFoundException {
void mapTilSed() throws MappingException, NotFoundException {
SED sed = sedMapper.mapTilSed(sedData);

assertThat(sed).isNotNull();
Expand All @@ -42,20 +41,38 @@ void mapTilSed() throws IOException, URISyntaxException, MappingException, NotFo
}

@Test
void erIkkeOpprinneligVedtak_ErOpprinneligVedtaksNeiOgDatoForrigeVedtakIkkeNull() {
void erIkkeOpprinneligVedtak_ErOpprinneligVedtakOgErEndringsvedtakSattKorrektOgDatoForrigeVedtakIkkeNull() {
VedtakDto vedtakDto = new VedtakDto();
vedtakDto.setErFørstegangsvedtak(false);
vedtakDto.setDatoForrigeVedtak(LocalDate.now());
sedData.setVedtakDto(vedtakDto);


SED sed = sedMapper.mapTilSed(sedData);

assertThat(sed.getMedlemskap().getClass()).isEqualTo(MedlemskapA003.class);

MedlemskapA003 medlemskapA003 = (MedlemskapA003) sed.getMedlemskap();

assertThat(medlemskapA003).isNotNull();
assertThat(medlemskapA003.getVedtak().getEropprinneligvedtak()).isEqualTo("nei");
assertThat(medlemskapA003.getVedtak().getEropprinneligvedtak()).isNull();
assertThat(medlemskapA003.getVedtak().getErendringsvedtak()).isEqualTo("nei");
assertThat(medlemskapA003.getVedtak().getDatoforrigevedtak()).isNotNull();
assertThat(medlemskapA003.getVedtak().getDatoforrigevedtak()).isEqualTo(LocalDate.now().toString());
}

@Test
void erOpprinneligVedtak_ErOpprinneligVedtakOgErEndringsvedtakSattKorrektOgDatoForrigeVedtakNull() {
VedtakDto vedtakDto = new VedtakDto();
vedtakDto.setErFørstegangsvedtak(true);
sedData.setVedtakDto(vedtakDto);


SED sed = sedMapper.mapTilSed(sedData);

assertThat(sed.getMedlemskap().getClass()).isEqualTo(MedlemskapA003.class);
MedlemskapA003 medlemskapA003 = (MedlemskapA003) sed.getMedlemskap();
assertThat(medlemskapA003).isNotNull();
assertThat(medlemskapA003.getVedtak().getEropprinneligvedtak()).isEqualTo("ja");
assertThat(medlemskapA003.getVedtak().getErendringsvedtak()).isNull();
assertThat(medlemskapA003.getVedtak().getDatoforrigevedtak()).isNull();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import no.nav.melosys.eessi.models.sed.SED;
import no.nav.melosys.eessi.models.sed.medlemskap.impl.MedlemskapA009;
import no.nav.melosys.eessi.service.sed.SedDataStub;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

Expand Down Expand Up @@ -58,7 +57,7 @@ void getMedlemskapIkkeSelvstendigOg12_1_expectGyldigMedlemskap() {
}

@Test
void erIkkeOpprinneligVedtak_ErOpprinneligVedtaksNeiOgDatoForrigeVedtakIkkeNull() {
void erIkkeOpprinneligVedtak_ErOpprinneligVedtakOgErEndringsvedtakSattKorrektOgDatoForrigeVedtakIkkeNull() {
VedtakDto vedtakDto = new VedtakDto();
vedtakDto.setErFørstegangsvedtak(false);
vedtakDto.setDatoForrigeVedtak(LocalDate.now());
Expand All @@ -69,14 +68,31 @@ void erIkkeOpprinneligVedtak_ErOpprinneligVedtaksNeiOgDatoForrigeVedtakIkkeNull(


assertThat(sed.getMedlemskap().getClass()).isEqualTo(MedlemskapA009.class);

MedlemskapA009 medlemskapA009 = (MedlemskapA009) sed.getMedlemskap();

assertThat(medlemskapA009).isNotNull();
assertThat(medlemskapA009.getVedtak().getEropprinneligvedtak()).isEqualTo("nei");
assertThat(medlemskapA009.getVedtak().getEropprinneligvedtak()).isNull();
assertThat(medlemskapA009.getVedtak().getErendringsvedtak()).isEqualTo("nei");
assertThat(medlemskapA009.getVedtak().getDatoforrigevedtak()).isEqualTo(LocalDate.now().toString());
}

@Test
void erOpprinneligVedtak_ErOpprinneligVedtakOgErEndringsvedtakSattKorrektOgDatoForrigeVedtakNull() {
VedtakDto vedtakDto = new VedtakDto();
vedtakDto.setErFørstegangsvedtak(true);
sedData.setVedtakDto(vedtakDto);


SED sed = a009Mapper.mapTilSed(sedData);


assertThat(sed.getMedlemskap().getClass()).isEqualTo(MedlemskapA009.class);
MedlemskapA009 medlemskapA009 = (MedlemskapA009) sed.getMedlemskap();
assertThat(medlemskapA009).isNotNull();
assertThat(medlemskapA009.getVedtak().getEropprinneligvedtak()).isEqualTo("ja");
assertThat(medlemskapA009.getVedtak().getErendringsvedtak()).isNull();
assertThat(medlemskapA009.getVedtak().getDatoforrigevedtak()).isNull();
}

@Test
void getMedlemskapErSelvstendigOg12_2_expectGyldigMedlemskap() {
sedData.getLovvalgsperioder().get(0).setBestemmelse(Bestemmelse.ART_12_2);
Expand All @@ -98,15 +114,15 @@ void getMedlemskapErSelvstendigOg12_2_expectGyldigMedlemskap() {
void getMedlemskapFeilLovvalgsBestemmelse_expectMappingException() {
sedData.getLovvalgsperioder().get(0).setBestemmelse(Bestemmelse.ART_13_4);
assertThatExceptionOfType(MappingException.class)
.isThrownBy(() -> a009Mapper.mapTilSed(sedData))
.withMessageContaining("Lovvalgsbestemmelse er ikke av artikkel 12!");
.isThrownBy(() -> a009Mapper.mapTilSed(sedData))
.withMessageContaining("Lovvalgsbestemmelse er ikke av artikkel 12!");
}

@Test
void ingenLovvalgsperioder_expectNullPointerException() {
sedData.setLovvalgsperioder(null);
assertThatExceptionOfType(NullPointerException.class)
.isThrownBy(() -> a009Mapper.mapTilSed(sedData));
.isThrownBy(() -> a009Mapper.mapTilSed(sedData));
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,10 @@
import no.nav.melosys.eessi.models.SedType;
import no.nav.melosys.eessi.models.exception.MappingException;
import no.nav.melosys.eessi.models.sed.SED;
import no.nav.melosys.eessi.models.sed.medlemskap.impl.MedlemskapA003;
import no.nav.melosys.eessi.models.sed.medlemskap.impl.MedlemskapA010;
import no.nav.melosys.eessi.service.sed.SedDataStub;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.AssertionsForClassTypes.assertThatExceptionOfType;
Expand Down Expand Up @@ -71,7 +70,7 @@ void mapTilSed_medTilleggsbestemmelseBestemmelseIkkeGyld_tilleggsBestemmelseBruk
}

@Test
void mapTilSed_erIkkeOpprinneligVedtak_ErOpprinneligVedtaksNeiOgDatoForrigeVedtakIkkeNull() {
void mapTilSed_erIkkeOpprinneligVedtak_ErOpprinneligVedtaksOgErEndringsvedtakSattKorrektOgDatoForrigeVedtakIkkeNull() {
lovvalgsperiode.setBestemmelse(Bestemmelse.ART_11_3_a);
lovvalgsperiode.setTilleggsBestemmelse(Bestemmelse.ART_11_3_b);
VedtakDto vedtakDto = new VedtakDto();
Expand All @@ -84,21 +83,40 @@ void mapTilSed_erIkkeOpprinneligVedtak_ErOpprinneligVedtaksNeiOgDatoForrigeVedta


assertThat(sed.getMedlemskap().getClass()).isEqualTo(MedlemskapA010.class);

MedlemskapA010 medlemskapA010 = (MedlemskapA010) sed.getMedlemskap();

assertThat(medlemskapA010).isNotNull();
assertThat(medlemskapA010.getVedtak().getEropprinneligvedtak()).isEqualTo("nei");
assertThat(medlemskapA010.getVedtak().getEropprinneligvedtak()).isNull();
assertThat(medlemskapA010.getVedtak().getErendringsvedtak()).isEqualTo("nei");
assertThat(medlemskapA010.getVedtak().getDatoforrigevedtak()).isEqualTo(LocalDate.now().toString());
}

@Test
void mapTilSed_erOpprinneligVedtak_ErOpprinneligVedtaksOgErEndringsvedtakSattKorrektOgDatoForrigeVedtakNull() {
lovvalgsperiode.setBestemmelse(Bestemmelse.ART_11_3_a);
lovvalgsperiode.setTilleggsBestemmelse(Bestemmelse.ART_11_3_b);
VedtakDto vedtakDto = new VedtakDto();
vedtakDto.setErFørstegangsvedtak(true);
sedData.setVedtakDto(vedtakDto);


SED sed = a010Mapper.mapTilSed(sedData);


assertThat(sed.getMedlemskap().getClass()).isEqualTo(MedlemskapA010.class);
MedlemskapA010 medlemskapA010 = (MedlemskapA010) sed.getMedlemskap();
assertThat(medlemskapA010).isNotNull();
assertThat(medlemskapA010.getVedtak().getEropprinneligvedtak()).isEqualTo("ja");
assertThat(medlemskapA010.getVedtak().getErendringsvedtak()).isNull();
assertThat(medlemskapA010.getVedtak().getDatoforrigevedtak()).isNull();
}

@Test
void mapTilSed_medTilleggsbestemmelse_bestemmelseOgTilleggsbestemmelseErUlovligKasterException() {
final Bestemmelse bestemmelse = Bestemmelse.ART_11_3_a;
lovvalgsperiode.setBestemmelse(bestemmelse);
lovvalgsperiode.setTilleggsBestemmelse(Bestemmelse.ART_12_1);

assertThatExceptionOfType(MappingException.class).isThrownBy(() -> a010Mapper.mapTilSed(sedData))
.withMessageContaining("Kan ikke mappe til bestemmelse i A010 for lovvalgsperiode ");
.withMessageContaining("Kan ikke mappe til bestemmelse i A010 for lovvalgsperiode ");
}
}

0 comments on commit c0f10cd

Please sign in to comment.