Skip to content

Commit

Permalink
Fikse henting av rolle for søknadsbarn i underholdskostnad
Browse files Browse the repository at this point in the history
  • Loading branch information
s148719 committed Dec 3, 2024
1 parent aaf9cb9 commit 937d2e4
Show file tree
Hide file tree
Showing 12 changed files with 26 additions and 80 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,8 @@ open class Underholdskostnad(
)
open val faktiskeTilsynsutgifter: MutableSet<FaktiskTilsynsutgift> = mutableSetOf(),
) {
val barnetsRolleIBehandlingen get() = person.rolle.filter { behandling.id == it.behandling.id }.firstOrNull()

override fun toString(): String =
"Underholdskostnad(id=$id, behandling=${behandling.id}, person=${person.id}, harTilsynsordning=$harTilsynsordning, faktiskeTilsynsutgifter=$faktiskeTilsynsutgifter, barnetilsyn=$barnetilsyn, tilleggsstønad=$tilleggsstønad)"
}
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ data class ValideringsfeilUnderhold(
navn = underholdskostnad!!.person.navn,
ident = underholdskostnad.person.ident,
fødselsdato = underholdskostnad.person.fødselsdato ?: LocalDate.now(),
medIBehandling = underholdskostnad.person.rolle.any { it.behandling.id == underholdskostnad.behandling.id },
medIBehandling = underholdskostnad.barnetsRolleIBehandlingen != null,
)

data class UnderholdBarnDto(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,14 +46,12 @@ class UnderholdService(
) {
val rolleSøknadsbarn =
request.underholdsid?.let {
henteOgValidereUnderholdskostnad(
behandling,
it,
).person.rolle.filter { it.behandling.id == behandling.id }.firstOrNull()
henteOgValidereUnderholdskostnad(behandling, it).barnetsRolleIBehandlingen
}

if (request.underholdsid == null) {
val underholdHarAndreBarn = behandling.underholdskostnader.find { it.person.rolle.isEmpty() } != null
val underholdHarAndreBarn =
behandling.underholdskostnader.find { it.barnetsRolleIBehandlingen == null } != null
if (!underholdHarAndreBarn) {
throw HttpClientErrorException(
HttpStatus.BAD_REQUEST,
Expand Down Expand Up @@ -99,7 +97,7 @@ class UnderholdService(
): UnderholdDto {
request.validere()
request.harTilsynsordning?.let { underholdskostnad.harTilsynsordning = it }
val rolleSøknadsbarn = underholdskostnad.person.rolle.firstOrNull()
val rolleSøknadsbarn = underholdskostnad.barnetsRolleIBehandlingen
request.begrunnelse?.let {
notatService.oppdatereNotat(
underholdskostnad.behandling,
Expand Down Expand Up @@ -313,7 +311,7 @@ class UnderholdService(
): UnderholdDto? {
behandling.underholdskostnader.remove(underholdskostnad)
underholdskostnad.person.underholdskostnad.remove(underholdskostnad)
if (underholdskostnad.person.underholdskostnad.isEmpty() && underholdskostnad.person.rolle.isEmpty()) {
if (underholdskostnad.person.underholdskostnad.isEmpty() && underholdskostnad.barnetsRolleIBehandlingen == null) {
personRepository.deleteById(underholdskostnad.person.id!!)
if (!behandling.harAndreBarnIUnderhold()) {
notatService.sletteNotat(behandling, Notattype.UNDERHOLDSKOSTNAD, behandling.bidragsmottaker!!)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,7 @@ class Dtomapper(

private fun Underholdskostnad.tilDto(): UnderholdDto {
// Vil aldri ha flere enn èn rolle per behandling
val rolleSøknadsbarn = this.person.rolle.firstOrNull()
val rolleSøknadsbarn = this.barnetsRolleIBehandlingen
return UnderholdDto(
id = this.id!!,
harTilsynsordning = this.harTilsynsordning,
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ fun Barnetilsyn.tilStønadTilBarnetilsynDto(): StønadTilBarnetilsynDto =

fun List<Barnetilsyn>.tilStønadTilBarnetilsynDtos() = map { it.tilStønadTilBarnetilsynDto() }.toSet()

fun Behandling.harAndreBarnIUnderhold() = this.underholdskostnader.find { it.person.rolle.isEmpty() } != null
fun Behandling.harAndreBarnIUnderhold() = this.underholdskostnader.find { it.barnetsRolleIBehandlingen == null } != null

fun BarnDto.annetBarnMedSammeNavnOgFødselsdatoEksistererFraFør(behandling: Behandling) =
behandling.underholdskostnader
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ fun SletteUnderholdselement.validere(behandling: Behandling) {

when (this.type) {
Underholdselement.BARN -> {
val rolle = underhold.person.rolle.firstOrNull()
val rolle = underhold.barnetsRolleIBehandlingen
if (rolle != null) {
throw HttpClientErrorException(
HttpStatus.BAD_REQUEST,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -307,7 +307,7 @@ class BehandlingTilGrunnlagMappingV2(
underholdskostnader
.flatMap { u ->
u.faktiskeTilsynsutgifter.map {
val underholdRolle = u.person.rolle.find { it.behandling.id == id }
val underholdRolle = u.barnetsRolleIBehandlingen
val gjelderBarn =
underholdRolle?.tilGrunnlagPerson()?.also {
grunnlagslistePersoner.add(it)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ fun Behandling.tilGrunnlagBarnetilsyn(inkluderIkkeAngitt: Boolean = false): List
.filter { inkluderIkkeAngitt || it.omfang != Tilsynstype.IKKE_ANGITT && it.under_skolealder != null }
.flatMap {
val underholdRolle =
u.person.rolle.find { it.behandling.id == id }
u.barnetsRolleIBehandlingen
?: ugyldigForespørsel("Fant ikke person for underholdskostnad i behandlingen")
val underholdRolleGrunnlagobjekt = underholdRolle.tilGrunnlagPerson()
val gjelderBarnReferanse = underholdRolleGrunnlagobjekt.referanse
Expand Down Expand Up @@ -70,7 +70,7 @@ fun Behandling.tilGrunnlagTilleggsstønad(): List<GrunnlagDto> =
.flatMap { u ->
u.tilleggsstønad.flatMap {
val underholdRolle =
u.person.rolle.find { it.behandling.id == id }
u.barnetsRolleIBehandlingen
?: ugyldigForespørsel("Fant ikke person for underholdskostnad i behandlingen")
val underholdRolleGrunnlagobjekt = underholdRolle.tilGrunnlagPerson()
val gjelderBarnReferanse = underholdRolleGrunnlagobjekt.referanse
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -240,9 +240,8 @@ class UnderholdControllerTest : KontrollerTestRunner() {
oppdatertBehandling.get().notater.find {
behandling.underholdskostnader
.first()
.person.rolle
.first()
.id == it.rolle.id &&
.barnetsRolleIBehandlingen
?.id == it.rolle.id &&
NotatGrunnlag.NotatType.UNDERHOLDSKOSTNAD == it.type
},
) {
Expand Down Expand Up @@ -444,7 +443,7 @@ class UnderholdControllerTest : KontrollerTestRunner() {
lagretBehandling.underholdskostnader shouldHaveSize 3

val u =
lagretBehandling.underholdskostnader.find { it.person.rolle.isEmpty() && it.person.navn == navnAnnetBarnBp }
lagretBehandling.underholdskostnader.find { it.barnetsRolleIBehandlingen == null && it.person.navn == navnAnnetBarnBp }

val sletteUnderholdselement = SletteUnderholdselement(u?.id!!, u.person.id!!, Underholdselement.BARN)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -790,10 +790,7 @@ class BehandlingServiceTest : TestContainerRunner() {
opprettetBehandling.roller.filter { Rolletype.BARN == it.rolletype } shouldHaveSize 1
opprettetBehandling.underholdskostnader shouldHaveSize 1
opprettetBehandling.underholdskostnader.filter {
Rolletype.BARN ==
it.person.rolle
.first()
.rolletype
Rolletype.BARN == it.barnetsRolleIBehandlingen?.rolletype
} shouldHaveSize 1
opprettetBehandling.underholdskostnader.filter { it.person.ident != null } shouldHaveSize 1
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -440,10 +440,7 @@ class UnderholdServiceTest {

val underholdskostnad =
behandling.underholdskostnader.find {
barnIBehandling.ident!! ==
it.person.rolle
.first()
.ident
barnIBehandling.ident!! == it.barnetsRolleIBehandlingen?.ident
}
underholdskostnad.shouldNotBeNull()

Expand Down Expand Up @@ -497,10 +494,7 @@ class UnderholdServiceTest {

val underholdskostnad =
behandling.underholdskostnader.find {
barnIBehandling.ident!! ==
it.person.rolle
.first()
.ident
barnIBehandling.ident!! == it.barnetsRolleIBehandlingen?.ident
}
underholdskostnad.shouldNotBeNull()

Expand Down Expand Up @@ -560,10 +554,7 @@ class UnderholdServiceTest {

val underholdskostnad =
behandling.underholdskostnader.find {
barnIBehandling.ident!! ==
it.person.rolle
.first()
.ident
barnIBehandling.ident!! == it.barnetsRolleIBehandlingen?.ident
}
underholdskostnad.shouldNotBeNull()

Expand Down Expand Up @@ -625,10 +616,7 @@ class UnderholdServiceTest {

val underholdskostnad =
behandling.underholdskostnader.find {
barnIBehandling.ident!! ==
it.person.rolle
.first()
.ident
barnIBehandling.ident!! == it.barnetsRolleIBehandlingen?.ident
}
underholdskostnad.shouldNotBeNull()

Expand Down Expand Up @@ -694,10 +682,7 @@ class UnderholdServiceTest {

val underholdskostnad =
behandling.underholdskostnader.find {
barnIBehandling.ident!! ==
it.person.rolle
.first()
.ident
barnIBehandling.ident!! == it.barnetsRolleIBehandlingen?.ident
}
underholdskostnad.shouldNotBeNull()

Expand Down Expand Up @@ -755,10 +740,7 @@ class UnderholdServiceTest {

val underholdskostnad =
behandling.underholdskostnader.find {
barnIBehandling.ident!! ==
it.person.rolle
.first()
.ident
barnIBehandling.ident!! == it.barnetsRolleIBehandlingen?.ident
}

underholdskostnad.shouldNotBeNull()
Expand Down Expand Up @@ -825,10 +807,7 @@ class UnderholdServiceTest {

val underholdskostnad =
behandling.underholdskostnader.find {
barnIBehandling.ident!! ==
it.person.rolle
.first()
.ident
barnIBehandling.ident!! == it.barnetsRolleIBehandlingen?.ident
}
underholdskostnad.shouldNotBeNull()

Expand Down Expand Up @@ -866,10 +845,7 @@ class UnderholdServiceTest {

val underholdskostnad =
behandling.underholdskostnader.find {
barnIBehandling.ident!! ==
it.person.rolle
.first()
.ident
barnIBehandling.ident!! == it.barnetsRolleIBehandlingen?.ident
}
underholdskostnad.shouldNotBeNull()

Expand Down

0 comments on commit 937d2e4

Please sign in to comment.