Skip to content

Commit

Permalink
♻️ Deduplisering av begrunnelse-inserts i OverstyringDao
Browse files Browse the repository at this point in the history
  • Loading branch information
havstein committed Oct 28, 2024
1 parent da4dd7e commit 74fc119
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 38 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
alter table begrunnelse alter column type set not null
Original file line number Diff line number Diff line change
Expand Up @@ -220,36 +220,20 @@ class OverstyringDao(queryRunner: QueryRunner) : OverstyringRepository, QueryRun
skjønnsfastsattSykepengegrunnlag: SkjønnsfastsattSykepengegrunnlagForDatabase,
saksbehandlerOid: UUID,
) {
val overstyringRef = insertIntoOverstyring(skjønnsfastsattSykepengegrunnlag, saksbehandlerOid)
// Den felles informasjonen ligger på alle arbeidsgiverne. Burde kanskje skilles ut i eget objekt
val enArbeidsgiver = skjønnsfastsattSykepengegrunnlag.arbeidsgivere.first()
val begrunnelseFritekstId =
asSQL(
"""
INSERT INTO begrunnelse (tekst, type, saksbehandler_ref) VALUES (:tekst, :type, :saksbehandlerRef)
""".trimIndent(),
"tekst" to enArbeidsgiver.begrunnelseFritekst,
"type" to "SKJØNNSFASTSATT_SYKEPENGEGRUNNLAG_FRITEKST",
"saksbehandlerRef" to saksbehandlerOid,
).updateAndReturnGeneratedKey()
val begrunnelseMalId =
asSQL(
"""
INSERT INTO begrunnelse (tekst, type, saksbehandler_ref) VALUES (:tekst, :type, :saksbehandlerRef)
""".trimIndent(),
"tekst" to enArbeidsgiver.begrunnelseMal,
"type" to "SKJØNNSFASTSATT_SYKEPENGEGRUNNLAG_MAL",
"saksbehandlerRef" to saksbehandlerOid,
).updateAndReturnGeneratedKey()
val begrunnelseKonklusjonId =
asSQL(
"""
INSERT INTO begrunnelse (tekst, type, saksbehandler_ref) VALUES (:tekst, :type, :saksbehandlerRef)
""".trimIndent(),
"tekst" to enArbeidsgiver.begrunnelseKonklusjon,
"type" to "SKJØNNSFASTSATT_SYKEPENGEGRUNNLAG_KONKLUSJON",
"saksbehandlerRef" to saksbehandlerOid,
).updateAndReturnGeneratedKey()

val (begrunnelseFritekstId, begrunnelseMalId, begrunnelseKonklusjonId) =
mapOf(
"SKJØNNSFASTSATT_SYKEPENGEGRUNNLAG_FRITEKST" to enArbeidsgiver.begrunnelseFritekst,
"SKJØNNSFASTSATT_SYKEPENGEGRUNNLAG_MAL" to enArbeidsgiver.begrunnelseMal,
"SKJØNNSFASTSATT_SYKEPENGEGRUNNLAG_KONKLUSJON" to enArbeidsgiver.begrunnelseKonklusjon,
).map { (type, tekst) ->
checkNotNull(tekst)
insertIntoBegrunnelse(type, tekst, saksbehandlerOid)
}

val overstyringRef = insertIntoOverstyring(skjønnsfastsattSykepengegrunnlag, saksbehandlerOid)
val skjønnsfastsettingSykepengegrunnlagId =
asSQL(
"""
Expand All @@ -260,18 +244,10 @@ class OverstyringDao(queryRunner: QueryRunner) : OverstyringRepository, QueryRun
"aarsak" to enArbeidsgiver.årsak,
"type" to enArbeidsgiver.type.name,
"subsumsjon" to
enArbeidsgiver.lovhjemmel?.let {
objectMapper.writeValueAsString(
enArbeidsgiver.lovhjemmel,
)
},
enArbeidsgiver.lovhjemmel?.let { objectMapper.writeValueAsString(enArbeidsgiver.lovhjemmel) },
"overstyringRef" to overstyringRef,
"initierendeVedtaksperiodeId" to
enArbeidsgiver.initierendeVedtaksperiodeId?.let {
UUID.fromString(
it,
)
},
enArbeidsgiver.initierendeVedtaksperiodeId?.let { UUID.fromString(it) },
"begrunnelseFritekstRef" to begrunnelseFritekstId,
"begrunnelseMalRef" to begrunnelseMalId,
"begrunnelseKonklusjonRef" to begrunnelseKonklusjonId,
Expand All @@ -292,6 +268,20 @@ class OverstyringDao(queryRunner: QueryRunner) : OverstyringRepository, QueryRun
}
}

private fun insertIntoBegrunnelse(
type: String,
tekst: String,
saksbehandlerOid: UUID,
) = asSQL(
"""
INSERT INTO begrunnelse (type, tekst, saksbehandler_ref)
VALUES (:type, :tekst, :saksbehandlerRef)
""".trimIndent(),
"type" to type,
"tekst" to tekst,
"saksbehandlerRef" to saksbehandlerOid,
).updateAndReturnGeneratedKey()

internal fun persisterMinimumSykdomsgrad(
minimumSykdomsgrad: MinimumSykdomsgradForDatabase,
saksbehandlerOid: UUID,
Expand Down

0 comments on commit 74fc119

Please sign in to comment.