Skip to content

Commit

Permalink
Underhold lagre andre barn til BM
Browse files Browse the repository at this point in the history
  • Loading branch information
ugur93 committed Dec 27, 2024
1 parent 5d92ea4 commit eb28022
Show file tree
Hide file tree
Showing 6 changed files with 184 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ import no.nav.bidrag.behandling.transformers.underhold.justerePerioderForBearbei
import no.nav.bidrag.behandling.transformers.underhold.tilBarnetilsyn
import no.nav.bidrag.behandling.transformers.underhold.validere
import no.nav.bidrag.behandling.transformers.underhold.validerePerioderStønadTilBarnetilsyn
import no.nav.bidrag.behandling.ugyldigForespørsel
import no.nav.bidrag.domene.enums.barnetilsyn.Skolealder
import no.nav.bidrag.domene.enums.barnetilsyn.Tilsynstype
import no.nav.bidrag.domene.enums.diverse.Kilde
Expand Down Expand Up @@ -96,15 +97,18 @@ class UnderholdService(
underholdskostnad: Underholdskostnad,
harTilsynsordning: Boolean,
) {
if (!harTilsynsordning &&
val harOffentligeOpplysninger = underholdskostnad.hentSisteBearbeidetBarnetilsyn()?.isNotEmpty() == true

if (harOffentligeOpplysninger) {
ugyldigForespørsel("Kan ikke endre tilsynsordning når det finnes offentlige opplysninger")
} else if (!harTilsynsordning &&
(
underholdskostnad.barnetilsyn.isNotEmpty() ||
underholdskostnad.tilleggsstønad.isNotEmpty() ||
underholdskostnad.faktiskeTilsynsutgifter.isNotEmpty()
)
) {
throw HttpClientErrorException(
HttpStatus.BAD_REQUEST,
ugyldigForespørsel(
"Kan ikke sette harTilsynsordning til usann så lenge barnet er registrert med stønad til barnetilstyn, tilleggsstønad, eller faktiske tilsynsutgift",
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ class ValiderBehandlingService(
fun kanBehandlesINyLøsning(request: KanBehandlesINyLøsningRequest): String? =
when (request.tilType()) {
TypeBehandling.SÆRBIDRAG -> kanSærbidragBehandlesINyLøsning(request)
TypeBehandling.BIDRAG -> kanBidragBehandlesINyLøsning(request)
// TypeBehandling.BIDRAG -> kanBidragBehandlesINyLøsning(request)
else -> null
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -84,10 +84,12 @@ fun SletteUnderholdselement.validere(behandling: Behandling) {

when (this.type) {
Underholdselement.BARN -> {
if (underhold.kilde == Kilde.OFFENTLIG) {
ugyldigForespørsel("Barn med person.id ${this.idElement} er hentet fra offentlige registre og kan derfor ikke slettes.")
}
val rolle = underhold.barnetsRolleIBehandlingen
if (rolle != null) {
throw HttpClientErrorException(
HttpStatus.BAD_REQUEST,
ugyldigForespørsel(
"Barn med person.id ${this.idElement} har rolle ${rolle.rolletype} i behandling ${behandling.id}. Barnet kan derfor ikke slettes.",
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ class VedtakserviceBidragTest : CommonVedtakTilBehandlingTest() {
behandling.grunnlag =
opprettAlleAktiveGrunnlagFraFil(
behandling,
erstattVariablerITestFil("grunnlagresponse_bp"),
erstattVariablerITestFil("grunnlagresponse_bp_bm"),
)

every { behandlingService.hentBehandlingById(any()) } returns behandling
Expand Down Expand Up @@ -379,7 +379,7 @@ class VedtakserviceBidragTest : CommonVedtakTilBehandlingTest() {
behandling.grunnlag =
opprettAlleAktiveGrunnlagFraFil(
behandling,
erstattVariablerITestFil("grunnlagresponse_bp"),
erstattVariablerITestFil("grunnlagresponse_bp_bm"),
)

every { behandlingService.hentBehandlingById(any()) } returns behandling
Expand Down Expand Up @@ -496,7 +496,7 @@ class VedtakserviceBidragTest : CommonVedtakTilBehandlingTest() {
behandling.grunnlag =
opprettAlleAktiveGrunnlagFraFil(
behandling,
erstattVariablerITestFil("grunnlagresponse_bp"),
erstattVariablerITestFil("grunnlagresponse_bp_bm"),
)

every { behandlingService.hentBehandlingById(any()) } returns behandling
Expand Down Expand Up @@ -567,7 +567,7 @@ class VedtakserviceBidragTest : CommonVedtakTilBehandlingTest() {
behandling.grunnlag =
opprettAlleAktiveGrunnlagFraFil(
behandling,
erstattVariablerITestFil("grunnlagresponse_bp"),
erstattVariablerITestFil("grunnlagresponse_bp_bm"),
)

every { behandlingService.hentBehandlingById(any()) } returns behandling
Expand Down Expand Up @@ -642,7 +642,7 @@ class VedtakserviceBidragTest : CommonVedtakTilBehandlingTest() {
behandling.grunnlag =
opprettAlleAktiveGrunnlagFraFil(
behandling,
erstattVariablerITestFil("grunnlagresponse_bp"),
erstattVariablerITestFil("grunnlagresponse_bp_bm"),
)

every { behandlingService.hentBehandlingById(any()) } returns behandling
Expand Down Expand Up @@ -730,7 +730,7 @@ class VedtakserviceBidragTest : CommonVedtakTilBehandlingTest() {
behandling.grunnlag =
opprettAlleAktiveGrunnlagFraFil(
behandling,
erstattVariablerITestFil("grunnlagresponse_bp"),
erstattVariablerITestFil("grunnlagresponse_bp_bm"),
)

every { behandlingService.hentBehandlingById(any()) } returns behandling
Expand Down Expand Up @@ -788,7 +788,7 @@ class VedtakserviceBidragTest : CommonVedtakTilBehandlingTest() {
behandling.grunnlag =
opprettAlleAktiveGrunnlagFraFil(
behandling,
erstattVariablerITestFil("grunnlagresponse_bp"),
erstattVariablerITestFil("grunnlagresponse_bp_bm"),
)

every { behandlingService.hentBehandlingById(any()) } returns behandling
Expand Down Expand Up @@ -923,7 +923,7 @@ class VedtakserviceBidragTest : CommonVedtakTilBehandlingTest() {
behandling.grunnlag =
opprettAlleAktiveGrunnlagFraFil(
behandling,
erstattVariablerITestFil("grunnlagresponse_bp"),
erstattVariablerITestFil("grunnlagresponse_bp_bm"),
)

every { behandlingService.hentBehandlingById(any()) } returns behandling
Expand Down Expand Up @@ -1005,7 +1005,7 @@ class VedtakserviceBidragTest : CommonVedtakTilBehandlingTest() {
behandling.grunnlag =
opprettAlleAktiveGrunnlagFraFil(
behandling,
erstattVariablerITestFil("grunnlagresponse_bp"),
erstattVariablerITestFil("grunnlagresponse_bp_bm"),
)

every { behandlingService.hentBehandlingById(any()) } returns behandling
Expand Down
163 changes: 163 additions & 0 deletions src/test/resources/__files/grunnlagresponse_bm.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
{
"ainntektListe": [],
"skattegrunnlagListe": [
{
"personId": "{bmIdent}",
"periodeFra": "2023-01-01",
"periodeTil": "2024-01-01",
"skattegrunnlagspostListe": [
{
"skattegrunnlagType": "ORDINÆR",
"inntektType": "annenArbeidsinntekt",
"belop": 6000.0
},
{
"skattegrunnlagType": "ORDINÆR",
"inntektType": "annenSkattepliktigKapitalinntektFraAnnetFinansprodukt",
"belop": 5000.0
},
{
"skattegrunnlagType": "ORDINÆR",
"inntektType": "annenSkattepliktigKapitalinntektFraVirtuellValuta",
"belop": 50000.0
},
{
"skattegrunnlagType": "ORDINÆR",
"inntektType": "arbeidsavklaringspenger",
"belop": 10000.0
},
{
"skattegrunnlagType": "ORDINÆR",
"inntektType": "inntektFraGevinstOgTapskonto",
"belop": 30000.0
}
]
}
],
"utvidetBarnetrygdListe": [],
"tilleggsstønadBarnetilsynListe": [
{
"partPersonId": "{bmIdent}",
"harInnvilgetVedtak": true
}
],
"småbarnstilleggListe": [],
"barnetilleggListe": [],
"kontantstøtteListe": [],
"husstandsmedlemmerOgEgneBarnListe": [
{
"partPersonId": "{bmIdent}",
"gjelderPersonId": "3223123213",
"navn": "FIKTIV PEDAGOG",
"fødselsdato": "2022-05-09",
"relasjon": "BARN",
"borISammeHusstandDtoListe": []
},
{
"partPersonId": "{bmIdent}",
"gjelderPersonId": "34234324324",
"navn": "FIKTIV PEDAGOG",
"fødselsdato": "2001-05-09",
"relasjon": "INGEN",
"borISammeHusstandDtoListe": []
}
],
"sivilstandListe": [],
"barnetilsynListe": [
{
"partPersonId": "{bmIdent}",
"barnPersonId": "{barn1Ident}",
"periodeFra": "2024-01-01",
"periodeTil": "2025-07-01",
"tilsynstype": "HELTID",
"skolealder": "OVER"
}
],
"arbeidsforholdListe": [
{
"partPersonId": "{bmIdent}",
"startdato": "2002-11-03",
"sluttdato": null,
"arbeidsgiverNavn": "SAUEFABRIKK",
"arbeidsgiverOrgnummer": "896929119",
"ansettelsesdetaljerListe": [
{
"periodeFra": "2002-11",
"periodeTil": null,
"arbeidsforholdType": "Forenklet",
"arbeidstidsordningBeskrivelse": null,
"ansettelsesformBeskrivelse": null,
"yrkeBeskrivelse": "ALLMENNLÆRER",
"antallTimerPrUke": null,
"avtaltStillingsprosent": null,
"sisteStillingsprosentendringDato": null,
"sisteLønnsendringDato": null
}
],
"permisjonListe": [],
"permitteringListe": []
},
{
"partPersonId": "{bmIdent}",
"startdato": "2003-12-08",
"sluttdato": null,
"arbeidsgiverNavn": "SJOKKERENDE ELEKTRIKER",
"arbeidsgiverOrgnummer": "947064649",
"ansettelsesdetaljerListe": [
{
"periodeFra": "2024-01",
"periodeTil": null,
"arbeidsforholdType": "Ordinaer",
"arbeidstidsordningBeskrivelse": "Ikke skift",
"ansettelsesformBeskrivelse": "Fast ansettelse",
"yrkeBeskrivelse": "ALLMENNLÆRER",
"antallTimerPrUke": 37.5,
"avtaltStillingsprosent": 75.0,
"sisteStillingsprosentendringDato": null,
"sisteLønnsendringDato": null
}
],
"permisjonListe": [
{
"startdato": "2023-11-01",
"sluttdato": "2024-01-01",
"beskrivelse": "Permisjon",
"prosent": 100.0
}
],
"permitteringListe": [
{
"startdato": "2023-01-01",
"sluttdato": "2023-01-31",
"beskrivelse": "Permittering",
"prosent": 100.0
}
]
},
{
"partPersonId": "{bmIdent}",
"startdato": "2022-12-07",
"sluttdato": null,
"arbeidsgiverNavn": "SAUEFABRIKK",
"arbeidsgiverOrgnummer": "896929119",
"ansettelsesdetaljerListe": [
{
"periodeFra": "2022-12",
"periodeTil": null,
"arbeidsforholdType": "Forenklet",
"arbeidstidsordningBeskrivelse": null,
"ansettelsesformBeskrivelse": null,
"yrkeBeskrivelse": "BYGNINGSSNEKKER",
"antallTimerPrUke": null,
"avtaltStillingsprosent": null,
"sisteStillingsprosentendringDato": null,
"sisteLønnsendringDato": null
}
],
"permisjonListe": [],
"permitteringListe": []
}
],
"feilrapporteringListe": [],
"hentetTidspunkt": "2024-01-29T14:18:03.006031152"
}

0 comments on commit eb28022

Please sign in to comment.