diff --git a/src/main/kotlin/no/nav/bidrag/grunnlag/service/HentGrunnlagService.kt b/src/main/kotlin/no/nav/bidrag/grunnlag/service/HentGrunnlagService.kt index 2f7cbb41..e092f5d2 100644 --- a/src/main/kotlin/no/nav/bidrag/grunnlag/service/HentGrunnlagService.kt +++ b/src/main/kotlin/no/nav/bidrag/grunnlag/service/HentGrunnlagService.kt @@ -41,6 +41,7 @@ import org.springframework.stereotype.Service import java.math.BigDecimal import java.time.LocalDate import java.time.LocalDateTime +import java.time.Period @Service class HentGrunnlagService( @@ -59,6 +60,15 @@ class HentGrunnlagService( companion object { @JvmStatic val LOGGER: Logger = LoggerFactory.getLogger(HentGrunnlagService::class.java) + + fun sjekkOgJusterDato(dato: LocalDate): LocalDate { + // Hvis dato er mer enn 5 år tilbake i tid, settes den til dagens dato minus 5 år + return if (Period.between(dato, LocalDate.now()).years > 5) { + LocalDate.now().minusYears(5) + } else { + dato + } + } } suspend fun hentGrunnlag(hentGrunnlagRequestDto: HentGrunnlagRequestDto): HentGrunnlagDto { diff --git "a/src/main/kotlin/no/nav/bidrag/grunnlag/service/HentUtvidetBarnetrygdOgSm\303\245barnstilleggService.kt" "b/src/main/kotlin/no/nav/bidrag/grunnlag/service/HentUtvidetBarnetrygdOgSm\303\245barnstilleggService.kt" index e6724d8b..36605028 100644 --- "a/src/main/kotlin/no/nav/bidrag/grunnlag/service/HentUtvidetBarnetrygdOgSm\303\245barnstilleggService.kt" +++ "b/src/main/kotlin/no/nav/bidrag/grunnlag/service/HentUtvidetBarnetrygdOgSm\303\245barnstilleggService.kt" @@ -5,6 +5,7 @@ import no.nav.bidrag.grunnlag.consumer.familiebasak.FamilieBaSakConsumer import no.nav.bidrag.grunnlag.consumer.familiebasak.api.FamilieBaSakRequest import no.nav.bidrag.grunnlag.consumer.familiebasak.api.FamilieBaSakResponse import no.nav.bidrag.grunnlag.exception.RestResponse +import no.nav.bidrag.grunnlag.service.HentGrunnlagService.Companion.sjekkOgJusterDato import no.nav.bidrag.grunnlag.util.GrunnlagUtil.Companion.evaluerFeilmelding import no.nav.bidrag.grunnlag.util.GrunnlagUtil.Companion.evaluerFeiltype import no.nav.bidrag.transport.behandling.grunnlag.response.FeilrapporteringDto @@ -18,9 +19,10 @@ class HentUtvidetBarnetrygdOgSmåbarnstilleggService(private val familieBaSakCon val feilrapporteringListe = mutableListOf() ubstRequestListe.forEach { + // fradato sjekkes og justeres hvis den er lenger enn 5 år tilbake i tid. Settes da til dagens dato minus 5 år. val hentUbstRequest = FamilieBaSakRequest( personIdent = it.personId, - fraDato = it.periodeFra, + fraDato = sjekkOgJusterDato(it.periodeFra), ) when ( diff --git a/src/test/kotlin/no/nav/bidrag/grunnlag/consumer/FamilieBaSakConsumerTest.kt b/src/test/kotlin/no/nav/bidrag/grunnlag/consumer/FamilieBaSakConsumerTest.kt index 72922e96..0b6c9bb6 100644 --- a/src/test/kotlin/no/nav/bidrag/grunnlag/consumer/FamilieBaSakConsumerTest.kt +++ b/src/test/kotlin/no/nav/bidrag/grunnlag/consumer/FamilieBaSakConsumerTest.kt @@ -6,6 +6,8 @@ import no.nav.bidrag.grunnlag.consumer.familiebasak.FamilieBaSakConsumer import no.nav.bidrag.grunnlag.consumer.familiebasak.api.BisysStønadstype import no.nav.bidrag.grunnlag.consumer.familiebasak.api.FamilieBaSakResponse import no.nav.bidrag.grunnlag.exception.RestResponse +import no.nav.bidrag.grunnlag.service.HentGrunnlagService +import no.nav.bidrag.grunnlag.service.PersonIdOgPeriodeRequest import org.assertj.core.api.Assertions.assertThat import org.assertj.core.api.Assertions.fail import org.junit.jupiter.api.Assertions.assertAll @@ -26,6 +28,7 @@ import org.springframework.http.HttpStatus import org.springframework.http.MediaType import org.springframework.http.ResponseEntity import org.springframework.web.client.HttpClientErrorException +import java.time.LocalDate import java.time.YearMonth @ExtendWith(MockitoExtension::class) @@ -111,6 +114,35 @@ internal class FamilieBaSakConsumerTest { return HttpEntity(body, httpHeaders) } + @Test + fun `Skal justere fradato til dagens dato minus 5 år`() { + // Sjekker først at eldre dato blir justert + var ubstRequest = PersonIdOgPeriodeRequest( + personId = "personident", + periodeFra = LocalDate.parse("2013-01-01"), + periodeTil = LocalDate.parse("2024-01-01"), + ) + + val justertDato = HentGrunnlagService.sjekkOgJusterDato(ubstRequest.periodeFra) + + assertAll( + { assertThat(justertDato).isEqualTo(LocalDate.now().minusYears(5)) }, + ) + + // Sjekker at nyere dato ikke blir justert + ubstRequest = PersonIdOgPeriodeRequest( + personId = "personident", + periodeFra = LocalDate.parse("2033-01-01"), + periodeTil = LocalDate.parse("2024-01-01"), + ) + + val justertDato2 = HentGrunnlagService.sjekkOgJusterDato(ubstRequest.periodeFra) + + assertAll( + { assertThat(justertDato2).isEqualTo(ubstRequest.periodeFra) }, + ) + } + companion object { private const val FAMILIEBASAK_CONTEXT = "/api/bisys/hent-utvidet-barnetrygd" }