Skip to content

Commit

Permalink
Fikse aktivering av barnetilsyn
Browse files Browse the repository at this point in the history
  • Loading branch information
s148719 committed Dec 12, 2024
1 parent 89fab8b commit 905a28a
Show file tree
Hide file tree
Showing 6 changed files with 591 additions and 464 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ import no.nav.bidrag.behandling.dto.v2.behandling.AktivereGrunnlagResponseV2
import no.nav.bidrag.behandling.dto.v2.behandling.BehandlingDetaljerDtoV2
import no.nav.bidrag.behandling.dto.v2.behandling.BehandlingDtoV2
import no.nav.bidrag.behandling.dto.v2.behandling.KanBehandlesINyLøsningRequest
import no.nav.bidrag.behandling.dto.v2.behandling.tilType
import no.nav.bidrag.behandling.dto.v2.boforhold.OppdatereBoforholdRequestV2
import no.nav.bidrag.behandling.dto.v2.boforhold.OppdatereBoforholdResponse
import no.nav.bidrag.behandling.dto.v2.inntekt.OppdatereInntektRequest
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ import no.nav.bidrag.behandling.transformers.behandling.hentAlleBearbeidaBarneti
import no.nav.bidrag.behandling.transformers.underhold.aktivereBarnetilsynHvisIngenEndringerMåAksepteres
import no.nav.bidrag.behandling.transformers.underhold.harAndreBarnIUnderhold
import no.nav.bidrag.behandling.transformers.underhold.henteOgValidereUnderholdskostnad
import no.nav.bidrag.behandling.transformers.underhold.justerePerioderEtterVirkningsdato
import no.nav.bidrag.behandling.transformers.underhold.justerePerioder
import no.nav.bidrag.behandling.transformers.underhold.justerePerioderForBearbeidaBarnetilsynEtterVirkningstidspunkt
import no.nav.bidrag.behandling.transformers.underhold.tilBarnetilsyn
import no.nav.bidrag.behandling.transformers.underhold.tilStønadTilBarnetilsynDto
Expand Down Expand Up @@ -92,10 +92,10 @@ class UnderholdService(
) {
if (!harTilsynsordning &&
(
underholdskostnad.barnetilsyn.isNotEmpty() ||
underholdskostnad.tilleggsstønad.isNotEmpty() ||
underholdskostnad.faktiskeTilsynsutgifter.isNotEmpty()
)
underholdskostnad.barnetilsyn.isNotEmpty() ||
underholdskostnad.tilleggsstønad.isNotEmpty() ||
underholdskostnad.faktiskeTilsynsutgifter.isNotEmpty()
)
) {
throw HttpClientErrorException(
HttpStatus.BAD_REQUEST,
Expand Down Expand Up @@ -190,11 +190,11 @@ class UnderholdService(
fom = request.periode.fom,
tom = request.periode.tom,
under_skolealder =
when (request.skolealder) {
Skolealder.UNDER -> true
Skolealder.OVER -> false
else -> null
},
when (request.skolealder) {
Skolealder.UNDER -> true
Skolealder.OVER -> false
else -> null
},
omfang = request.tilsynstype ?: Tilsynstype.IKKE_ANGITT,
kilde = Kilde.MANUELL,
underholdskostnad = underholdskostnad,
Expand All @@ -211,7 +211,7 @@ class UnderholdService(
return OppdatereUnderholdResponse(
stønadTilBarnetilsyn = oppdatertBarnetilsyn.tilStønadTilBarnetilsynDto(),
underholdskostnad =
dtomapper.tilUnderholdskostnadsperioderForBehandlingMedKunEttSøknadsbarn(underholdskostnad.behandling),
dtomapper.tilUnderholdskostnadsperioderForBehandlingMedKunEttSøknadsbarn(underholdskostnad.behandling),
valideringsfeil = underholdskostnad.barnetilsyn.validerePerioder(),
)
}
Expand Down Expand Up @@ -278,8 +278,8 @@ class UnderholdService(
fun tilpasseUnderholdEtterVirkningsdato(behandling: Behandling) {
tilpasseAktiveBarnetilsynsgrunnlagEtterVirkningsdato(behandling)
tilpasseIkkeaktiveBarnetilsynsgrunnlagEtterVirkningsdato(behandling)
oppdatereUnderholdsperioderEtterEndretVirkningsdato(behandling)
behandling.aktivereBarnetilsynHvisIngenEndringerMåAksepteres()
behandling.underholdskostnader.justerePerioderEtterVirkningsdato()
}

@Transactional
Expand Down Expand Up @@ -320,9 +320,9 @@ class UnderholdService(
return OppdatereUnderholdResponse(
faktiskTilsynsutgift = dtomapper.tilFaktiskTilsynsutgiftDto(oppdatertFaktiskTilsynsutgift),
underholdskostnad =
dtomapper.tilUnderholdskostnadsperioderForBehandlingMedKunEttSøknadsbarn(
underholdskostnad.behandling,
),
dtomapper.tilUnderholdskostnadsperioderForBehandlingMedKunEttSøknadsbarn(
underholdskostnad.behandling,
),
valideringsfeil = underholdskostnad.barnetilsyn.validerePerioder(),
)
}
Expand Down Expand Up @@ -362,7 +362,7 @@ class UnderholdService(
return OppdatereUnderholdResponse(
tilleggsstønad = dtomapper.tilTilleggsstønadDto(oppdatertTilleggsstønad),
underholdskostnad =
dtomapper.tilUnderholdskostnadsperioderForBehandlingMedKunEttSøknadsbarn(underholdskostnad.behandling),
dtomapper.tilUnderholdskostnadsperioderForBehandlingMedKunEttSøknadsbarn(underholdskostnad.behandling),
valideringsfeil = underholdskostnad.barnetilsyn.validerePerioder(),
)
}
Expand Down Expand Up @@ -443,6 +443,10 @@ class UnderholdService(
return u
}

private fun oppdatereUnderholdsperioderEtterEndretVirkningsdato(b: Behandling) {
b.underholdskostnader.forEach { it.justerePerioder() }
}

private fun tilpasseIkkeaktiveBarnetilsynsgrunnlagEtterVirkningsdato(behandling: Behandling) {
val grunnlagsdatatype = Grunnlagsdatatype.BARNETILSYN
val sisteAktiveGrunnlag =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,6 @@ fun BarnetilsynGrunnlagDto.tilBarnetilsyn(u: Underholdskostnad): Barnetilsyn {
)
}

fun Set<Underholdskostnad>.justerePerioderEtterVirkningsdato() = forEach { it.justerePerioder() }

fun Grunnlag.justerePerioderForBearbeidaBarnetilsynEtterVirkningstidspunkt(overskriveAktiverte: Boolean = true) {
val barnetilsyn = konvertereData<MutableSet<BarnetilsynGrunnlagDto>>()!!

Expand All @@ -104,7 +102,7 @@ fun Grunnlag.justerePerioderForBearbeidaBarnetilsynEtterVirkningstidspunkt(overs
}
}

private fun Underholdskostnad.justerePerioder() {
fun Underholdskostnad.justerePerioder() {
val virkningsdato = behandling.virkningstidspunktEllerSøktFomDato

barnetilsyn.filter { it.fom < virkningsdato }.forEach { periode ->
Expand Down Expand Up @@ -152,7 +150,10 @@ private fun Behandling.overskriveBearbeidaBarnetilsynsgrunnlag(
)
}

grunnlagSomSkalOverskrives.find { it.gjelder == gjelder }?.let { it.data = tilJson(perioder) }
grunnlagSomSkalOverskrives.find { it.gjelder == gjelder }?.let {
it.data = tilJson(perioder)
it.aktiv = it.aktiv?.let { LocalDateTime.now() }
}
}

fun Behandling.aktivereBarnetilsynHvisIngenEndringerMåAksepteres() {
Expand Down
Loading

0 comments on commit 905a28a

Please sign in to comment.