diff --git a/src/main/kotlin/no/nav/helse/flex/domene/RSVedtak.kt b/src/main/kotlin/no/nav/helse/flex/domene/RSVedtak.kt index bfa3d5f6..72e301b4 100644 --- a/src/main/kotlin/no/nav/helse/flex/domene/RSVedtak.kt +++ b/src/main/kotlin/no/nav/helse/flex/domene/RSVedtak.kt @@ -1,6 +1,5 @@ package no.nav.helse.flex.domene -import com.fasterxml.jackson.annotation.JsonIgnore import com.fasterxml.jackson.databind.JsonNode import no.nav.helse.flex.logger import java.time.Instant @@ -16,14 +15,8 @@ data class RSVedtakWrapper( val orgnavn: String, val annullert: Boolean = false, val revurdert: Boolean = false, - @JsonIgnore - val dagerArbeidsgiver: List = emptyList(), - @JsonIgnore - val dagerPerson: List = emptyList(), - @JsonIgnore val sykepengebelopArbeidsgiver: Int = 0, - @JsonIgnore - val sykepengebelopPerson: Int = 0, + val sykepengebelopSykmeldt: Int = 0, val daglisteArbeidsgiver: List = emptyList(), val daglisteSykmeldt: List = emptyList(), val andreArbeidsgivere: Map?, @@ -33,15 +26,15 @@ data class RSVedtakWrapper( val log = logger() fun dagerTilUtbetalingsdager( - dagerPerson: List, + dagerSykmeldt: List, dagerArbeidsgiver: List, ): List { - val fom = (dagerPerson + dagerArbeidsgiver).minByOrNull { it.dato }?.dato ?: return emptyList() - val tom = (dagerPerson + dagerArbeidsgiver).maxByOrNull { it.dato }?.dato ?: return emptyList() + val fom = (dagerSykmeldt + dagerArbeidsgiver).minByOrNull { it.dato }?.dato ?: return emptyList() + val tom = (dagerSykmeldt + dagerArbeidsgiver).maxByOrNull { it.dato }?.dato ?: return emptyList() val utbetalingsdager = mutableListOf() for (dato in fom.datesUntil(tom.plusDays(1))) { - val dagPerson = dagerPerson.find { it.dato.equals(dato) } + val dagPerson = dagerSykmeldt.find { it.dato.equals(dato) } val dagArbeidsgiver = dagerArbeidsgiver.find { it.dato.equals(dato) } if (dagPerson == null && dagArbeidsgiver == null) { diff --git a/src/main/kotlin/no/nav/helse/flex/service/BrukerVedtak.kt b/src/main/kotlin/no/nav/helse/flex/service/BrukerVedtak.kt index 8abcd8a2..31c20f0d 100644 --- a/src/main/kotlin/no/nav/helse/flex/service/BrukerVedtak.kt +++ b/src/main/kotlin/no/nav/helse/flex/service/BrukerVedtak.kt @@ -7,7 +7,6 @@ import no.nav.helse.flex.domene.* import no.nav.helse.flex.kafka.VedtakStatusKafkaProducer import no.nav.helse.flex.logger import no.nav.helse.flex.organisasjon.LeggTilOrganisasjonnavn -import no.nav.helse.flex.secure import no.nav.helse.flex.util.* import org.springframework.http.HttpStatus import org.springframework.stereotype.Service @@ -51,7 +50,6 @@ class BrukerVedtak( .map { it.fjernArbeidIkkeGjenopptattDager() } .leggTilOrgnavn() .leggTilArbeidsgivere() - .sammenlignDaglister() } fun lesVedtak( @@ -206,49 +204,3 @@ class BrukerVedtak( private fun List.leggTilArbeidsgivere(): List = leggTilOrganisasjonavn.leggTilAndreArbeidsgivere(this) } - -private fun List.sammenlignDaglister(): List { - this.forEach { - val personDiff = it.dagerPerson.finnForskjeller(it.daglisteSykmeldt) - if (personDiff != null) { - logger().secure("Diff i sykmeldt dagliste for vedtak ${it.vedtak.utbetaling.utbetalingId}: $personDiff") - } - val arbeidsgiverDiff = it.dagerArbeidsgiver.finnForskjeller(it.daglisteArbeidsgiver) - if (arbeidsgiverDiff != null) { - logger().secure("Diff i arbeidsgiver dagliste for vedtak ${it.vedtak.utbetaling.utbetalingId}: $arbeidsgiverDiff") - } - } - return this -} - -private fun List.finnForskjeller(annen: List): String? { - if (this.size != annen.size) { - return "Ulik størrelse: ${this.size} vs ${annen.size}" - } - - val forskjeller = mutableListOf() - this.forEachIndexed { index, it -> - val dagDiff = mutableListOf() - - if (it.dato != annen[index].dato) { - dagDiff.add("dato: ${it.dato} vs ${annen[index].dato}") - } - if (it.belop != annen[index].belop) { - dagDiff.add("belop: ${it.belop} vs ${annen[index].belop}") - } - if (it.begrunnelser.toSet() != annen[index].begrunnelser.toSet()) { - dagDiff.add("begrunnelser: ${it.begrunnelser} vs ${annen[index].begrunnelser}") - } - if (it.dagtype != annen[index].dagtype) { - dagDiff.add("dagtype: ${it.dagtype} vs ${annen[index].dagtype}") - } - if (it.grad != annen[index].grad) { - dagDiff.add("grad: ${it.grad} vs ${annen[index].grad}") - } - if (dagDiff.isNotEmpty()) { - forskjeller.add("Index $index (${it.dato}): ${dagDiff.joinToString(", ")}") - } - } - - return if (forskjeller.isEmpty()) null else forskjeller.joinToString("; ") -} diff --git a/src/main/kotlin/no/nav/helse/flex/service/FiltrerArbeidIkkeGjennopptatt.kt b/src/main/kotlin/no/nav/helse/flex/service/FiltrerArbeidIkkeGjennopptatt.kt index a1c87252..36f8db97 100644 --- a/src/main/kotlin/no/nav/helse/flex/service/FiltrerArbeidIkkeGjennopptatt.kt +++ b/src/main/kotlin/no/nav/helse/flex/service/FiltrerArbeidIkkeGjennopptatt.kt @@ -2,40 +2,27 @@ package no.nav.helse.flex.service import no.nav.helse.flex.domene.RSDag import no.nav.helse.flex.domene.RSVedtakWrapper -import no.nav.helse.flex.logger import java.time.LocalDate fun RSVedtakWrapper.fjernArbeidIkkeGjenopptattDager(): RSVedtakWrapper { - val dagerArbeidsgiver = this.dagerArbeidsgiver.filter { it.dagtype != "ArbeidIkkeGjenopptattDag" } - val dagerPerson = this.dagerPerson.filter { it.dagtype != "ArbeidIkkeGjenopptattDag" } - val daglisteSykmeldt = this.daglisteSykmeldt.filter { it.dagtype != "ArbeidIkkeGjenopptattDag" } val daglisteArbeidsgiver = this.daglisteArbeidsgiver.filter { it.dagtype != "ArbeidIkkeGjenopptattDag" } - val faktiskFomGammel = finnFaktiskFom(dagerArbeidsgiver, dagerPerson, this.vedtak.fom) val faktiskFomNy = finnFaktiskFom(daglisteArbeidsgiver, daglisteSykmeldt, this.vedtak.fom) - if (faktiskFomNy != faktiskFomGammel) { - logger().warn( - "Fant ulik fom i daglisteArbeidsgiver og daglisteSykmeldt: $faktiskFomNy og $faktiskFomGammel. ${this.vedtak.utbetaling.utbetalingId}", - ) - } - return this.copy( - dagerArbeidsgiver = dagerArbeidsgiver, - dagerPerson = dagerPerson, daglisteArbeidsgiver = daglisteArbeidsgiver, daglisteSykmeldt = daglisteSykmeldt, - vedtak = this.vedtak.copy(fom = faktiskFomGammel), + vedtak = this.vedtak.copy(fom = faktiskFomNy), ) } fun finnFaktiskFom( dagerArbeidsgiver: List, - dagerPerson: List, + dagerSykmeldt: List, fom: LocalDate, ): LocalDate { - val tidligsteDagerDag = (dagerArbeidsgiver + dagerPerson).minByOrNull { it.dato } + val tidligsteDagerDag = (dagerArbeidsgiver + dagerSykmeldt).minByOrNull { it.dato } if (tidligsteDagerDag != null) { if (tidligsteDagerDag.dato.isAfter(fom)) { return tidligsteDagerDag.dato diff --git a/src/main/kotlin/no/nav/helse/flex/service/SendVedtakStatus.kt b/src/main/kotlin/no/nav/helse/flex/service/SendVedtakStatus.kt index ae74f798..1332201b 100644 --- a/src/main/kotlin/no/nav/helse/flex/service/SendVedtakStatus.kt +++ b/src/main/kotlin/no/nav/helse/flex/service/SendVedtakStatus.kt @@ -77,7 +77,7 @@ class SendVedtakStatus( hentSomBruker = false, ).first { it.id == id } - val skalIkkeVisesFordi = sjekkDager(vedtakWrapper.dagerArbeidsgiver + vedtakWrapper.dagerPerson) + val skalIkkeVisesFordi = sjekkDager(vedtakWrapper.daglisteArbeidsgiver + vedtakWrapper.daglisteSykmeldt) if (skalIkkeVisesFordi.isNotBlank()) { log.info("Utbetaling $utbetalingId inneholder bare $skalIkkeVisesFordi og vises ikke til bruker") skalIkkeVises(id, skalIkkeVisesFordi) diff --git a/src/main/kotlin/no/nav/helse/flex/util/VedtakUtils.kt b/src/main/kotlin/no/nav/helse/flex/util/VedtakUtils.kt index 1260113e..a1176145 100644 --- a/src/main/kotlin/no/nav/helse/flex/util/VedtakUtils.kt +++ b/src/main/kotlin/no/nav/helse/flex/util/VedtakUtils.kt @@ -14,45 +14,27 @@ fun RSVedtakWrapper.leggTilDagerIVedtakPeriode(): RSVedtakWrapper { val fom = this.vedtak.fom val tom = this.vedtak.tom - var dagerArbeidsgiver = - hentDager(fom, tom, this.vedtak.utbetaling.arbeidsgiverOppdrag, this.vedtak.utbetaling.utbetalingsdager) - val sykepengebelopArbeidsgiver = dagerArbeidsgiver.sumOf { it.belop } - - var dagerPerson = - hentDager(fom, tom, this.vedtak.utbetaling.personOppdrag, this.vedtak.utbetaling.utbetalingsdager) - val sykepengebelopPerson = dagerPerson.sumOf { it.belop } - - if (sykepengebelopPerson == 0 && sykepengebelopArbeidsgiver == 0) { - dagerArbeidsgiver = emptyList() // Helt avvist vedtak vises bare i dagerPerson - } else if (sykepengebelopPerson == 0) { - dagerPerson = emptyList() // Refusjonutbetaling - } else if (sykepengebelopArbeidsgiver == 0) { - dagerArbeidsgiver = emptyList() // Brukerutbetaling - } - var dagerArbeidsgiverNy = hentDagerNy(fom, tom, this.vedtak.utbetaling.utbetalingsdager, false) val sykepengebelopArbeidsgiverNy = dagerArbeidsgiverNy.sumOf { it.belop } - var dagerPersonNy = + var dagerSykmeldtNy = hentDagerNy(fom, tom, this.vedtak.utbetaling.utbetalingsdager, true) - val sykepengebelopPersonNy = dagerPersonNy.sumOf { it.belop } + val sykepengebelopSykmeldtNy = dagerSykmeldtNy.sumOf { it.belop } - if (sykepengebelopPersonNy == 0 && sykepengebelopArbeidsgiverNy == 0) { + if (sykepengebelopSykmeldtNy == 0 && sykepengebelopArbeidsgiverNy == 0) { dagerArbeidsgiverNy = emptyList() // Helt avvist vedtak vises bare i dagerPerson - } else if (sykepengebelopPersonNy == 0) { - dagerPersonNy = emptyList() // Refusjonutbetaling + } else if (sykepengebelopSykmeldtNy == 0) { + dagerSykmeldtNy = emptyList() // Refusjonutbetaling } else if (sykepengebelopArbeidsgiverNy == 0) { dagerArbeidsgiverNy = emptyList() // Brukerutbetaling } return this.copy( - dagerArbeidsgiver = dagerArbeidsgiver, - dagerPerson = dagerPerson, - sykepengebelopArbeidsgiver = sykepengebelopArbeidsgiver, - sykepengebelopPerson = sykepengebelopPerson, + sykepengebelopArbeidsgiver = sykepengebelopArbeidsgiverNy, + sykepengebelopSykmeldt = sykepengebelopSykmeldtNy, daglisteArbeidsgiver = dagerArbeidsgiverNy, - daglisteSykmeldt = dagerPersonNy, + daglisteSykmeldt = dagerSykmeldtNy, ) } @@ -187,130 +169,6 @@ private fun RSUtbetalingdag.getBeløp(erSykmeldt: Boolean): Int = private fun finnPerioder(dager: List): PeriodeImpl = PeriodeImpl(dager.minBy { it.dato }.dato, dager.maxBy { it.dato }.dato) -fun hentDager( - fom: LocalDate, - tom: LocalDate, - oppdragDto: RSOppdrag?, - utbetalingsdager: List?, -): List { - // Setter opp alle dager i perioden - var dager = - fom - .datesUntil(tom.plusDays(1)) - .asSequence() - .map { dato -> - RSDag( - dato = dato, - belop = 0, - grad = 0.0, - dagtype = if (dato.dayOfWeek in helg) "NavHelgDag" else "NavDag", - begrunnelser = emptyList(), - ) - } - // Oppdaterer med beløp - .map { dag -> - val overlappendeLinjer = - oppdragDto - ?.utbetalingslinjer - ?.filter { linje -> linje.overlapperMed(dag.dato) } // alle linjer som overlapper - ?: emptyList() - - overlappendeLinjer.fold(dag) { dagen, linjen -> - val utbetalingslinjeUtenUtbetaling = linjen.stønadsdager == 0 - dagen.copy( - belop = if (utbetalingslinjeUtenUtbetaling) 0 else linjen.dagsats, - grad = if (utbetalingslinjeUtenUtbetaling) 0.0 else linjen.grad, - ) - } - } - // Slår sammen med dager fra bømlo - .associateWith { dag -> utbetalingsdager?.find { it.dato == dag.dato } } - // Oppdaterer dager med dagtype og begrunnelser - .map { (dag, utbetalingsdagen) -> - when (utbetalingsdagen) { - null -> { - dag - } - - else -> { - dag.copy( - begrunnelser = utbetalingsdagen.begrunnelser, - dagtype = - when (utbetalingsdagen.type) { - "NavDag" -> { - when { - dag.grad < 100 -> "NavDagDelvisSyk" - else -> "NavDagSyk" - } - } - - "ArbeidsgiverperiodeDag" -> { - when { - dag.belop == 0 -> "ArbeidsgiverperiodeDag" - - // NAV betaler ikke arbeidsgiverperiode i helg - dag.dato.dayOfWeek in helg -> "NavHelgDag" - - // Vises som gradert syk - dag.grad < 100 -> "NavDagDelvisSyk" - - // Vises som 100% syk - else -> "NavDagSyk" - } - } - - else -> { - utbetalingsdagen.type - } - }, - belop = if (dag.dato.dayOfWeek in helg) 0 else dag.belop, - grad = if (dag.dato.dayOfWeek in helg) 0.0 else dag.grad, - ) - } - } - }.toList() - - val sisteArbeidsgiverperiodeDag = dager.lastOrNull { it.dagtype == "ArbeidsgiverperiodeDag" } - if (sisteArbeidsgiverperiodeDag?.dato?.dayOfWeek == DayOfWeek.SUNDAY) { - val overtagelseMandag = utbetalingsdager?.find { it.dato == sisteArbeidsgiverperiodeDag.dato.plusDays(1) } - if (overtagelseMandag?.type == "ArbeidsgiverperiodeDag") { - // Dersom nav overtar på mandag så skal ikke helgen før vises som arbeidsgiverperiode - dager = - dager.map { dag -> - when (dag.dato) { - overtagelseMandag.dato.minusDays(2) -> dag.copy(dagtype = "NavHelgDag") - overtagelseMandag.dato.minusDays(1) -> dag.copy(dagtype = "NavHelgDag") - else -> dag - } - } - } - } - - val sisteUtbetalteDag = dager.indexOfLast { it.belop > 0 } - if (sisteUtbetalteDag == -1) { - return dager // Ingen dager med utbetaling - } - - val annenUtbetalingISlutten = - dager.subList(sisteUtbetalteDag, dager.size).indexOfFirst { - it.belop == 0 && it.dagtype in dagtyperMedUtbetaling - } - if (annenUtbetalingISlutten > -1) { - // Ligger en person/refusjon utbetaling senere så vi stanser visningen her. - dager = dager.subList(0, sisteUtbetalteDag + annenUtbetalingISlutten).toList() - } - - val forsteUtbetalteDag = dager.indexOfFirst { it.belop > 0 } - val annenUtbetalingIStarten = - dager.subList(0, forsteUtbetalteDag).indexOfLast { it.belop == 0 && it.dagtype in dagtyperMedUtbetaling } - if (annenUtbetalingIStarten > -1) { - // Ligger en person/refusjon utbetaling tidligere så vi starter visningen her. - dager = dager.subList(forsteUtbetalteDag, dager.size).toList() - } - - return dager -} - fun List.markerRevurderte(): List { val revurderinger = this.filter { it.vedtak.utbetaling.utbetalingType == "REVURDERING" } diff --git a/src/main/kotlin/no/nav/helse/flex/vedtaktype/Vedtaktype.kt b/src/main/kotlin/no/nav/helse/flex/vedtaktype/Vedtaktype.kt index 2ac590ac..dbfb04c2 100644 --- a/src/main/kotlin/no/nav/helse/flex/vedtaktype/Vedtaktype.kt +++ b/src/main/kotlin/no/nav/helse/flex/vedtaktype/Vedtaktype.kt @@ -7,11 +7,11 @@ import org.springframework.stereotype.Component class Vedtaktype { private fun RSVedtakWrapper.erRefusjon() = this.sykepengebelopArbeidsgiver > 0 - private fun RSVedtakWrapper.erBrukerutbetaling() = this.sykepengebelopPerson > 0 + private fun RSVedtakWrapper.erBrukerutbetaling() = this.sykepengebelopSykmeldt > 0 private fun RSVedtakWrapper.erKombinasjonutbetaling() = erRefusjon() && erBrukerutbetaling() - private fun RSVedtakWrapper.erAvvist() = (dagerPerson + dagerArbeidsgiver).any { it.dagtype == "AvvistDag" } + private fun RSVedtakWrapper.erAvvist() = (daglisteSykmeldt + daglisteArbeidsgiver).any { it.dagtype == "AvvistDag" } private fun RSVedtakWrapper.erDelvisAvvist() = (erRefusjon() || erBrukerutbetaling()) && erAvvist() diff --git a/src/test/kotlin/no/nav/helse/flex/VedtakStatusTest.kt b/src/test/kotlin/no/nav/helse/flex/VedtakStatusTest.kt index 98507f2d..ba31d131 100644 --- a/src/test/kotlin/no/nav/helse/flex/VedtakStatusTest.kt +++ b/src/test/kotlin/no/nav/helse/flex/VedtakStatusTest.kt @@ -439,6 +439,9 @@ class VedtakStatusTest : FellesTestOppsett() { dato = now, type = "ArbeidsgiverperiodeDag", begrunnelser = emptyList(), + beløpTilArbeidsgiver = 0, + beløpTilSykmeldt = 0, + sykdomsgrad = 100, ), ), ).serialisertTilString(), diff --git a/src/test/kotlin/no/nav/helse/flex/VedtakTestdata.kt b/src/test/kotlin/no/nav/helse/flex/VedtakTestdata.kt index 9685aa3a..c692a8ba 100644 --- a/src/test/kotlin/no/nav/helse/flex/VedtakTestdata.kt +++ b/src/test/kotlin/no/nav/helse/flex/VedtakTestdata.kt @@ -46,8 +46,8 @@ fun vedtakTestdata(yrkesaktivitetstype: String = "ARBEIDSTAKER") = andreArbeidsgivere = mapOf("123456547" to 500000.0, "547123456" to 300000.0, "5678" to 100000.0), annullert = false, revurdert = false, - dagerArbeidsgiver = emptyList(), - dagerPerson = emptyList(), + daglisteArbeidsgiver = emptyList(), + daglisteSykmeldt = emptyList(), sykepengebelopArbeidsgiver = 0, - sykepengebelopPerson = 0, + sykepengebelopSykmeldt = 0, ) diff --git a/src/test/kotlin/no/nav/helse/flex/domene/DagerTilUtbetalingsdagerTest.kt b/src/test/kotlin/no/nav/helse/flex/domene/DagerTilUtbetalingsdagerTest.kt index 1b16986a..6e469b5b 100644 --- a/src/test/kotlin/no/nav/helse/flex/domene/DagerTilUtbetalingsdagerTest.kt +++ b/src/test/kotlin/no/nav/helse/flex/domene/DagerTilUtbetalingsdagerTest.kt @@ -7,8 +7,8 @@ import java.time.LocalDate class DagerTilUtbetalingsdagerTest { @Test - fun `kombinerer dager fra person og arbeidsgiver når begge eksisterer`() { - val dagerPerson = + fun `kombinerer dager fra sykmeldt og arbeidsgiver når begge eksisterer`() { + val dagerSykmeldt = listOf( RSDag( dato = LocalDate.of(2025, 10, 1), @@ -44,7 +44,7 @@ class DagerTilUtbetalingsdagerTest { ), ) - val utbetalingsdager = RSVedtakWrapper.dagerTilUtbetalingsdager(dagerPerson, dagerArbeidsgiver) + val utbetalingsdager = RSVedtakWrapper.dagerTilUtbetalingsdager(dagerSykmeldt, dagerArbeidsgiver) utbetalingsdager.shouldHaveSize(2) @@ -68,8 +68,8 @@ class DagerTilUtbetalingsdagerTest { } @Test - fun `håndterer kun person dager`() { - val dagerPerson = + fun `håndterer kun sykmeldt dager`() { + val dagerSykmeldt = listOf( RSDag( dato = LocalDate.of(2025, 10, 28), @@ -80,7 +80,7 @@ class DagerTilUtbetalingsdagerTest { ), ) - val utbetalingsdager = RSVedtakWrapper.dagerTilUtbetalingsdager(dagerPerson, emptyList()) + val utbetalingsdager = RSVedtakWrapper.dagerTilUtbetalingsdager(dagerSykmeldt, emptyList()) utbetalingsdager.shouldHaveSize(1) utbetalingsdager[0].apply { @@ -121,7 +121,7 @@ class DagerTilUtbetalingsdagerTest { @Test fun `fyller ut manglende dager i perioden`() { - val dagerPerson = + val dagerSykmeldt = listOf( RSDag( dato = LocalDate.of(2025, 10, 1), @@ -143,7 +143,7 @@ class DagerTilUtbetalingsdagerTest { ), ) - val utbetalingsdager = RSVedtakWrapper.dagerTilUtbetalingsdager(dagerPerson, dagerArbeidsgiver) + val utbetalingsdager = RSVedtakWrapper.dagerTilUtbetalingsdager(dagerSykmeldt, dagerArbeidsgiver) // Skal bare inneholde dagene som faktisk finnes, ikke fylle ut manglende utbetalingsdager.shouldHaveSize(2) @@ -153,7 +153,7 @@ class DagerTilUtbetalingsdagerTest { @Test fun `komplett eksempel basert på faktisk vedtak`() { - val dagerPerson = + val dagerSykmeldt = listOf( RSDag( dato = LocalDate.of(2025, 10, 1), @@ -203,7 +203,7 @@ class DagerTilUtbetalingsdagerTest { ), ) - val utbetalingsdager = RSVedtakWrapper.dagerTilUtbetalingsdager(dagerPerson, dagerArbeidsgiver) + val utbetalingsdager = RSVedtakWrapper.dagerTilUtbetalingsdager(dagerSykmeldt, dagerArbeidsgiver) utbetalingsdager.shouldHaveSize(4) diff --git a/src/test/kotlin/no/nav/helse/flex/service/FiltrerArbeidIkkeGjennopptattKtTest.kt b/src/test/kotlin/no/nav/helse/flex/service/FiltrerArbeidIkkeGjennopptattKtTest.kt index 6c4f5ac5..33d04fc0 100644 --- a/src/test/kotlin/no/nav/helse/flex/service/FiltrerArbeidIkkeGjennopptattKtTest.kt +++ b/src/test/kotlin/no/nav/helse/flex/service/FiltrerArbeidIkkeGjennopptattKtTest.kt @@ -14,7 +14,7 @@ class FiltrerArbeidIkkeGjennopptattKtTest { fun `fjerner arbeid ikke gjenopptatt dager`() { val vedtakMedDager = vedtakTestdata().copy( - dagerPerson = + daglisteSykmeldt = listOf( rSDag(5, "ArbeidIkkeGjenopptattDag"), rSDag(4, "ArbeidIkkeGjenopptattDag"), @@ -24,7 +24,7 @@ class FiltrerArbeidIkkeGjennopptattKtTest { ) val vedtakUtenArbeidIkkeGjenopptattDager = vedtakMedDager.fjernArbeidIkkeGjenopptattDager() - vedtakUtenArbeidIkkeGjenopptattDager.dagerPerson.shouldHaveSize(1) + vedtakUtenArbeidIkkeGjenopptattDager.daglisteSykmeldt.shouldHaveSize(1) vedtakUtenArbeidIkkeGjenopptattDager.vedtak.fom shouldBeEqualTo (dato.minusDays(3)) } @@ -32,7 +32,7 @@ class FiltrerArbeidIkkeGjennopptattKtTest { fun `fjerner ikke vanlige dager`() { val vedtakMedDager = vedtakTestdata().copy( - dagerPerson = + daglisteSykmeldt = listOf( rSDag(5, "NAVDag"), rSDag(4, "NAVDag"), @@ -42,7 +42,7 @@ class FiltrerArbeidIkkeGjennopptattKtTest { ) val vedtakUtenArbeidIkkeGjenopptattDager = vedtakMedDager.fjernArbeidIkkeGjenopptattDager() - vedtakUtenArbeidIkkeGjenopptattDager.dagerPerson.shouldHaveSize(3) + vedtakUtenArbeidIkkeGjenopptattDager.daglisteSykmeldt.shouldHaveSize(3) vedtakUtenArbeidIkkeGjenopptattDager.vedtak.fom shouldBeEqualTo dato.minusDays(5) } diff --git a/src/test/kotlin/no/nav/helse/flex/service/HentDagerTest.kt b/src/test/kotlin/no/nav/helse/flex/service/HentDagerTest.kt index 1968c5a0..f3a32f7a 100644 --- a/src/test/kotlin/no/nav/helse/flex/service/HentDagerTest.kt +++ b/src/test/kotlin/no/nav/helse/flex/service/HentDagerTest.kt @@ -2,10 +2,7 @@ package no.nav.helse.flex.service import io.kotest.matchers.collections.shouldContainExactly import no.nav.helse.flex.domene.RSDag -import no.nav.helse.flex.domene.RSOppdrag import no.nav.helse.flex.domene.RSUtbetalingdag -import no.nav.helse.flex.domene.RSUtbetalingslinje -import no.nav.helse.flex.util.hentDager import no.nav.helse.flex.util.hentDagerNy import org.junit.jupiter.api.Test import java.time.LocalDate @@ -43,13 +40,6 @@ class HentDagerTest { RSDag(mandag.plusDays(9), 0, 0.0, "ArbeidsgiverperiodeDag", emptyList()), ) - hentDager( - fom = mandag.plusDays(0), - tom = mandag.plusDays(9), - oppdragDto = null, - utbetalingsdager = utbetalingsdager, - ).shouldContainExactly(forventetArbeidgiverDagliste) - hentDagerNy( fom = mandag.plusDays(0), tom = mandag.plusDays(9), @@ -102,27 +92,6 @@ class HentDagerTest { RSDag(mandag.plusDays(16), 100, 100.0, "NavDagSyk", emptyList()), RSDag(mandag.plusDays(17), 100, 100.0, "NavDagSyk", emptyList()), ) - hentDager( - fom = mandag.plusDays(0), - tom = mandag.plusDays(17), - oppdragDto = - RSOppdrag( - utbetalingslinjer = - listOf( - RSUtbetalingslinje( - fom = mandag.plusDays(16), - tom = mandag.plusDays(17), - dagsats = 100, - totalbeløp = 200, - grad = 100.0, - stønadsdager = 2, - ), - ), - ), - utbetalingsdager = utbetalingsdager, - ).shouldContainExactly( - forventetArbeidgiverDagliste, - ) hentDagerNy( fom = mandag.plusDays(0), @@ -214,27 +183,7 @@ class HentDagerTest { RSDag(mandag.plusDays(16), 100, 100.0, "NavDagSyk", emptyList()), RSDag(mandag.plusDays(17), 100, 100.0, "NavDagSyk", emptyList()), ) - hentDager( - fom = mandag.plusDays(0), - tom = mandag.plusDays(17), - oppdragDto = - RSOppdrag( - utbetalingslinjer = - listOf( - RSUtbetalingslinje( - fom = mandag.plusDays(10), - tom = mandag.plusDays(17), - dagsats = 100, - totalbeløp = 800, - grad = 100.0, - stønadsdager = 8, - ), - ), - ), - utbetalingsdager = utbetalingsdager, - ).shouldContainExactly( - forventetArbeidgiverDagliste, - ) + hentDagerNy( fom = mandag.plusDays(0), tom = mandag.plusDays(17), @@ -341,27 +290,7 @@ class HentDagerTest { RSDag(mandag.plusDays(16), 100, 100.0, "NavDagSyk", emptyList()), RSDag(mandag.plusDays(17), 100, 100.0, "NavDagSyk", emptyList()), ) - hentDager( - fom = mandag.plusDays(0), - tom = mandag.plusDays(17), - oppdragDto = - RSOppdrag( - utbetalingslinjer = - listOf( - RSUtbetalingslinje( - fom = mandag.plusDays(7), - tom = mandag.plusDays(17), - dagsats = 100, - totalbeløp = 900, - grad = 100.0, - stønadsdager = 9, - ), - ), - ), - utbetalingsdager = utbetalingsdager, - ).shouldContainExactly( - forventetArbeidgiverDagliste, - ) + hentDagerNy( fom = mandag.plusDays(0), tom = mandag.plusDays(17), @@ -416,27 +345,7 @@ class HentDagerTest { RSDag(søndag.plusDays(1), 100, 100.0, "NavDagSyk", emptyList()), RSDag(søndag.plusDays(2), 100, 100.0, "NavDagSyk", emptyList()), ) - hentDager( - fom = søndag.minusDays(15), - tom = søndag.plusDays(2), - oppdragDto = - RSOppdrag( - utbetalingslinjer = - listOf( - RSUtbetalingslinje( - fom = søndag.plusDays(1), - tom = søndag.plusDays(2), - dagsats = 100, - totalbeløp = 200, - grad = 100.0, - stønadsdager = 2, - ), - ), - ), - utbetalingsdager = utbetalingsdager, - ).shouldContainExactly( - forventetArbeidgiverDagliste, - ) + hentDagerNy( fom = søndag.minusDays(15), tom = søndag.plusDays(2), @@ -581,27 +490,7 @@ class HentDagerTest { RSDag(søndag.plusDays(16), 100, 100.0, "NavDagSyk", emptyList()), RSDag(søndag.plusDays(17), 100, 100.0, "NavDagSyk", emptyList()), ) - hentDager( - fom = søndag.plusDays(0), - tom = søndag.plusDays(17), - oppdragDto = - RSOppdrag( - utbetalingslinjer = - listOf( - RSUtbetalingslinje( - fom = søndag.plusDays(1), - tom = søndag.plusDays(17), - dagsats = 100, - totalbeløp = 1300, - grad = 100.0, - stønadsdager = 13, - ), - ), - ), - utbetalingsdager = utbetalingsdager, - ).shouldContainExactly( - forventetArbeidgiverDagliste, - ) + hentDagerNy( fom = søndag.plusDays(0), tom = søndag.plusDays(17), @@ -803,26 +692,6 @@ class HentDagerTest { RSDag(søndag.plusDays(17), 100, 100.0, "NavDagSyk", emptyList()), ) - hentDager( - fom = søndag.plusDays(0), - tom = søndag.plusDays(17), - oppdragDto = - RSOppdrag( - utbetalingslinjer = - listOf( - RSUtbetalingslinje( - fom = søndag.plusDays(0), - tom = søndag.plusDays(3), - dagsats = 200, - totalbeløp = 600, - grad = 100.0, - stønadsdager = 4, - ), - ), - ), - utbetalingsdager = utbetalingsdager, - ).shouldContainExactly(forventetArbeidsgiverDagliste) - hentDagerNy( fom = søndag.plusDays(0), tom = søndag.plusDays(17), @@ -830,26 +699,6 @@ class HentDagerTest { erSykmeldt = false, ).shouldContainExactly(forventetArbeidsgiverDagliste) - hentDager( - fom = søndag.plusDays(0), - tom = søndag.plusDays(17), - oppdragDto = - RSOppdrag( - utbetalingslinjer = - listOf( - RSUtbetalingslinje( - fom = søndag.plusDays(4), - tom = søndag.plusDays(17), - dagsats = 100, - totalbeløp = 1000, - grad = 100.0, - stønadsdager = 14, - ), - ), - ), - utbetalingsdager = utbetalingsdager, - ).shouldContainExactly(forventetSykmeldtDagliste) - hentDagerNy( fom = søndag.plusDays(0), tom = søndag.plusDays(17), @@ -1160,26 +1009,6 @@ class HentDagerTest { RSDag(dato.plusDays(29), 0, 0.0, "NavHelgDag", emptyList()), ) - hentDager( - fom = dato.plusDays(0), - tom = dato.plusDays(29), - oppdragDto = - RSOppdrag( - utbetalingslinjer = - listOf( - RSUtbetalingslinje( - fom = dato.plusDays(2), - tom = dato.plusDays(2), - dagsats = 2308, - totalbeløp = 2308, - grad = 100.0, - stønadsdager = 1, - ), - ), - ), - utbetalingsdager = utbetalingsdager, - ).shouldContainExactly(forventetArbeidsgiverDagliste) - hentDagerNy( fom = dato.plusDays(0), tom = dato.plusDays(29), @@ -1187,42 +1016,6 @@ class HentDagerTest { erSykmeldt = false, ).shouldContainExactly(forventetArbeidsgiverDagliste) - hentDager( - fom = dato.plusDays(0), - tom = dato.plusDays(29), - oppdragDto = - RSOppdrag( - utbetalingslinjer = - listOf( - RSUtbetalingslinje( - fom = dato.plusDays(3), - tom = dato.plusDays(9), - dagsats = 2308, - totalbeløp = 11540, - grad = 100.0, - stønadsdager = 5, - ), - RSUtbetalingslinje( - fom = dato.plusDays(12), - tom = dato.plusDays(17), - dagsats = 2308, - totalbeløp = 9232, - grad = 100.0, - stønadsdager = 4, - ), - RSUtbetalingslinje( - fom = dato.plusDays(20), - tom = dato.plusDays(29), - dagsats = 2308, - totalbeløp = 13848, - grad = 100.0, - stønadsdager = 6, - ), - ), - ), - utbetalingsdager = utbetalingsdager, - ).shouldContainExactly(forventetSykmeldtDagliste) - hentDagerNy( fom = dato.plusDays(0), tom = dato.plusDays(29), @@ -1324,18 +1117,6 @@ class HentDagerTest { RSDag(dato.plusDays(8), 0, 0.0, "NavHelgDag", emptyList()), ) - val hentDager = - hentDager( - fom = dato.plusDays(0), - tom = dato.plusDays(8), - oppdragDto = - RSOppdrag( - utbetalingslinjer = listOf(), - ), - utbetalingsdager = utbetalingsdager, - ) - hentDager.shouldContainExactly(forventetSykmeldtDagliste) - hentDagerNy( fom = dato.plusDays(0), tom = dato.plusDays(8),