Skip to content

Commit f13876e

Browse files
committed
Legg til utbetalingsstatus i routes
1 parent a0411dc commit f13876e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+215
-254
lines changed

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/meldekort/service/IverksettMeldekortService.kt

+9-7
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package no.nav.tiltakspenger.saksbehandling.meldekort.service
33
import arrow.core.Either
44
import arrow.core.getOrElse
55
import arrow.core.left
6-
import arrow.core.right
76
import io.github.oshai.kotlinlogging.KotlinLogging
87
import no.nav.tiltakspenger.libs.common.CorrelationId
98
import no.nav.tiltakspenger.libs.common.MeldekortId
@@ -22,6 +21,7 @@ import no.nav.tiltakspenger.saksbehandling.saksbehandling.domene.sak.Sak
2221
import no.nav.tiltakspenger.saksbehandling.saksbehandling.ports.StatistikkStønadRepo
2322
import no.nav.tiltakspenger.saksbehandling.saksbehandling.service.person.PersonService
2423
import no.nav.tiltakspenger.saksbehandling.saksbehandling.service.sak.SakService
24+
import no.nav.tiltakspenger.saksbehandling.utbetaling.domene.Utbetalingsvedtak
2525
import no.nav.tiltakspenger.saksbehandling.utbetaling.domene.opprettUtbetalingsvedtak
2626
import no.nav.tiltakspenger.saksbehandling.utbetaling.domene.tilStatistikk
2727
import no.nav.tiltakspenger.saksbehandling.utbetaling.ports.UtbetalingsvedtakRepo
@@ -42,7 +42,7 @@ class IverksettMeldekortService(
4242

4343
suspend fun iverksettMeldekort(
4444
kommando: IverksettMeldekortKommando,
45-
): Either<KanIkkeIverksetteMeldekort, Pair<Sak, MeldekortBehandling.MeldekortBehandlet>> {
45+
): Either<KanIkkeIverksetteMeldekort, Pair<Sak, Utbetalingsvedtak>> {
4646
if (!kommando.beslutter.erBeslutter()) {
4747
return KanIkkeIverksetteMeldekort.MåVæreBeslutter(kommando.beslutter.roller).left()
4848
}
@@ -68,22 +68,24 @@ class IverksettMeldekortService(
6868
"Kan ikke iverksette meldekortbehandling hvor meldeperioden (${meldeperiode.versjon}) ikke er siste versjon av meldeperioden i saken. sakId: $sakId, meldekortId: $meldekortId"
6969
}
7070

71-
return meldekortBehandling.iverksettMeldekort(kommando.beslutter, clock).onRight {
71+
return meldekortBehandling.iverksettMeldekort(kommando.beslutter, clock).map { iverksattMeldekortbehandling ->
7272
val eksisterendeUtbetalingsvedtak = sak.utbetalinger
73-
val utbetalingsvedtak = it.opprettUtbetalingsvedtak(
73+
val utbetalingsvedtak = iverksattMeldekortbehandling.opprettUtbetalingsvedtak(
7474
saksnummer = sak.saksnummer,
7575
fnr = sak.fnr,
76-
eksisterendeUtbetalingsvedtak.lastOrNull()?.id,
76+
forrigeUtbetalingsvedtak = eksisterendeUtbetalingsvedtak.lastOrNull()?.id,
7777
clock = clock,
7878
)
7979
val utbetalingsstatistikk = utbetalingsvedtak.tilStatistikk()
8080

8181
sessionFactory.withTransactionContext { tx ->
82-
meldekortBehandlingRepo.oppdater(it, tx)
82+
meldekortBehandlingRepo.oppdater(iverksattMeldekortbehandling, tx)
8383
utbetalingsvedtakRepo.lagre(utbetalingsvedtak, tx)
8484
statistikkStønadRepo.lagre(utbetalingsstatistikk, tx)
8585
}
86-
}.map { return Pair(sak.oppdaterMeldekortbehandling(it), it).right() }
86+
sak.oppdaterMeldekortbehandling(iverksattMeldekortbehandling)
87+
.leggTilUtbetalingsvedtak(utbetalingsvedtak) to utbetalingsvedtak
88+
}
8789
}
8890

8991
private suspend fun kastHvisIkkeTilgangTilPerson(

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/ApplicationCallEx.kt

+1
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ internal suspend inline fun ApplicationCall.withMeldeperiodeKjedeId(
8282
)
8383
}
8484

85+
@Suppress("unused")
8586
internal suspend inline fun ApplicationCall.withMeldeperiodeId(
8687
crossinline onRight: suspend (MeldeperiodeId) -> Unit,
8788
) {

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/StartBehandlingRoute.kt

-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import no.nav.tiltakspenger.saksbehandling.auditlog.AuditService
1414
import no.nav.tiltakspenger.saksbehandling.routes.behandling.dto.toDTO
1515
import no.nav.tiltakspenger.saksbehandling.routes.correlationId
1616
import no.nav.tiltakspenger.saksbehandling.routes.exceptionhandling.Standardfeil.ikkeTilgang
17-
import no.nav.tiltakspenger.saksbehandling.routes.sak.toDTO
1817
import no.nav.tiltakspenger.saksbehandling.routes.withSakId
1918
import no.nav.tiltakspenger.saksbehandling.routes.withSøknadId
2019
import no.nav.tiltakspenger.saksbehandling.saksbehandling.domene.behandling.KanIkkeOppretteBehandling

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/benk/BehandlingBenkRoutes.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import no.nav.tiltakspenger.saksbehandling.routes.behandling.dto.toDTO
1717
import no.nav.tiltakspenger.saksbehandling.routes.correlationId
1818
import no.nav.tiltakspenger.saksbehandling.routes.exceptionhandling.Standardfeil.ikkeTilgang
1919
import no.nav.tiltakspenger.saksbehandling.routes.exceptionhandling.Standardfeil.måVæreSaksbehandlerEllerBeslutter
20-
import no.nav.tiltakspenger.saksbehandling.routes.sak.toDTO
20+
import no.nav.tiltakspenger.saksbehandling.routes.sak.toSaksoversiktDTO
2121
import no.nav.tiltakspenger.saksbehandling.routes.withBehandlingId
2222
import no.nav.tiltakspenger.saksbehandling.saksbehandling.service.behandling.BehandlingService
2323
import no.nav.tiltakspenger.saksbehandling.saksbehandling.service.sak.KanIkkeHenteSaksoversikt
@@ -48,7 +48,7 @@ fun Route.behandlingBenkRoutes(
4848
}
4949
},
5050
{
51-
call.respond(status = HttpStatusCode.OK, it.toDTO())
51+
call.respond(status = HttpStatusCode.OK, it.toSaksoversiktDTO())
5252
},
5353
)
5454
}

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/beslutter/BehandlingBeslutterRoutes.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import no.nav.tiltakspenger.saksbehandling.routes.withBody
1818
import no.nav.tiltakspenger.saksbehandling.saksbehandling.domene.behandling.KanIkkeUnderkjenne
1919
import no.nav.tiltakspenger.saksbehandling.saksbehandling.service.behandling.BehandlingService
2020

21-
data class BegrunnelseDTO(
21+
private data class BegrunnelseDTO(
2222
val begrunnelse: String?,
2323
)
2424

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/dto/AttesteringDTO.kt

+3-3
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@ data class AttesteringDTO(
1111
val endretTidspunkt: LocalDateTime,
1212
)
1313

14-
internal fun List<Attestering>.toDTO(): List<AttesteringDTO> {
15-
return this.map { it.toDTO() }
14+
internal fun List<Attestering>.toAttesteringDTO(): List<AttesteringDTO> {
15+
return this.map { it.toAttesteringDTO() }
1616
}
1717

18-
internal fun Attestering.toDTO() = AttesteringDTO(
18+
internal fun Attestering.toAttesteringDTO() = AttesteringDTO(
1919
endretAv = this.beslutter,
2020
status = this.status,
2121
begrunnelse = this.begrunnelse?.value,

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/dto/AvbruttDTO.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ internal data class AvbruttDTO(
88
val begrunnelse: String,
99
)
1010

11-
internal fun Avbrutt.toDTO() = AvbruttDTO(
11+
internal fun Avbrutt.toAvbruttDTO() = AvbruttDTO(
1212
avbruttAv = saksbehandler,
1313
avbruttTidspunkt = tidspunkt.toString(),
1414
begrunnelse = begrunnelse,

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/dto/BarnetilleggDTO.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ internal data class BarnetilleggPeriodeDTO(
2424
val periode: PeriodeDTO,
2525
)
2626

27-
internal fun Barnetillegg.toDTO(): BarnetilleggDTO = BarnetilleggDTO(
27+
internal fun Barnetillegg.toBarnetilleggDTO(): BarnetilleggDTO = BarnetilleggDTO(
2828
perioder = periodisering.perioderMedVerdi.filter { it.verdi.value > 0 }.map {
2929
BarnetilleggPeriodeDTO(
3030
antallBarn = it.verdi.value,

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/dto/BehandlingDTO.kt

+6-6
Original file line numberDiff line numberDiff line change
@@ -32,20 +32,20 @@ internal fun Behandling.toDTO(): BehandlingDTO {
3232
return BehandlingDTO(
3333
id = this.id.toString(),
3434
type = behandlingstype,
35-
status = this.status.toDTO(),
35+
status = this.status.toBehandlingsstatusDTO(),
3636
sakId = this.sakId.toString(),
3737
saksnummer = this.saksnummer.toString(),
3838
saksbehandler = this.saksbehandler,
3939
beslutter = this.beslutter,
40-
attesteringer = this.attesteringer.toDTO(),
41-
saksopplysninger = this.saksopplysninger.toDTO(),
42-
søknad = this.søknad?.toDTO(),
40+
attesteringer = this.attesteringer.toAttesteringDTO(),
41+
saksopplysninger = this.saksopplysninger.toSaksopplysningerDTO(),
42+
søknad = this.søknad?.toSøknadDTO(),
4343
virkningsperiode = this.virkningsperiode?.toDTO(),
4444
saksopplysningsperiode = this.saksopplysningsperiode?.toDTO(),
4545
fritekstTilVedtaksbrev = this.fritekstTilVedtaksbrev?.verdi,
4646
begrunnelseVilkårsvurdering = this.begrunnelseVilkårsvurdering?.verdi,
47-
barnetillegg = this.barnetillegg?.toDTO(),
48-
avbrutt = this.avbrutt?.toDTO(),
47+
barnetillegg = this.barnetillegg?.toBarnetilleggDTO(),
48+
avbrutt = this.avbrutt?.toAvbruttDTO(),
4949
iverksattTidspunkt = this.iverksattTidspunkt?.toString(),
5050
valgteTiltaksdeltakelser = this.valgteTiltaksdeltakelser?.periodisering?.perioderMedVerdi?.map { it.toTiltaksdeltakelsePeriodeDTO() },
5151
valgtHjemmelHarIkkeRettighet = this.valgtHjemmelHarIkkeRettighet.toDTO(this.behandlingstype),

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/dto/BehandlingsstatusDTO.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ enum class BehandlingsstatusDTO {
1111
AVBRUTT,
1212
}
1313

14-
fun Behandlingsstatus.toDTO(): BehandlingsstatusDTO {
14+
fun Behandlingsstatus.toBehandlingsstatusDTO(): BehandlingsstatusDTO {
1515
return when (this) {
1616
Behandlingsstatus.KLAR_TIL_BEHANDLING -> BehandlingsstatusDTO.KLAR_TIL_BEHANDLING
1717
Behandlingsstatus.UNDER_BEHANDLING -> BehandlingsstatusDTO.UNDER_BEHANDLING

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/dto/BehandlingstypeDTO.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ enum class BehandlingstypeDTO {
88
REVURDERING,
99
}
1010

11-
fun BenkBehandlingstype.toDTO(): BehandlingstypeDTO =
11+
fun BenkBehandlingstype.toBehandlingstypeDTO(): BehandlingstypeDTO =
1212
when (this) {
1313
BenkBehandlingstype.FØRSTEGANGSBEHANDLING -> BehandlingstypeDTO.FØRSTEGANGSBEHANDLING
1414
BenkBehandlingstype.REVURDERING -> BehandlingstypeDTO.REVURDERING

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/dto/LovreferanseDTO.kt

-16
This file was deleted.

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/dto/SaksopplysningerDTO.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ data class SaksopplysningerDTO(
77
val tiltaksdeltagelse: List<TiltaksdeltagelseDTO>,
88
)
99

10-
fun Saksopplysninger.toDTO(): SaksopplysningerDTO {
10+
fun Saksopplysninger.toSaksopplysningerDTO(): SaksopplysningerDTO {
1111
return SaksopplysningerDTO(
1212
fødselsdato = this.fødselsdato.toString(),
1313
tiltaksdeltagelse = this.tiltaksdeltagelse.map { it.toDTO() },

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/dto/SøknadDTO.kt

+15-13
Original file line numberDiff line numberDiff line change
@@ -55,33 +55,35 @@ internal data class SøknadDTO(
5555
}
5656
}
5757

58-
internal fun Søknad.toDTO(): SøknadDTO {
58+
internal fun Søknad.toSøknadDTO(): SøknadDTO {
5959
return SøknadDTO(
6060
id = this.id.toString(),
6161
journalpostId = this.journalpostId,
6262
tiltak = this.tiltak.toDTO(),
6363
barnetillegg = this.barnetillegg.toDTO(),
6464
opprettet = this.opprettet,
6565
tidsstempelHosOss = this.tidsstempelHosOss,
66-
kvp = this.kvp.toDTO(),
67-
intro = this.intro.toDTO(),
68-
institusjon = this.institusjon.toDTO(),
66+
kvp = this.kvp.toPeriodeDTO(),
67+
intro = this.intro.toPeriodeDTO(),
68+
institusjon = this.institusjon.toPeriodeDTO(),
6969
etterlønn = this.etterlønn.toDTO(),
70-
gjenlevendepensjon = this.gjenlevendepensjon.toDTO(),
70+
gjenlevendepensjon = this.gjenlevendepensjon.toPeriodeDTO(),
7171
alderspensjon = this.alderspensjon.toDTO(),
72-
sykepenger = this.sykepenger.toDTO(),
73-
supplerendeStønadAlder = this.supplerendeStønadAlder.toDTO(),
74-
supplerendeStønadFlyktning = this.supplerendeStønadFlyktning.toDTO(),
75-
jobbsjansen = this.jobbsjansen.toDTO(),
76-
trygdOgPensjon = this.trygdOgPensjon.toDTO(),
72+
sykepenger = this.sykepenger.toPeriodeDTO(),
73+
supplerendeStønadAlder = this.supplerendeStønadAlder.toPeriodeDTO(),
74+
supplerendeStønadFlyktning = this.supplerendeStønadFlyktning.toPeriodeDTO(),
75+
jobbsjansen = this.jobbsjansen.toPeriodeDTO(),
76+
trygdOgPensjon = this.trygdOgPensjon.toPeriodeDTO(),
7777
antallVedlegg = this.vedlegg,
78-
avbrutt = avbrutt?.toDTO(),
78+
avbrutt = avbrutt?.toAvbruttDTO(),
7979
visVedlegg = this.barnetillegg.any { it is BarnetilleggFraSøknad.Manuell },
8080
)
8181
}
8282

8383
@JvmName("søknadToDTO")
84-
internal fun List<Søknad>.toDTO() = this.map { it.toDTO() }
84+
internal fun List<Søknad>.toSøknadDTO(): List<SøknadDTO> {
85+
return this.map { it.toSøknadDTO() }
86+
}
8587

8688
fun JaNeiSpm.toDTO(): Boolean {
8789
return when (this) {
@@ -97,7 +99,7 @@ fun FraOgMedDatoSpm.toDTO(): LocalDate? {
9799
}
98100
}
99101

100-
fun PeriodeSpm.toDTO(): PeriodeDTO? {
102+
fun PeriodeSpm.toPeriodeDTO(): PeriodeDTO? {
101103
return when (this) {
102104
is PeriodeSpm.Nei -> null
103105
is PeriodeSpm.Ja -> this.periode.toDTO()

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/personopplysninger/EnkelPersonDTO.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ data class EnkelPersonDTO(
1313
val skjermet: Boolean,
1414
)
1515

16-
fun EnkelPersonMedSkjerming.toDTO(): EnkelPersonDTO = EnkelPersonDTO(
16+
fun EnkelPersonMedSkjerming.toEnkelPersonDTO(): EnkelPersonDTO = EnkelPersonDTO(
1717
fnr = fnr.verdi,
1818
fornavn = fornavn,
1919
mellomnavn = mellomnavn,

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/personopplysninger/HentPersonopplysningerRoute.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ fun Route.hentPersonRoute(
3131
call.withSakId { sakId ->
3232
val correlationId = call.correlationId()
3333
sakService.hentEnkelPersonForSakId(sakId, saksbehandler, correlationId).map {
34-
it.toDTO()
34+
it.toEnkelPersonDTO()
3535
}.fold(
3636
{
3737
when (it) {

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/tiltakdeltagelse/TiltakDeltakerstatusDTO.kt

-32
This file was deleted.

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/behandling/tiltakdeltagelse/TiltakKildeDTO.kt

-6
This file was deleted.

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/dto/SaksbehandlerDTO.kt

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ internal data class SaksbehandlerDTO(
99
val epost: String,
1010
val roller: List<RolleDTO>,
1111
) {
12+
@Suppress("unused")
1213
enum class RolleDTO {
1314
SAKSBEHANDLER,
1415
FORTROLIG_ADRESSE,

app/src/main/kotlin/no/nav/tiltakspenger/saksbehandling/routes/exceptionhandling/Standardfeil.kt

-25
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,6 @@ object Standardfeil {
1414
"fant_ikke_sak",
1515
)
1616

17-
fun fantIkkeMeldekort(): ErrorJson = ErrorJson(
18-
"Fant ikke meldekort",
19-
"fant_ikke_meldekort",
20-
)
21-
22-
fun fantIkkeTiltak(): ErrorJson = ErrorJson(
23-
"Fant ikke igjen tiltaket det er søkt på",
24-
"fant_ikke_tiltak",
25-
)
26-
2717
fun måVæreBeslutter(): ErrorJson = ErrorJson(
2818
"Må ha beslutter-rolle.",
2919
"må_ha_beslutter_rolle",
@@ -34,21 +24,11 @@ object Standardfeil {
3424
"må_være_beslutter_eller_saksbehandler",
3525
)
3626

37-
fun saksopplysningsperiodeMåVæreLik(): ErrorJson = ErrorJson(
38-
"Perioden til saksopplysningen er forskjellig fra vurderingsperioden",
39-
"saksopplysningsperiode_må_være_lik",
40-
)
41-
4227
fun måVæreSaksbehandler(): ErrorJson = ErrorJson(
4328
"Må ha saksbehandler-rolle.",
4429
"må_ha_saksbehandler_rolle",
4530
)
4631

47-
fun støtterIkkeDelvisEllerAvslag(): ErrorJson = ErrorJson(
48-
"Vi støtter ikke delvis innvilgelse eller avslag.",
49-
"støtter_ikke_delvis_innvilgelse_eller_avslag",
50-
)
51-
5232
fun saksbehandlerOgBeslutterKanIkkeVæreLik(): ErrorJson = ErrorJson(
5333
"Beslutter kan ikke være den samme som saksbehandler.",
5434
"beslutter_og_saksbehandler_kan_ikke_være_lik",
@@ -59,11 +39,6 @@ object Standardfeil {
5939
"ikke_implementert",
6040
)
6141

62-
fun ikkeAutorisert(): ErrorJson = ErrorJson(
63-
"Kunne ikke autorisere bruker",
64-
"ikke_autorisert",
65-
)
66-
6742
fun serverfeil(): ErrorJson = ErrorJson(
6843
"Noe gikk galt på serversiden",
6944
"server_feil",

0 commit comments

Comments
 (0)