@@ -17,6 +17,7 @@ import no.nav.utsjekk.kontrakter.iverksett.IverksettV2Dto
17
17
import no.nav.utsjekk.kontrakter.iverksett.StønadsdataTiltakspengerV2Dto
18
18
import no.nav.utsjekk.kontrakter.iverksett.UtbetalingV2Dto
19
19
import no.nav.utsjekk.kontrakter.iverksett.VedtaksdetaljerV2Dto
20
+ import java.time.LocalDate
20
21
import kotlin.collections.fold
21
22
22
23
/* *
@@ -25,12 +26,16 @@ import kotlin.collections.fold
25
26
fun Utbetalingsvedtak.toDTO (
26
27
forrigeUtbetalingJson : String? ,
27
28
): String {
28
- val forrigeUtbetaling = forrigeUtbetalingJson?.let { deserialize<IverksettV2Dto >(it) }
29
29
val vedtak: Utbetalingsvedtak = this
30
30
31
31
val utbetalingerStønad = meldekortbehandling.toUtbetalingDto(vedtak.brukerNavkontor, barnetillegg = false )
32
32
val utbetalingerBarnetillegg = meldekortbehandling.toUtbetalingDto(vedtak.brukerNavkontor, barnetillegg = true )
33
33
34
+ val nyeUtbetalinger = (utbetalingerStønad + utbetalingerBarnetillegg)
35
+
36
+ val tidligereUtbetalinger = forrigeUtbetalingJson?.let { deserialize<IverksettV2Dto >(it) }
37
+ ?.utbetalingerEtter(nyeUtbetalinger.maxOf { it.tilOgMedDato }) ? : emptyList()
38
+
34
39
return IverksettV2Dto (
35
40
sakId = vedtak.saksnummer.toString(),
36
41
// Brukes som dedupliseringsnøkkel av helved dersom iverksettingId er null.
@@ -43,7 +48,7 @@ fun Utbetalingsvedtak.toDTO(
43
48
vedtakstidspunkt = vedtak.opprettet,
44
49
saksbehandlerId = vedtak.saksbehandler,
45
50
beslutterId = vedtak.beslutter,
46
- utbetalinger = utbetalingerStønad + utbetalingerBarnetillegg ,
51
+ utbetalinger = tidligereUtbetalinger + nyeUtbetalinger ,
47
52
),
48
53
forrigeIverksetting =
49
54
vedtak.forrigeUtbetalingsvedtakId?.let { ForrigeIverksettingV2Dto (behandlingId = it.uuidPart()) },
@@ -52,6 +57,9 @@ fun Utbetalingsvedtak.toDTO(
52
57
}
53
58
}
54
59
60
+ private fun IverksettV2Dto.utbetalingerEtter (dato : LocalDate ) =
61
+ this .vedtak.utbetalinger.filter { dato > it.tilOgMedDato }
62
+
55
63
private fun MeldekortBehandling.MeldekortBehandlet.toUtbetalingDto (
56
64
brukersNavKontor : Navkontor ,
57
65
barnetillegg : Boolean ,
0 commit comments