Skip to content

Commit

Permalink
Bytte ut require og requireNotNull med krev(IkkeNull)
Browse files Browse the repository at this point in the history
  • Loading branch information
Watercolours committed Dec 19, 2024
1 parent 33e87fe commit 38951c3
Show file tree
Hide file tree
Showing 61 changed files with 353 additions and 172 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ import io.ktor.server.routing.route
import no.nav.etterlatte.AuthorizationPlugin
import no.nav.etterlatte.MaskinportenScopeAuthorizationPlugin
import no.nav.etterlatte.libs.common.behandling.SakType
import no.nav.etterlatte.libs.common.feilhaandtering.krevIkkeNull
import no.nav.etterlatte.libs.common.person.Folkeregisteridentifikator
import no.nav.etterlatte.libs.ktor.route.FoedselsnummerDTO
import no.nav.etterlatte.libs.ktor.route.dato
Expand All @@ -32,7 +33,10 @@ fun Route.samordningVedtakRoute(
}

get("{vedtakId}") {
val vedtakId = requireNotNull(call.parameters["vedtakId"]).toLong()
val vedtakId =
krevIkkeNull(call.parameters["vedtakId"]?.toLong()) {
"VedtakId mangler - dette er mest sannsynlig en systemfeil"
}

val tpnummer =
call.request.headers["tpnr"]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ import no.nav.etterlatte.libs.database.setSakId
import no.nav.etterlatte.libs.database.singleOrNull
import no.nav.etterlatte.libs.database.toList
import java.sql.Date
import java.sql.PreparedStatement
import java.sql.ResultSet
import java.time.LocalDateTime
import java.time.YearMonth
Expand Down Expand Up @@ -421,7 +420,10 @@ class BehandlingDao(
statement.setObject(6, behandlingId)
statement.setString(7, viderefoertOpphoer.vilkaar?.name)
statement.setBoolean(8, viderefoertOpphoer.aktiv)
statement.updateSuccessful()

krev(statement.executeUpdate() == 1) {
"Feil ved lagring av videreført opphør"
}
}
}
}
Expand All @@ -444,7 +446,10 @@ class BehandlingDao(
)
statement.setJsonb(1, kilde)
statement.setObject(2, behandlingId)
statement.updateSuccessful()

krev(statement.executeUpdate() == 1) {
"Feil ved fjerning av videreført opphør"
}
}
}
}
Expand Down Expand Up @@ -562,6 +567,3 @@ private fun ResultSet.toTidligereFamiliepleier(): TidligereFamiliepleier? =

val objectMapper: ObjectMapper =
jacksonObjectMapper().registerModule(JavaTimeModule()).disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS)

// TODO: fjerne denne bruke, blir veldig dårlig feilmelding
fun PreparedStatement.updateSuccessful() = require(this.executeUpdate() == 1)
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ import no.nav.etterlatte.libs.common.behandling.SakType
import no.nav.etterlatte.libs.common.feilhaandtering.GenerellIkkeFunnetException
import no.nav.etterlatte.libs.common.feilhaandtering.InternfeilException
import no.nav.etterlatte.libs.common.feilhaandtering.UgyldigForespoerselException
import no.nav.etterlatte.libs.common.feilhaandtering.krevIkkeNull
import no.nav.etterlatte.libs.common.grunnlag.Grunnlagsopplysning
import no.nav.etterlatte.libs.common.grunnlag.NyeSaksopplysninger
import no.nav.etterlatte.libs.common.grunnlag.lagOpplysning
Expand Down Expand Up @@ -169,7 +170,10 @@ class BehandlingFactory(

if (request.kilde in listOf(Vedtaksloesning.PESYS, Vedtaksloesning.GJENOPPRETTA)) {
coroutineScope {
val pesysId = requireNotNull(request.pesysId) { "Manuell migrering må ha pesysid til sak som migreres" }
val pesysId =
krevIkkeNull(request.pesysId) {
"Manuell migrering må ha pesysid til sak som migreres"
}
migreringKlient.opprettManuellMigrering(behandlingId = behandling.id, pesysId = pesysId, sakId = sak.id)
}
}
Expand Down Expand Up @@ -434,7 +438,11 @@ class BehandlingFactory(
}

internal fun hentDataForOpprettBehandling(sakId: SakId): DataHentetForOpprettBehandling {
val sak = requireNotNull(sakService.finnSak(sakId)) { "Fant ingen sak med id=$sakId!" }
val sak =
krevIkkeNull(sakService.finnSak(sakId)) {
"Fant ingen sak med id=$sakId!"
}

val harBehandlingerForSak =
behandlingDao.hentBehandlingerForSak(sak.id)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ import no.nav.etterlatte.libs.common.feilhaandtering.IkkeFunnetException
import no.nav.etterlatte.libs.common.feilhaandtering.InternfeilException
import no.nav.etterlatte.libs.common.feilhaandtering.UgyldigForespoerselException
import no.nav.etterlatte.libs.common.feilhaandtering.krev
import no.nav.etterlatte.libs.common.feilhaandtering.krevIkkeNull
import no.nav.etterlatte.libs.common.grunnlag.Grunnlagsopplysning
import no.nav.etterlatte.libs.common.grunnlag.NyeSaksopplysninger
import no.nav.etterlatte.libs.common.grunnlag.lagOpplysning
Expand Down Expand Up @@ -443,7 +444,9 @@ internal class BehandlingServiceImpl(
overstyr: Boolean,
): Boolean {
val behandling =
requireNotNull(hentBehandling(behandlingId)) { "Fant ikke behandling $behandlingId" }
krevIkkeNull(hentBehandling(behandlingId)) {
"Fant ikke behandling $behandlingId"
}

if (request.dato.year !in (0..9999) || request.begrunnelse == null) {
return false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import no.nav.etterlatte.libs.common.aktivitetsplikt.AktivitetDto
import no.nav.etterlatte.libs.common.aktivitetsplikt.AktivitetType
import no.nav.etterlatte.libs.common.behandling.AktivitetspliktOppfolging
import no.nav.etterlatte.libs.common.behandling.OpprettAktivitetspliktOppfolging
import no.nav.etterlatte.libs.common.feilhaandtering.krevIkkeNull
import no.nav.etterlatte.libs.common.grunnlag.Grunnlagsopplysning
import no.nav.etterlatte.libs.common.sak.SakId
import no.nav.etterlatte.libs.common.tidspunkt.getTidspunkt
Expand Down Expand Up @@ -179,7 +180,7 @@ class AktivitetspliktDao(
stmt.setDate(3, aktivitet.tom?.let { tom -> Date.valueOf(tom) })
stmt.setString(4, kilde.toJson())
stmt.setString(5, aktivitet.beskrivelse)
stmt.setObject(6, requireNotNull(aktivitet.id))
stmt.setObject(6, krevIkkeNull(aktivitet.id) { "Aktivitet id mangler" })
stmt.setObject(7, behandlingId)

stmt.executeUpdate()
Expand All @@ -205,7 +206,7 @@ class AktivitetspliktDao(
stmt.setDate(3, aktivitet.tom?.let { tom -> Date.valueOf(tom) })
stmt.setString(4, kilde.toJson())
stmt.setString(5, aktivitet.beskrivelse)
stmt.setObject(6, requireNotNull(aktivitet.id))
stmt.setObject(6, krevIkkeNull(aktivitet.id) { "Aktivitet id mangler" })
stmt.setSakId(7, sakId)

stmt.executeUpdate()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ import no.nav.etterlatte.libs.common.feilhaandtering.IkkeFunnetException
import no.nav.etterlatte.libs.common.feilhaandtering.InternfeilException
import no.nav.etterlatte.libs.common.feilhaandtering.UgyldigForespoerselException
import no.nav.etterlatte.libs.common.feilhaandtering.krev
import no.nav.etterlatte.libs.common.feilhaandtering.krevIkkeNull
import no.nav.etterlatte.libs.common.grunnlag.Grunnlagsopplysning
import no.nav.etterlatte.libs.common.grunnlag.hentDoedsdato
import no.nav.etterlatte.libs.common.oppgave.OppgaveIntern
Expand Down Expand Up @@ -524,12 +525,12 @@ class AktivitetspliktService(
bruker: BrukerTokenInfo,
): OpprettRevurderingForAktivitetspliktResponse {
val forrigeBehandling =
requireNotNull(behandlingService.hentSisteIverksatte(request.sakId)) {
krevIkkeNull(behandlingService.hentSisteIverksatte(request.sakId)) {
"Fant ikke forrige behandling i sak ${request.sakId}sakId"
}
val persongalleri =
runBlocking {
requireNotNull(
krevIkkeNull(
grunnlagKlient
.hentPersongalleri(
forrigeBehandling.id,
Expand Down Expand Up @@ -793,7 +794,7 @@ fun hentVurderingForSakHelper(
return AktivitetspliktVurdering(aktivitetForBehandling, unntak)
} else {
val oppgaveId =
requireNotNull(foersteUnntak.oppgaveId) {
krevIkkeNull(foersteUnntak.oppgaveId) {
"Har et unntak med id=${foersteUnntak.id} i sak=${foersteUnntak.sakId} som ikke " +
"er koblet på hverken sak eller oppgave."
}
Expand All @@ -808,7 +809,7 @@ fun hentVurderingForSakHelper(
return AktivitetspliktVurdering(aktivitet, unntakForBehandling)
} else {
val oppgaveId =
requireNotNull(foersteVurdering.oppgaveId) {
krevIkkeNull(foersteVurdering.oppgaveId) {
"Har en vurdering med id=${foersteVurdering.id} i sak=${foersteVurdering.sakId} som ikke " +
"er koblet på hverken sak eller oppgave."
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import no.nav.etterlatte.libs.common.aktivitetsplikt.AktivitetspliktAktivitetsgr
import no.nav.etterlatte.libs.common.aktivitetsplikt.VurdertAktivitetsgrad
import no.nav.etterlatte.libs.common.feilhaandtering.InternfeilException
import no.nav.etterlatte.libs.common.feilhaandtering.krev
import no.nav.etterlatte.libs.common.feilhaandtering.krevIkkeNull
import no.nav.etterlatte.libs.common.grunnlag.Grunnlagsopplysning
import no.nav.etterlatte.libs.common.sak.SakId
import no.nav.etterlatte.libs.database.setSakId
Expand Down Expand Up @@ -146,7 +147,7 @@ class AktivitetspliktAktivitetsgradDao(
if (behandlingId != null) {
hentAktivitetsgradForBehandling(UUID.fromString(behandlingId))
} else {
requireNotNull(oppgaveId) {
krevIkkeNull(oppgaveId) {
"Har en vurdering av aktivitet som ikke er knyttet til en oppgave eller en behandling"
}
hentAktivitetsgradForOppgave(UUID.fromString(oppgaveId))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import no.nav.etterlatte.common.ConnectionAutoclosing
import no.nav.etterlatte.libs.common.aktivitetsplikt.UnntakFraAktivitetDto
import no.nav.etterlatte.libs.common.aktivitetsplikt.UnntakFraAktivitetsplikt
import no.nav.etterlatte.libs.common.feilhaandtering.InternfeilException
import no.nav.etterlatte.libs.common.feilhaandtering.krevIkkeNull
import no.nav.etterlatte.libs.common.grunnlag.Grunnlagsopplysning
import no.nav.etterlatte.libs.common.sak.SakId
import no.nav.etterlatte.libs.database.setSakId
Expand Down Expand Up @@ -90,7 +91,7 @@ class AktivitetspliktUnntakDao(
stmt.setDate(3, unntak.tom?.let { tom -> Date.valueOf(tom) })
stmt.setString(4, kilde.toJson())
stmt.setString(5, unntak.beskrivelse)
stmt.setObject(6, requireNotNull(unntak.id))
stmt.setObject(6, krevIkkeNull(unntak.id) { "" })
stmt.setObject(7, behandlingId)

stmt.executeUpdate()
Expand Down Expand Up @@ -176,7 +177,7 @@ class AktivitetspliktUnntakDao(
if (behandlingId != null) {
hentUnntakForBehandling(UUID.fromString(behandlingId))
} else {
requireNotNull(oppgaveId) {
krevIkkeNull(oppgaveId) {
"Har en vurdering av aktivitet som ikke er knyttet til en oppgave eller en behandling"
}
hentUnntakForOppgave(UUID.fromString(oppgaveId))
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package no.nav.etterlatte.behandling.hendelse

import no.nav.etterlatte.behandling.domain.Behandling
import no.nav.etterlatte.libs.common.feilhaandtering.krevIkkeNull
import no.nav.etterlatte.libs.common.tidspunkt.Tidspunkt

fun registrerVedtakHendelseFelles(
Expand All @@ -14,11 +15,11 @@ fun registrerVedtakHendelseFelles(
hendelser: HendelseDao,
) {
if (hendelse.kreverSaksbehandler()) {
requireNotNullWithMessage(saksbehandler, "Vedtakshendelsen krever en saksbehandler")
krevIkkeNull(saksbehandler) { "Vedtakshendelsen krever en saksbehandler" }
}
if (hendelse.erUnderkjent()) {
requireNotNullWithMessage(kommentar, "Underkjent vedtak må ha en kommentar")
requireNotNullWithMessage(begrunnelse, "Underkjent vedtak må ha en begrunnelse")
krevIkkeNull(kommentar) { "Underkjent vedtak må ha en kommentar" }
krevIkkeNull(begrunnelse) { "Underkjent vedtak må ha en begrunnelse" }
}

hendelser.vedtakHendelse(
Expand All @@ -33,17 +34,6 @@ fun registrerVedtakHendelseFelles(
)
}

fun requireNotNullWithMessage(
value: Any?,
message: String,
): Any {
if (value == null) {
throw NullPointerException(message)
} else {
return value
}
}

private fun HendelseType.kreverSaksbehandler() = this in listOf(HendelseType.FATTET, HendelseType.ATTESTERT, HendelseType.UNDERKJENT)

private fun HendelseType.erUnderkjent() = this == HendelseType.UNDERKJENT
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import no.nav.etterlatte.libs.common.behandling.Klage
import no.nav.etterlatte.libs.common.behandling.KlageOversendelsebrev
import no.nav.etterlatte.libs.common.behandling.KlageUtfallMedData
import no.nav.etterlatte.libs.common.behandling.KlageVedtaksbrev
import no.nav.etterlatte.libs.common.feilhaandtering.krevIkkeNull
import no.nav.etterlatte.libs.common.sak.SakId
import no.nav.etterlatte.libs.common.tidspunkt.Tidspunkt
import no.nav.etterlatte.libs.ktor.token.BrukerTokenInfo
Expand Down Expand Up @@ -144,7 +145,7 @@ class KlageBrevService(
"Brev med id=$brevId har status ${eksisterendeInnstillingsbrev.status} og er allerede " +
"journalført på journalpostId=${eksisterendeInnstillingsbrev.mottakere.first().journalpostId}",
)
requireNotNull(eksisterendeInnstillingsbrev.mottakere.first().journalpostId) {
krevIkkeNull(eksisterendeInnstillingsbrev.mottakere.first().journalpostId) {
"Har et brev med id=$brevId med status=${eksisterendeInnstillingsbrev.status} som mangler journalpostId"
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import io.ktor.server.routing.get
import io.ktor.server.routing.post
import io.ktor.server.routing.put
import io.ktor.server.routing.route
import no.nav.etterlatte.libs.common.feilhaandtering.krevIkkeNull
import no.nav.etterlatte.libs.ktor.route.BEHANDLINGID_CALL_PARAMETER
import no.nav.etterlatte.libs.ktor.route.behandlingId
import no.nav.etterlatte.tilgangsstyring.kunSaksbehandlerMedSkrivetilgang
Expand Down Expand Up @@ -38,7 +39,11 @@ internal fun Route.sjekklisteRoute(sjekklisteService: SjekklisteService) {

post("/item/{sjekklisteItemId}") {
kunSaksbehandlerMedSkrivetilgang {
val sjekklisteItemId = requireNotNull(call.parameters["sjekklisteItemId"]).toLong()
val sjekklisteItemId =
krevIkkeNull(call.parameters["sjekklisteItemId"]?.toLong()) {
"SjekklistepunktID mangler – dette er mest sannsynlig en systemfeil"
}

val oppdatering = call.receive<OppdaterSjekklisteItem>()

val result =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import no.nav.etterlatte.libs.common.behandling.Revurderingaarsak
import no.nav.etterlatte.libs.common.behandling.SakType
import no.nav.etterlatte.libs.common.feilhaandtering.IkkeTillattException
import no.nav.etterlatte.libs.common.feilhaandtering.UgyldigForespoerselException
import no.nav.etterlatte.libs.common.feilhaandtering.krevIkkeNull
import no.nav.etterlatte.oppgave.OppgaveService
import java.util.UUID

Expand All @@ -28,7 +29,9 @@ class SjekklisteService(
fun opprettSjekkliste(behandlingId: UUID): Sjekkliste {
val behandling =
inTransaction {
requireNotNull(behandlingService.hentBehandling(behandlingId))
krevIkkeNull(behandlingService.hentBehandling(behandlingId)) {
"Fant ikke behandling – kan ikke opprette sjekkliste"
}
}

if (!kanEndres(behandling)) {
Expand Down Expand Up @@ -74,15 +77,20 @@ class SjekklisteService(
dao.opprettSjekkliste(behandling.id, sjekklisteItems)
}

return requireNotNull(hentSjekkliste(behandling.id))
return krevIkkeNull(hentSjekkliste(behandling.id)) {
"Kunne ikke hente ut sjekkliste som nettopp ble opprettet"
}
}

fun oppdaterSjekkliste(
behandlingId: UUID,
oppdaterSjekkliste: OppdatertSjekkliste,
): Sjekkliste =
inTransaction {
val behandling = requireNotNull(behandlingService.hentBehandling(behandlingId))
val behandling =
krevIkkeNull(behandlingService.hentBehandling(behandlingId)) {
"Fant ikke behandling – kan ikke oppdatere sjekkliste"
}

if (!(kanEndres(behandling) && behandling.oppgaveUnderArbeidErTildeltGjeldendeSaksbehandler())) {
throw SjekklisteIkkeTillattException(
Expand All @@ -101,7 +109,10 @@ class SjekklisteService(
oppdatering: OppdaterSjekklisteItem,
): SjekklisteItem =
inTransaction {
val behandling = requireNotNull(behandlingService.hentBehandling(behandlingId))
val behandling =
krevIkkeNull(behandlingService.hentBehandling(behandlingId)) {
"Fant ikke behandling - kan ikke oppdatere sjekklistepunkt"
}

if (!(kanEndres(behandling) && behandling.oppgaveUnderArbeidErTildeltGjeldendeSaksbehandler())) {
throw SjekklisteIkkeTillattException(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ import io.ktor.server.routing.post
import io.ktor.server.routing.put
import io.ktor.server.routing.route
import no.nav.etterlatte.libs.common.feilhaandtering.IkkeFunnetException
import no.nav.etterlatte.libs.common.sak.SakId
import no.nav.etterlatte.libs.common.tilbakekreving.Kravgrunnlag
import no.nav.etterlatte.libs.common.tilbakekreving.TilbakekrevingPeriode
import no.nav.etterlatte.libs.common.tilbakekreving.TilbakekrevingVurdering
Expand Down Expand Up @@ -108,7 +107,6 @@ internal fun Route.tilbakekrevingRoutes(service: TilbakekrevingService) {
put("/oppgave-status") {
kunSystembruker {
medBody<OppgaveStatusRequest> {
val sakId = requireNotNull(call.parameters["sakId"]).toLong().let { SakId(it) }
service.endreTilbakekrevingOppgaveStatus(sakId, it.paaVent)
call.respond(HttpStatusCode.OK)
}
Expand All @@ -118,7 +116,6 @@ internal fun Route.tilbakekrevingRoutes(service: TilbakekrevingService) {
put("/avbryt") {
kunSystembruker {
medBody<AvbrytRequest> {
val sakId = requireNotNull(call.parameters["sakId"]).toLong().let { SakId(it) }
service.avbrytTilbakekreving(sakId, it.merknad)
call.respond(HttpStatusCode.OK)
}
Expand Down
Loading

0 comments on commit 38951c3

Please sign in to comment.