From 09cfd4c4b1d74c6e0556c6de1e896ad561b2b4cd Mon Sep 17 00:00:00 2001 From: Henrik Gundersen Date: Fri, 13 Dec 2024 14:22:31 +0100 Subject: [PATCH] Legger til sjekk for trygdetid i backend --- .../grunnlag/BeregningsGrunnlagService.kt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/apps/etterlatte-beregning/src/main/kotlin/beregning/grunnlag/BeregningsGrunnlagService.kt b/apps/etterlatte-beregning/src/main/kotlin/beregning/grunnlag/BeregningsGrunnlagService.kt index ffda286858a..68195cf5828 100644 --- a/apps/etterlatte-beregning/src/main/kotlin/beregning/grunnlag/BeregningsGrunnlagService.kt +++ b/apps/etterlatte-beregning/src/main/kotlin/beregning/grunnlag/BeregningsGrunnlagService.kt @@ -329,6 +329,13 @@ class BeregningsGrunnlagService( beregningsGrunnlagRepository.lagreOverstyrBeregningGrunnlagForBehandling( behandlingId, data.perioder.map { + val gyldigTrygdetid = it.data.trygdetid in 0..40 + if (!gyldigTrygdetid) { + throw OverstyrtBeregningUgyldigTrygdetid(behandlingId) + } + + // TODO her burde det sikkert være mer validering av hva saksbehandler kan sende inn + OverstyrBeregningGrunnlagDao( id = UUID.randomUUID(), behandlingId = behandlingId, @@ -415,6 +422,14 @@ class BeregningsGrunnlagService( } } +class OverstyrtBeregningUgyldigTrygdetid( + behandlingId: UUID, +) : UgyldigForespoerselException( + code = "OVERSTYRT_BEREGNING_UGYLDIG_TRYGDETID", + detail = "Anvendt trygdetid må være mellom 0 og 40 år", + meta = mapOf("behandlingId" to behandlingId), + ) + class OverstyrtBeregningFeilBehandlingStatusException( behandlingId: UUID, behandlingStatus: BehandlingStatus,