Skip to content

Commit a76984b

Browse files
committed
MeldeperiodeOmberegnet -> MeldeperiodeBeregnet
1 parent a674521 commit a76984b

File tree

9 files changed

+37
-37
lines changed

9 files changed

+37
-37
lines changed

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/clients/utbetaling/UtbetalingDTO.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ private fun MeldekortBehandling.MeldekortBehandlet.toUtbetalingDto(
108108
barnetillegg,
109109
this.kjedeId,
110110
).plus(
111-
this.beregning.meldeperioderOmberegnet.flatMap {
111+
this.beregning.meldeperioderBeregnet.flatMap {
112112
it.dager.toUtbetalingDto(
113113
brukersNavKontor,
114114
barnetillegg,

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/meldekort/domene/BeregnMeldekort.kt

+8-8
Original file line numberDiff line numberDiff line change
@@ -64,39 +64,39 @@ private data class BeregnMeldekort(
6464
}
6565
}
6666

67-
/** Returnerer beregnede dager fra kommando, og evt omberegninger for relevante meldeperioder på saken */
68-
fun beregn(): Pair<NonEmptyList<MeldeperiodeBeregningDag.Utfylt>, List<MeldekortBeregning.MeldeperiodeOmberegnet>> {
67+
/** Returnerer beregnede dager fra kommando, og evt nye beregninger for påfølgende meldeperioder på saken */
68+
fun beregn(): Pair<NonEmptyList<MeldeperiodeBeregningDag.Utfylt>, List<MeldekortBeregning.MeldeperiodeBeregnet>> {
6969
val oppdatertFraOgMed = kommando.dager.first().dag
7070
val oppdatertKjedeId = eksisterendeMeldekortBehandlinger
7171
.hentMeldekortBehandling(kommando.meldekortId)!!
7272
.kjedeId
7373

74-
val (eksisterendeMeldekortFør, eksisterendeMeldekortEtter) = eksisterendeMeldekortBehandlinger
74+
val (tidligereMeldekort, påfølgendeMeldekort) = eksisterendeMeldekortBehandlinger
7575
.sisteBehandledeMeldekortPerKjede
7676
.filterNot { it.kjedeId == oppdatertKjedeId }
7777
.partition { it.periode.fraOgMed < oppdatertFraOgMed }
7878

7979
/** Tidligere dager må tas høyde for i beregningen, men vil ikke påvirkes av eventuelle fremtidige korrigeringer */
80-
eksisterendeMeldekortFør.forEach { beregnEksisterendeDager(it.beregning.dager) }
80+
tidligereMeldekort.forEach { beregnEksisterendeDager(it.beregning.dager) }
8181

8282
val oppdaterteDagerBeregnet = beregnOppdaterteDager(kommando)
8383

84-
/** Dersom dette er en korrigering av en tidligere meldeperiode, kan denne påvirke senere meldeperioder */
85-
val meldeperioderOmberegnet = eksisterendeMeldekortEtter.mapNotNull { meldekort ->
84+
/** Dersom dette er en korrigering av en tidligere meldeperiode, kan denne påvirke påfølgende meldeperioder */
85+
val meldeperioderBeregnet = påfølgendeMeldekort.mapNotNull { meldekort ->
8686
val eksisterendeDager = meldekort.beregning.dager
8787
val oppdaterteDager = beregnEksisterendeDager(eksisterendeDager)
8888

8989
if (oppdaterteDager == eksisterendeDager) {
9090
return@mapNotNull null
9191
}
9292

93-
MeldekortBeregning.MeldeperiodeOmberegnet(
93+
MeldekortBeregning.MeldeperiodeBeregnet(
9494
kjedeId = meldekort.kjedeId,
9595
dager = oppdaterteDager,
9696
)
9797
}
9898

99-
return oppdaterteDagerBeregnet to meldeperioderOmberegnet
99+
return oppdaterteDagerBeregnet to meldeperioderBeregnet
100100
}
101101

102102
private fun beregnEksisterendeDager(dager: List<MeldeperiodeBeregningDag.Utfylt>): NonEmptyList<MeldeperiodeBeregningDag.Utfylt> =

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/meldekort/domene/MeldekortBeregning.kt

+10-10
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ sealed interface MeldekortBeregning : List<MeldeperiodeBeregningDag> {
2727
val dager: NonEmptyList<MeldeperiodeBeregningDag>
2828
val antallDagerMedDeltattEllerFravær: Int get() = dager.count { it.harDeltattEllerFravær }
2929

30-
data class MeldeperiodeOmberegnet(
30+
data class MeldeperiodeBeregnet(
3131
val kjedeId: MeldeperiodeKjedeId,
3232
val dager: NonEmptyList<MeldeperiodeBeregningDag.Utfylt>,
3333
) {
@@ -41,37 +41,37 @@ sealed interface MeldekortBeregning : List<MeldeperiodeBeregningDag> {
4141
override val maksDagerMedTiltakspengerForPeriode: Int,
4242
/**
4343
* Pdd omfatter "dager" både status-rapportering for dagene i det utfylte meldekortet, og beregningene som utledes derfra
44-
* "meldeperioderOmberegnet" omfatter beregning av påfølgende meldeperioder der deler av beregningen ble endret som følge av en korrigering
44+
* "meldeperioderBeregnet" omfatter beregning av påfølgende meldeperioder der deler av beregningen ble endret som følge av en korrigering
4545
* på dagene i meldekortet.
4646
*
4747
* TODO: Vi bør kanskje splitte rapporteringen og beregningen for meldekortet til separate modeller
4848
* */
4949
override val dager: NonEmptyList<MeldeperiodeBeregningDag.Utfylt>,
50-
val meldeperioderOmberegnet: List<MeldeperiodeOmberegnet>,
50+
val meldeperioderBeregnet: List<MeldeperiodeBeregnet>,
5151
) : MeldekortBeregning,
5252
List<MeldeperiodeBeregningDag> by dager {
5353

5454
override val meldekortId = dager.first().meldekortId
5555

5656
val fraOgMed: LocalDate get() = this.first().dato
57-
val tilOgMed = meldeperioderOmberegnet.lastOrNull()?.dager?.last()?.dato ?: this.last().dato
57+
val tilOgMed = meldeperioderBeregnet.lastOrNull()?.dager?.last()?.dato ?: this.last().dato
5858
override val periode = Periode(fraOgMed, tilOgMed)
5959

6060
init {
6161
dager.validerPeriode()
6262

63-
if (meldeperioderOmberegnet.isNotEmpty()) {
63+
if (meldeperioderBeregnet.isNotEmpty()) {
6464
val sisteDatoIMeldeperioden = dager.last().dato
65-
val førsteDatoOmberegnet = meldeperioderOmberegnet.first().dager.first().dato
65+
val førsteDatoOmberegnet = meldeperioderBeregnet.first().dager.first().dato
6666

6767
require(førsteDatoOmberegnet > sisteDatoIMeldeperioden) {
6868
"Omberegnede meldeperioder må komme etter den utfylte meldeperioden - $førsteDatoOmberegnet er før $sisteDatoIMeldeperioden"
6969
}
7070

7171
require(
72-
meldeperioderOmberegnet.zipWithNext().all { (a, b) -> a.dager.last().dato < b.dager.first().dato },
72+
meldeperioderBeregnet.zipWithNext().all { (a, b) -> a.dager.last().dato < b.dager.first().dato },
7373
) {
74-
"Omberegnede meldeperioder må være sortert og ikke ha overlapp - $meldeperioderOmberegnet"
74+
"Omberegnede meldeperioder må være sortert og ikke ha overlapp - $meldeperioderBeregnet"
7575
}
7676
}
7777

@@ -180,14 +180,14 @@ sealed interface MeldekortBeregning : List<MeldeperiodeBeregningDag> {
180180

181181
fun tilUtfyltMeldeperiode(
182182
dager: NonEmptyList<MeldeperiodeBeregningDag.Utfylt>,
183-
meldeperioderOmberegnet: List<MeldeperiodeOmberegnet>,
183+
meldeperioderBeregnet: List<MeldeperiodeBeregnet>,
184184
): Either<KanIkkeSendeMeldekortTilBeslutning, UtfyltMeldeperiode> {
185185
return validerAntallDager().map {
186186
UtfyltMeldeperiode(
187187
sakId = sakId,
188188
maksDagerMedTiltakspengerForPeriode = maksDagerMedTiltakspengerForPeriode,
189189
dager = dager,
190-
meldeperioderOmberegnet = meldeperioderOmberegnet,
190+
meldeperioderBeregnet = meldeperioderBeregnet,
191191
)
192192
}
193193
}

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/repository/meldekort/MeldekortBehandlingPostgresRepo.kt

+4-4
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ class MeldekortBehandlingPostgresRepo(
104104
"""
105105
update meldekortbehandling set
106106
meldekortdager = to_jsonb(:meldekortdager::jsonb),
107-
meldeperioder_omberegnet = to_jsonb(:meldeperioder_omberegnet::jsonb),
107+
meldeperioder_beregnet = to_jsonb(:meldeperioder_beregnet::jsonb),
108108
saksbehandler = :saksbehandler,
109109
beslutter = :beslutter,
110110
status = :status,
@@ -117,7 +117,7 @@ class MeldekortBehandlingPostgresRepo(
117117
""",
118118
"id" to meldekortBehandling.id.toString(),
119119
"meldekortdager" to meldekortBehandling.beregning.tilMeldekortdagerDbJson(),
120-
"meldeperioder_omberegnet" to meldekortBehandling.beregning.tilMeldeperioderOmberegnetDbJson(),
120+
"meldeperioder_beregnet" to meldekortBehandling.beregning.tilMeldeperioderBeregnetDbJson(),
121121
"saksbehandler" to meldekortBehandling.saksbehandler,
122122
"beslutter" to meldekortBehandling.beslutter,
123123
"status" to meldekortBehandling.status.toDb(),
@@ -218,8 +218,8 @@ class MeldekortBehandlingPostgresRepo(
218218
sakId = sakId,
219219
maksDagerMedTiltakspengerForPeriode = maksDagerMedTiltakspengerForPeriode,
220220
dager = meldekortdager.tilUtfylteMeldekortDager(id),
221-
meldeperioderOmberegnet = row.stringOrNull("meldeperioder_omberegnet")
222-
?.tilMeldeperioderOmberegnet(id) ?: emptyList(),
221+
meldeperioderBeregnet = row.stringOrNull("meldeperioder_beregnet")
222+
?.tilMeldeperioderBeregnet(id) ?: emptyList(),
223223
)
224224

225225
MeldekortBehandlet(

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/repository/meldekort/MeldekortdagDbJson.kt

+8-8
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ private data class MeldekortdagDbJson(
129129
}
130130
}
131131

132-
private data class MeldeperiodeOmberegnetDbJson(
132+
private data class MeldeperiodeBeregnetDbJson(
133133
val kjedeId: String,
134134
val dager: List<MeldekortdagDbJson>,
135135
)
@@ -140,11 +140,11 @@ internal fun MeldekortBeregning.tilMeldekortdagerDbJson(): String =
140140
is MeldekortBeregning.UtfyltMeldeperiode -> this.tilMeldekortdagerDbJson()
141141
}
142142

143-
internal fun MeldekortBeregning.tilMeldeperioderOmberegnetDbJson(): String? =
143+
internal fun MeldekortBeregning.tilMeldeperioderBeregnetDbJson(): String? =
144144
when (this) {
145145
is MeldekortBeregning.IkkeUtfyltMeldeperiode -> null
146146
is MeldekortBeregning.UtfyltMeldeperiode ->
147-
if (this.meldeperioderOmberegnet.isNotEmpty()) this.meldeperioderOmberegnet.toDbJson() else null
147+
if (this.meldeperioderBeregnet.isNotEmpty()) this.meldeperioderBeregnet.toDbJson() else null
148148
}
149149

150150
private fun MeldekortBeregning.IkkeUtfyltMeldeperiode.tilMeldekortdagerDbJson(): String =
@@ -171,8 +171,8 @@ private fun MeldekortBeregning.IkkeUtfyltMeldeperiode.tilMeldekortdagerDbJson():
171171
private fun MeldekortBeregning.UtfyltMeldeperiode.tilMeldekortdagerDbJson(): String =
172172
dager.toList().toDbJson().let { serialize(it) }
173173

174-
private fun List<MeldekortBeregning.MeldeperiodeOmberegnet>.toDbJson(): String = this.map { meldeperiode ->
175-
MeldeperiodeOmberegnetDbJson(
174+
private fun List<MeldekortBeregning.MeldeperiodeBeregnet>.toDbJson(): String = this.map { meldeperiode ->
175+
MeldeperiodeBeregnetDbJson(
176176
kjedeId = meldeperiode.kjedeId.toString(),
177177
dager = meldeperiode.dager.toDbJson(),
178178
)
@@ -219,10 +219,10 @@ internal fun String.tilIkkeUtfylteMeldekortDager(
219219
.map { it.toMeldekortdag(meldekortId) }
220220
.toNonEmptyListOrNull()!!
221221

222-
internal fun String.tilMeldeperioderOmberegnet(meldekortId: MeldekortId): List<MeldekortBeregning.MeldeperiodeOmberegnet> =
223-
deserializeList<MeldeperiodeOmberegnetDbJson>(this).map {
222+
internal fun String.tilMeldeperioderBeregnet(meldekortId: MeldekortId): List<MeldekortBeregning.MeldeperiodeBeregnet> =
223+
deserializeList<MeldeperiodeBeregnetDbJson>(this).map {
224224
val kjedeId = MeldeperiodeKjedeId(it.kjedeId)
225-
MeldekortBeregning.MeldeperiodeOmberegnet(
225+
MeldekortBeregning.MeldeperiodeBeregnet(
226226
kjedeId = kjedeId,
227227
dager = it.dager.map { dag ->
228228
dag.toMeldekortdag(meldekortId) as MeldeperiodeBeregningDag.Utfylt
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
ALTER TABLE meldekortbehandling
2+
ADD COLUMN IF NOT EXISTS meldeperioder_beregnet jsonb

app/src/main/resources/db/migration/V59__meldeperioder_omberegnet.sql

-2
This file was deleted.

app/src/test/kotlin/no/nav/tiltakspenger/saksbehandling/clients/utbetaling/UtbetalingDTOKorrigeringTest.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ internal class UtbetalingDTOKorrigeringTest {
3030
periode: Periode,
3131
opprettet: LocalDateTime,
3232
dager: List<MeldeperiodeBeregningDag.Utfylt>,
33-
meldeperioderOmberegnet: List<MeldekortBeregning.MeldeperiodeOmberegnet> = emptyList(),
33+
meldeperioderBeregnet: List<MeldekortBeregning.MeldeperiodeBeregnet> = emptyList(),
3434
) = ObjectMother.utbetalingsvedtak(
3535
fnr = fnr,
3636
saksnummer = saksnummer,
@@ -43,7 +43,7 @@ internal class UtbetalingDTOKorrigeringTest {
4343
startDato = periode.fraOgMed,
4444
meldekortId = meldekortId,
4545
dager = dager.toNonEmptyListOrNull()!!,
46-
meldeperioderOmberegnet = meldeperioderOmberegnet,
46+
meldeperioderBeregnet = meldeperioderBeregnet,
4747
),
4848
),
4949
)

app/src/test/kotlin/no/nav/tiltakspenger/saksbehandling/objectmothers/MeldekortMother.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -170,13 +170,13 @@ interface MeldekortMother : MotherOfAllMothers {
170170
tiltakstype,
171171
barnetilleggsPerioder,
172172
),
173-
meldeperioderOmberegnet: List<MeldekortBeregning.MeldeperiodeOmberegnet> = emptyList(),
173+
meldeperioderBeregnet: List<MeldekortBeregning.MeldeperiodeBeregnet> = emptyList(),
174174
): MeldekortBeregning.UtfyltMeldeperiode {
175175
return MeldekortBeregning.UtfyltMeldeperiode(
176176
sakId = sakId,
177177
maksDagerMedTiltakspengerForPeriode = maksDagerMedTiltakspengerForPeriode,
178178
dager = dager,
179-
meldeperioderOmberegnet = meldeperioderOmberegnet,
179+
meldeperioderBeregnet = meldeperioderBeregnet,
180180
)
181181
}
182182

0 commit comments

Comments
 (0)