Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vise kontantstøtteperioder under vedtak og beregning for barnetilsyn #2756

Merged
merged 28 commits into from
Feb 5, 2025
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
b8a58f2
Skal sende med kontantstøtte perioder til frontend
throndi Dec 17, 2024
7926a6c
Skal sende med kontantstøtteperioder
throndi Jan 17, 2025
3e03501
Merge branch 'main' into kontantstøttePerioder
throndi Jan 17, 2025
f8b6e15
fikser på test
throndi Jan 20, 2025
5348f25
Sletter KontantstøtteController da denne ikke er i bruk lenger
throndi Jan 21, 2025
25db3d1
Setter kontantstøtteperioder til å være tom liste i stedet for null
throndi Jan 28, 2025
0eb0f61
Merge branch 'main' into kontantstøttePerioder
throndi Jan 28, 2025
b38fa40
Legger til kontantstøtteperioder i BlankettPdfBehandling
throndi Jan 28, 2025
6cc3790
Merge remote-tracking branch 'origin/kontantstøttePerioder' into kont…
throndi Jan 28, 2025
5b4e161
ktlint
throndi Jan 28, 2025
9218bf0
Skal vise når kontantstøtteperioder fra KS er hentet for å kunne lese…
throndi Jan 29, 2025
9a20583
endrer på testdata ifm hentetDato som er lagt til i KontantstøttePeriode
throndi Jan 29, 2025
bd6fc73
rettelse
throndi Jan 29, 2025
9939688
Skal ikke bruke harKontantstøttePerioder fra BlankettPdfBehandling
throndi Jan 29, 2025
f27cd7a
Fikser skrivefeil
throndi Jan 29, 2025
86e578c
fjerner enda et harKontantstøttePerioder-felt. Endrer navn til kontan…
throndi Jan 29, 2025
37d3f22
fjerner siste rest av harKontantstøttePerioder
throndi Jan 29, 2025
71f2467
merge
throndi Jan 30, 2025
78f3faa
Rydder etter litt refaktorering
throndi Jan 30, 2025
b527588
ktlint
throndi Jan 30, 2025
5f84e70
Legger tilbake harKontantstøttePerioder pga bakoverkompabilitet
throndi Jan 31, 2025
fe16e3a
bruker registeropplysningerOpprettetDato i stedet for egen dato i kon…
throndi Feb 3, 2025
6c158ba
Merge branch 'main' into kontantstøttePerioder
throndi Feb 3, 2025
da49aed
skal bruke ny enum for ks-sak kilde
throndi Feb 5, 2025
114bbcb
Merge remote-tracking branch 'origin/kontantstøttePerioder' into kont…
throndi Feb 5, 2025
4816503
Merge branch 'main' into kontantstøttePerioder
throndi Feb 5, 2025
57eb5a2
rettelse
throndi Feb 5, 2025
483d136
Merge remote-tracking branch 'origin/kontantstøttePerioder' into kont…
throndi Feb 5, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,14 @@ package no.nav.familie.ef.sak.kontantstøtte
import no.nav.familie.ef.sak.opplysninger.personopplysninger.PersonService
import no.nav.familie.ef.sak.opplysninger.personopplysninger.pdl.identer
import org.springframework.stereotype.Service
import java.time.YearMonth

@Service
class KontantstøtteService(
val kontantstøtteClient: KontantstøtteClient,
val personService: PersonService,
) {
fun finnesKontantstøtteUtbetalingerPåBruker(personIdent: String): HentUtbetalingsinfoKontantstøtteDto {
fun hentUtbetalingsinfoKontantstøtte(personIdent: String): HentUtbetalingsinfoKontantstøtteDto {
val personIdenter = personService.hentPersonIdenter(personIdent).identer().toList()
return kontantstøtteClient.hentUtbetalingsinfo(personIdenter).tilDto()
}
Expand All @@ -18,8 +19,22 @@ class KontantstøtteService(
fun HentUtbetalingsinfoKontantstøtte.tilDto(): HentUtbetalingsinfoKontantstøtteDto =
HentUtbetalingsinfoKontantstøtteDto(
this.ksSakPerioder.isNotEmpty() || this.infotrygdPerioder.isNotEmpty(),
this.ksSakPerioder.map { KsakPeriodeDto(it.fomMåned, it.tomMåned, KontantstøtteDatakilde.KONTANTSTØTTE) } +
this.infotrygdPerioder.map { KsakPeriodeDto(it.fomMåned, it.tomMåned, KontantstøtteDatakilde.INFOTRYGD) },
)

data class HentUtbetalingsinfoKontantstøtteDto(
val finnesUtbetaling: Boolean,
throndi marked this conversation as resolved.
Show resolved Hide resolved
val perioder: List<KsakPeriodeDto>,
)

data class KsakPeriodeDto(
throndi marked this conversation as resolved.
Show resolved Hide resolved
val årMånedFra: YearMonth,
val årMånedTil: YearMonth? = null,
val kilde: KontantstøtteDatakilde,
)

enum class KontantstøtteDatakilde {
KONTANTSTØTTE,
throndi marked this conversation as resolved.
Show resolved Hide resolved
INFOTRYGD,
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import no.nav.familie.ef.sak.arbeidsforhold.ekstern.ArbeidsforholdService
import no.nav.familie.ef.sak.felles.util.Timer.loggTid
import no.nav.familie.ef.sak.kontantstøtte.KontantstøtteService
import no.nav.familie.ef.sak.opplysninger.personopplysninger.domene.GrunnlagsdataDomene
import no.nav.familie.ef.sak.opplysninger.personopplysninger.domene.KontantstøttePeriode
import no.nav.familie.ef.sak.opplysninger.personopplysninger.domene.Personopplysninger
import no.nav.familie.ef.sak.opplysninger.personopplysninger.domene.TidligereVedtaksperioder
import no.nav.familie.ef.sak.opplysninger.personopplysninger.fullmakt.FullmaktService
Expand Down Expand Up @@ -40,7 +41,14 @@ class GrunnlagsdataRegisterService(
arbeidsforholdService.finnesAvsluttetArbeidsforholdSisteAntallMåneder(
grunnlagsdataFraPdl.gjeldendeIdentForSøker(),
)
val harKontantstøttePerioder = kontantstøtteService.finnesKontantstøtteUtbetalingerPåBruker(personIdent).finnesUtbetaling
val kontantstøttePerioder = kontantstøtteService.hentUtbetalingsinfoKontantstøtte(personIdent)
val harKontantstøttePerioder = kontantstøttePerioder.finnesUtbetaling
val kontantstøttePerioderDomene =
throndi marked this conversation as resolved.
Show resolved Hide resolved
kontantstøttePerioder
.takeIf { harKontantstøttePerioder }
?.let {
it.perioder.map { periode -> KontantstøttePeriode(periode.årMånedFra, periode.årMånedTil, periode.kilde) }
}?.sortedByDescending { it.fomMåned }
throndi marked this conversation as resolved.
Show resolved Hide resolved

return GrunnlagsdataDomene(
søker = mapSøker(grunnlagsdataFraPdl.søker, grunnlagsdataFraPdl.andrePersoner),
Expand All @@ -50,6 +58,7 @@ class GrunnlagsdataRegisterService(
tidligereVedtaksperioder = tidligereVedtaksperioder,
harAvsluttetArbeidsforhold = harAvsluttetArbeidsforhold,
harKontantstøttePerioder = harKontantstøttePerioder,
kontantstøttePerioder = kontantstøttePerioderDomene,
)
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package no.nav.familie.ef.sak.opplysninger.personopplysninger.domene

import no.nav.familie.ef.sak.kontantstøtte.KontantstøtteDatakilde
import no.nav.familie.ef.sak.opplysninger.personopplysninger.GrunnlagsdataPeriodeHistorikkBarnetilsyn
import no.nav.familie.ef.sak.opplysninger.personopplysninger.GrunnlagsdataPeriodeHistorikkOvergangsstønad
import no.nav.familie.ef.sak.opplysninger.personopplysninger.dto.Sivilstandstype
Expand All @@ -23,6 +24,7 @@ import no.nav.familie.ef.sak.opplysninger.personopplysninger.pdl.VergemaalEllerF
import no.nav.familie.kontrakter.felles.medlemskap.Medlemskapsinfo
import java.time.LocalDate
import java.time.LocalDateTime
import java.time.YearMonth

/**
* Endringer i denne filen burde godkjennes av 2 personer då denne er lagret som json i databasen og breaking changes kan være
Expand Down Expand Up @@ -67,10 +69,17 @@ data class GrunnlagsdataDomene(
val tidligereVedtaksperioder: TidligereVedtaksperioder?,
val harAvsluttetArbeidsforhold: Boolean?,
val harKontantstøttePerioder: Boolean?,
throndi marked this conversation as resolved.
Show resolved Hide resolved
val kontantstøttePerioder: List<KontantstøttePeriode>?,
) {
fun tilPersonopplysninger() = Personopplysninger(søker = this.søker, annenForelder = this.annenForelder, barn = this.barn)
}

data class KontantstøttePeriode(
val fomMåned: YearMonth,
val tomMåned: YearMonth?,
val kilde: KontantstøtteDatakilde,
)

data class Personopplysninger(
val søker: Søker,
val annenForelder: List<AnnenForelderMedIdent>,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ class VilkårGrunnlagService(
dokumentasjon = søknad?.dokumentasjon,
harAvsluttetArbeidsforhold = grunnlagsdata.harAvsluttetArbeidsforhold,
harKontantstøttePerioder = grunnlagsdata.harKontantstøttePerioder,
kontantstøttePerioder = grunnlagsdata.kontantstøttePerioder,
)
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package no.nav.familie.ef.sak.vilkår.dto

import no.nav.familie.ef.sak.opplysninger.personopplysninger.domene.KontantstøttePeriode
import no.nav.familie.ef.sak.opplysninger.personopplysninger.dto.AdresseDto
import no.nav.familie.ef.sak.opplysninger.personopplysninger.dto.NavnDto
import no.nav.familie.ef.sak.opplysninger.søknad.domain.DokumentasjonFraSøknadDto
Expand All @@ -25,6 +26,7 @@ data class VilkårGrunnlagDto(
val dokumentasjon: DokumentasjonFraSøknadDto?,
val harAvsluttetArbeidsforhold: Boolean?,
val harKontantstøttePerioder: Boolean?,
val kontantstøttePerioder: List<KontantstøttePeriode>?,
throndi marked this conversation as resolved.
Show resolved Hide resolved
)

data class PersonaliaDto(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ fun opprettGrunnlagsdata(
),
false,
null,
emptyList(),
)

fun opprettBarnMedIdent(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,14 +41,14 @@ class KontantstøtteServiceTest {

@Test
fun `skal sjekke kontantstøttevedtak for person med kontantstøtte`() {
val finnesKontantstøtte = kontantstøtteService.finnesKontantstøtteUtbetalingerPåBruker(morIdent)
val finnesKontantstøtte = kontantstøtteService.hentUtbetalingsinfoKontantstøtte(morIdent)
Assertions.assertThat(finnesKontantstøtte.finnesUtbetaling).isTrue()
verify(exactly = 1) { kontantstøtteClientMock.hentUtbetalingsinfo(morsIdenter) }
}

@Test
fun `skal sjekke kontantstøttevedtak for person uten kontantstøtte`() {
val finnesKontantstøtte = kontantstøtteService.finnesKontantstøtteUtbetalingerPåBruker(identUtenKs)
val finnesKontantstøtte = kontantstøtteService.hentUtbetalingsinfoKontantstøtte(identUtenKs)
Assertions.assertThat(finnesKontantstøtte.finnesUtbetaling).isFalse()
verify(exactly = 1) { kontantstøtteClientMock.hentUtbetalingsinfo(listOf(identUtenKs)) }
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,10 @@ internal class PersonopplysningerServiceTest {

val personService = PersonService(PdlClientConfig().pdlClient(), ConcurrentMapCacheManager())
every { egenAnsattClient.egenAnsatt(any()) } returns true
every { kontantstøtteService.finnesKontantstøtteUtbetalingerPåBruker(any()) } returns
every { kontantstøtteService.hentUtbetalingsinfoKontantstøtte(any()) } returns
HentUtbetalingsinfoKontantstøtteDto(
finnesUtbetaling = false,
emptyList(),
)
every { fullmaktService.hentFullmakt(any()) } returns listOf(Fullmakt(LocalDate.of(2020, 1, 1), LocalDate.of(2021, 1, 1), "11111133333", MotpartsRolle.FULLMEKTIG, listOf()))
val grunnlagsdataRegisterService =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,5 +46,6 @@ object VilkårTestUtil {
dokumentasjon = dokumentasjon,
harAvsluttetArbeidsforhold = harAvsluttetArbeidsforhold,
harKontantstøttePerioder = harKontantstøttePerioder,
kontantstøttePerioder = emptyList(),
)
}
23 changes: 23 additions & 0 deletions src/test/resources/json/grunnlagsdata_v2.json
Original file line number Diff line number Diff line change
Expand Up @@ -2374,5 +2374,28 @@
"name" : "harKontantstøttePerioder",
"type" : "Boolean",
"nullable" : true
},
"kontantstøttePerioder" : {
"name" : "kontantstøttePerioder",
"type" : "Collection",
"fields" : {
"fomMåned" : {
"name" : "fomMåned",
"type" : "YearMonth",
"nullable" : false
},
"tomMåned" : {
"name" : "tomMåned",
"type" : "YearMonth",
"nullable" : true
},
"kilde" : {
"name" : "kilde",
"type" : "Enum",
"values" : [ "KONTANTSTØTTE", "INFOTRYGD" ],
"nullable" : false
}
},
"nullable" : true
}
}
Loading