Skip to content

Commit

Permalink
TSFF-659: Mulighet for å oppgi desimaltall i tillegg til timer/minutt…
Browse files Browse the repository at this point in the history
…er for omsorgstilbud (#1202)
  • Loading branch information
mbolstad authored Jul 24, 2024
1 parent d1e0cd4 commit a0c90fb
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -255,13 +255,7 @@ internal class MapPsbTilK9Format(
filter { it.periode.erSatt() }.forEach { tilsynsordning ->
val k9Periode = tilsynsordning.periode!!.somK9Periode()!!
k9Tilsynsordning[k9Periode] = TilsynPeriodeInfo()
.medEtablertTilsynTimerPerDag(
Duration
.ofHours(tilsynsordning.timer.toLong())
.plusMinutes(
tilsynsordning.minutter.toLong()
)
)
.medEtablertTilsynTimerPerDag(tilsynsordning.duration)
}
if (k9Tilsynsordning.isNotEmpty()) {
pleiepengerSyktBarn.medTilsynsordning(Tilsynsordning().medPerioder(k9Tilsynsordning))
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,19 @@
package no.nav.k9punsj.pleiepengersyktbarn

import com.fasterxml.jackson.annotation.JsonFormat
import com.fasterxml.jackson.annotation.JsonTypeInfo
import com.fasterxml.jackson.annotation.JsonTypeName
import com.fasterxml.jackson.module.kotlin.convertValue
import no.nav.k9.søknad.felles.type.BegrunnelseForInnsending
import no.nav.k9punsj.felles.DurationMapper.somDuration
import no.nav.k9punsj.felles.DurationMapper.somTimerOgMinutter
import no.nav.k9punsj.felles.FagsakYtelseType
import no.nav.k9punsj.felles.dto.*
import no.nav.k9punsj.felles.dto.TimerOgMinutter.Companion.somDuration
import no.nav.k9punsj.felles.dto.TimerOgMinutter.Companion.somTimerOgMinutterDto
import no.nav.k9punsj.felles.dto.hentUtJournalposter
import no.nav.k9punsj.utils.objectMapper
import java.time.Duration
import java.time.LocalDate
import java.time.LocalTime

Expand Down Expand Up @@ -70,11 +74,25 @@ data class PleiepengerSyktBarnSøknadDto(
val perioder: List<TilsynsordningInfoDto>?
)

data class TilsynsordningInfoDto(
val periode: PeriodeDto?,
val timer: Int,
val minutter: Int
)
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "tidsformat", defaultImpl = TilsynsordningInfoDto.LegacyTilsynsordningInfoDto::class)
sealed class TilsynsordningInfoDto(val duration: Duration) {
abstract val periode: PeriodeDto?

@JsonTypeName("desimaler")
data class StringTilsynsordningInfoDto(override val periode: PeriodeDto?, val perDagString: String) :
TilsynsordningInfoDto(perDagString.somDuration() ?: Duration.ZERO) // Vurder om det skal brukes defaultverdi her eller feile

@JsonTypeName("timerOgMin")
data class TimerOgMinutterTilsynsordningInfoDto(override val periode: PeriodeDto?, val perDag: TimerOgMinutter) :
TilsynsordningInfoDto(perDag.somDuration())

// Slett legacyklasse når frontend er endret
data class LegacyTilsynsordningInfoDto(
override val periode: PeriodeDto?,
val timer: Int,
val minutter: Int
) : TilsynsordningInfoDto(TimerOgMinutter(timer.toLong(), minutter).somDuration())
}

data class UttakDto(
val periode: PeriodeDto?,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ internal object PleiepengerSøknadVisningDtoUtils {
),
tilsynsordning = PleiepengerSyktBarnSøknadDto.TilsynsordningDto(
perioder = listOf(
PleiepengerSyktBarnSøknadDto.TilsynsordningInfoDto(
PleiepengerSyktBarnSøknadDto.TilsynsordningInfoDto.LegacyTilsynsordningInfoDto(
periode = optionalPeriode,
timer = 0,
minutter = 0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import no.nav.k9.søknad.felles.type.Periode
import no.nav.k9.søknad.ytelse.psb.v1.Omsorg
import no.nav.k9.søknad.ytelse.psb.v1.PleiepengerSyktBarn
import no.nav.k9punsj.AbstractContainerBaseTest
import no.nav.k9punsj.felles.DurationMapper.somTimerOgMinutter
import no.nav.k9punsj.felles.dto.OpprettNySøknad
import no.nav.k9punsj.felles.dto.PeriodeDto
import no.nav.k9punsj.felles.dto.SendSøknad
Expand Down Expand Up @@ -523,8 +524,8 @@ class PleiepengersyktbarnTests : AbstractContainerBaseTest() {
)
assertThat(søknad.beredskap?.first()?.tilleggsinformasjon).isEqualTo("FÅ SLUTT PÅ COVID!!!")
assertThat(søknad.nattevaak?.first()?.tilleggsinformasjon).isEqualTo("FÅ SLUTT PÅ COVID!!!")
assertThat(søknad.tilsynsordning?.perioder?.first()?.timer).isEqualTo(7)
assertThat(søknad.tilsynsordning?.perioder?.first()?.minutter).isEqualTo(30)
assertThat(søknad.tilsynsordning?.perioder?.first()?.duration?.somTimerOgMinutter()?.first).isEqualTo(7)
assertThat(søknad.tilsynsordning?.perioder?.first()?.duration?.somTimerOgMinutter()?.second).isEqualTo(30)
assertThat(søknad.uttak?.first()?.timerPleieAvBarnetPerDag).isEqualTo("7,5")
assertThat(søknad.omsorg?.relasjonTilBarnet).isEqualTo("MOR")
assertThat(søknad.bosteder!![0].land).isEqualTo("RU")
Expand Down

0 comments on commit a0c90fb

Please sign in to comment.