Skip to content

Commit

Permalink
Validere aktivitetsgrad finnes før opprettelse av brev (#6238)
Browse files Browse the repository at this point in the history
* Validere aktivitetsgrad finnes før opprettelse av brev

* Ble lurt av intellji cache som sa testen var grønn
  • Loading branch information
sebassonav authored Nov 6, 2024
1 parent 0e3d0db commit c966083
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,9 @@ class AktivitetspliktOppgaveService(
val skalOppretteBrev = skalOppretteBrev(brevData)
if (skalOppretteBrev) {
val vurderingForOppgave = aktivitetspliktService.hentVurderingForOppgave(oppgaveId) ?: throw GenerellIkkeFunnetException()
val sisteAktivtetsgrad = vurderingForOppgave.aktivitet.maxBy { it.fom }
val sisteAktivtetsgrad =
vurderingForOppgave.aktivitet.maxByOrNull { it.fom }
?: throw ManglerAktivitetsgrad("Mangler aktivitetsgrad for oppgave: $oppgaveId")
val nasjonalEllerUtland = behandlingService.hentUtlandstilknytningForSak(oppgave.sakId) ?: throw GenerellIkkeFunnetException()
val brevParametreAktivitetsplikt10mnd =
BrevParametre.AktivitetspliktInformasjon10Mnd(
Expand Down Expand Up @@ -211,6 +213,13 @@ class ManglerBrevdata(
detail = msg,
)

class ManglerAktivitetsgrad(
msg: String,
) : UgyldigForespoerselException(
code = "MANGLER_AKITIVITETSGRAD",
detail = msg,
)

data class AktivitetspliktInformasjonBrevdataRequest(
val skalSendeBrev: Boolean,
val utbetaling: Boolean? = null,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,37 @@ class AktivitetspliktOppgaveServiceTest {
verify(exactly = 0) { aktivitetspliktService.hentVurderingForOppgave(oppgaveId) }
}

@Test
fun `Skal ikke opprette brev hvis man mangler aktivitetsgrad`() {
val simpleSaksbehandler = simpleSaksbehandler()
val oppgaveId = UUID.randomUUID()
val sakIdForOppgave = SakId(1L)
every { oppgaveService.hentOppgave(oppgaveId) } returns
mockk {
every { sakId } returns sakIdForOppgave
}
val kilde = Grunnlagsopplysning.Saksbehandler.create("ident")

val skalsendeBrev =
AktivitetspliktInformasjonBrevdata(
oppgaveId,
sakIdForOppgave,
null,
true,
redusertEtterInntekt = true,
utbetaling = true,
kilde = kilde,
)
every { aktivitetspliktBrevDao.hentBrevdata(oppgaveId) } returns skalsendeBrev

every { aktivitetspliktService.hentVurderingForOppgave(oppgaveId) } returns AktivitetspliktVurdering(emptyList(), emptyList())
assertThrows<ManglerAktivitetsgrad> {
service.opprettBrevHvisKraveneErOppfyltOgDetIkkeFinnes(oppgaveId, simpleSaksbehandler)
}
verify(exactly = 0) { aktivitetspliktBrevDao.lagreBrevId(any(), any()) }
verify(exactly = 1) { aktivitetspliktService.hentVurderingForOppgave(oppgaveId) }
}

@Test
fun `Skal ikke opprette brev da skal sende brev hvis mangler utbeatling`() {
val simpleSaksbehandler = simpleSaksbehandler()
Expand Down

0 comments on commit c966083

Please sign in to comment.