Skip to content

Commit

Permalink
Flytt modeller til amt-lib (#329)
Browse files Browse the repository at this point in the history
* Bruk tiltakstype fra amt-lib

* Bruk tiltakstype-dto fra amt-lib

* Bruk hendelse fra amt-lib
  • Loading branch information
tofoss authored Feb 12, 2025
1 parent f3a6378 commit 19bff8d
Show file tree
Hide file tree
Showing 38 changed files with 101 additions and 496 deletions.
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ val caffeineVersion = "3.2.0"
val mockkVersion = "1.13.16"
val nimbusVersion = "10.0.1"
val unleashVersion = "10.0.1"
val amtLibVersion = "1.2025.01.09_06.01-9f86501854f1"
val amtLibVersion = "1.2025.02.12_11.31-6ed3c891d00f"
val awaitilityVersion = "4.2.2"

dependencies {
Expand Down
36 changes: 17 additions & 19 deletions src/main/kotlin/no/nav/amt/deltaker/amtperson/dto/NavBrukerDto.kt
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package no.nav.amt.deltaker.amtperson.dto

import no.nav.amt.deltaker.deltaker.model.Innsatsgruppe
import no.nav.amt.deltaker.navbruker.model.Adresse
import no.nav.amt.deltaker.navbruker.model.Adressebeskyttelse
import no.nav.amt.deltaker.navbruker.model.NavBruker
import no.nav.amt.deltaker.navbruker.model.Oppfolgingsperiode
import no.nav.amt.lib.models.deltaker.Innsatsgruppe
import java.util.UUID

data class NavBrukerDto(
Expand All @@ -23,22 +23,20 @@ data class NavBrukerDto(
val oppfolgingsperioder: List<Oppfolgingsperiode> = emptyList(),
val innsatsgruppe: Innsatsgruppe? = null,
) {
fun tilNavBruker(): NavBruker {
return NavBruker(
personId = personId,
personident = personident,
fornavn = fornavn,
mellomnavn = mellomnavn,
etternavn = etternavn,
navVeilederId = navVeilederId,
navEnhetId = navEnhet?.id,
telefon = telefon,
epost = epost,
erSkjermet = erSkjermet,
adresse = adresse,
adressebeskyttelse = adressebeskyttelse,
oppfolgingsperioder = oppfolgingsperioder,
innsatsgruppe = innsatsgruppe,
)
}
fun tilNavBruker(): NavBruker = NavBruker(
personId = personId,
personident = personident,
fornavn = fornavn,
mellomnavn = mellomnavn,
etternavn = etternavn,
navVeilederId = navVeilederId,
navEnhetId = navEnhet?.id,
telefon = telefon,
epost = epost,
erSkjermet = erSkjermet,
adresse = adresse,
adressebeskyttelse = adressebeskyttelse,
oppfolgingsperioder = oppfolgingsperioder,
innsatsgruppe = innsatsgruppe,
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@ import no.nav.amt.deltaker.deltaker.forslag.ForslagService
import no.nav.amt.deltaker.deltaker.importert.fra.arena.ImportertFraArenaRepository
import no.nav.amt.deltaker.deltaker.kafka.DeltakerProducerService
import no.nav.amt.deltaker.deltaker.model.Deltaker
import no.nav.amt.deltaker.deltakerliste.tiltakstype.Tiltakstype
import no.nav.amt.deltaker.hendelse.HendelseService
import no.nav.amt.lib.models.arrangor.melding.EndringFraArrangor
import no.nav.amt.lib.models.deltaker.DeltakerStatus
import no.nav.amt.lib.models.deltakerliste.tiltakstype.Tiltakstype
import org.slf4j.LoggerFactory
import java.time.LocalDateTime
import java.time.ZonedDateTime
Expand Down
39 changes: 18 additions & 21 deletions src/main/kotlin/no/nav/amt/deltaker/deltaker/PameldingService.kt
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,19 @@ import no.nav.amt.deltaker.deltaker.api.model.KladdResponse
import no.nav.amt.deltaker.deltaker.api.model.UtkastRequest
import no.nav.amt.deltaker.deltaker.api.model.toKladdResponse
import no.nav.amt.deltaker.deltaker.model.Deltaker
import no.nav.amt.deltaker.deltaker.model.Innsatsgruppe
import no.nav.amt.deltaker.deltaker.model.Kilde
import no.nav.amt.deltaker.deltakerliste.Deltakerliste
import no.nav.amt.deltaker.deltakerliste.DeltakerlisteRepository
import no.nav.amt.deltaker.deltakerliste.tiltakstype.Tiltakstype
import no.nav.amt.deltaker.isoppfolgingstilfelle.IsOppfolgingstilfelleClient
import no.nav.amt.deltaker.navansatt.NavAnsattService
import no.nav.amt.deltaker.navansatt.navenhet.NavEnhetService
import no.nav.amt.deltaker.navbruker.NavBrukerService
import no.nav.amt.deltaker.navbruker.model.NavBruker
import no.nav.amt.lib.models.deltaker.Deltakelsesinnhold
import no.nav.amt.lib.models.deltaker.DeltakerStatus
import no.nav.amt.lib.models.deltaker.Innsatsgruppe
import no.nav.amt.lib.models.deltaker.Vedtak
import no.nav.amt.lib.models.deltakerliste.tiltakstype.Tiltakstype
import org.slf4j.LoggerFactory
import java.time.LocalDate
import java.time.LocalDateTime
Expand Down Expand Up @@ -146,8 +146,8 @@ class PameldingService(
log.info("Avbrutt utkast for deltaker med id $deltakerId")
}

private suspend fun harRiktigInnsatsgruppe(navBruker: NavBruker, deltakerliste: Deltakerliste): Boolean {
return if (navBruker.innsatsgruppe in deltakerliste.tiltakstype.innsatsgrupper) {
private suspend fun harRiktigInnsatsgruppe(navBruker: NavBruker, deltakerliste: Deltakerliste): Boolean =
if (navBruker.innsatsgruppe in deltakerliste.tiltakstype.innsatsgrupper) {
true
} else if (deltakerliste.tiltakstype.tiltakskode == Tiltakstype.Tiltakskode.ARBEIDSRETTET_REHABILITERING &&
navBruker.innsatsgruppe == Innsatsgruppe.SITUASJONSBESTEMT_INNSATS
Expand All @@ -157,30 +157,27 @@ class PameldingService(
} else {
false
}
}

private fun kanUpserteUtkast(opprinneligDeltakerStatus: DeltakerStatus) = opprinneligDeltakerStatus.type in listOf(
DeltakerStatus.Type.KLADD,
DeltakerStatus.Type.UTKAST_TIL_PAMELDING,
)

private fun getOppdatertStatus(opprinneligDeltaker: Deltaker, godkjentAvNav: Boolean): DeltakerStatus {
return if (godkjentAvNav) {
if (opprinneligDeltaker.startdato != null && opprinneligDeltaker.startdato.isBefore(LocalDate.now())) {
nyDeltakerStatus(DeltakerStatus.Type.DELTAR)
} else {
nyDeltakerStatus(DeltakerStatus.Type.VENTER_PA_OPPSTART)
}
private fun getOppdatertStatus(opprinneligDeltaker: Deltaker, godkjentAvNav: Boolean): DeltakerStatus = if (godkjentAvNav) {
if (opprinneligDeltaker.startdato != null && opprinneligDeltaker.startdato.isBefore(LocalDate.now())) {
nyDeltakerStatus(DeltakerStatus.Type.DELTAR)
} else {
when (opprinneligDeltaker.status.type) {
DeltakerStatus.Type.KLADD -> nyDeltakerStatus(DeltakerStatus.Type.UTKAST_TIL_PAMELDING)
DeltakerStatus.Type.UTKAST_TIL_PAMELDING -> opprinneligDeltaker.status
else -> throw IllegalArgumentException(
"Kan ikke upserte utkast for deltaker " +
"med status ${opprinneligDeltaker.status.type}," +
"status må være ${DeltakerStatus.Type.KLADD} eller ${DeltakerStatus.Type.UTKAST_TIL_PAMELDING}.",
)
}
nyDeltakerStatus(DeltakerStatus.Type.VENTER_PA_OPPSTART)
}
} else {
when (opprinneligDeltaker.status.type) {
DeltakerStatus.Type.KLADD -> nyDeltakerStatus(DeltakerStatus.Type.UTKAST_TIL_PAMELDING)
DeltakerStatus.Type.UTKAST_TIL_PAMELDING -> opprinneligDeltaker.status
else -> throw IllegalArgumentException(
"Kan ikke upserte utkast for deltaker " +
"med status ${opprinneligDeltaker.status.type}," +
"status må være ${DeltakerStatus.Type.KLADD} eller ${DeltakerStatus.Type.UTKAST_TIL_PAMELDING}.",
)
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ package no.nav.amt.deltaker.deltaker
import no.nav.amt.deltaker.deltaker.db.VedtakRepository
import no.nav.amt.deltaker.deltaker.model.Deltaker
import no.nav.amt.deltaker.hendelse.HendelseService
import no.nav.amt.deltaker.hendelse.model.HendelseType
import no.nav.amt.deltaker.navansatt.NavAnsatt
import no.nav.amt.deltaker.navansatt.navenhet.NavEnhet
import no.nav.amt.lib.models.deltaker.Vedtak
import no.nav.amt.lib.models.hendelse.HendelseType
import java.time.LocalDateTime
import java.util.UUID

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ data class DeltakelserResponse(
) {
data class Tiltakstype(
val navn: String,
val tiltakskode: no.nav.amt.deltaker.deltakerliste.tiltakstype.Tiltakstype.ArenaKode,
val tiltakskode: no.nav.amt.lib.models.deltakerliste.tiltakstype.Tiltakstype.ArenaKode,
)
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ import no.nav.amt.deltaker.deltaker.model.Deltaker
import no.nav.amt.deltaker.deltaker.model.getStatustekst
import no.nav.amt.deltaker.deltaker.model.getVisningsnavn
import no.nav.amt.deltaker.deltakerliste.Deltakerliste
import no.nav.amt.deltaker.deltakerliste.tiltakstype.Tiltakstype
import no.nav.amt.deltaker.utils.toTitleCase
import no.nav.amt.lib.models.deltaker.DeltakerStatus
import no.nav.amt.lib.models.deltakerliste.tiltakstype.Tiltakstype
import java.time.LocalDate

class DeltakelserResponseMapper(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@ import kotliquery.queryOf
import no.nav.amt.deltaker.application.plugins.objectMapper
import no.nav.amt.deltaker.deltaker.model.AVSLUTTENDE_STATUSER
import no.nav.amt.deltaker.deltaker.model.Deltaker
import no.nav.amt.deltaker.deltaker.model.Innsatsgruppe
import no.nav.amt.deltaker.deltaker.model.Kilde
import no.nav.amt.deltaker.deltakerliste.Deltakerliste
import no.nav.amt.deltaker.deltakerliste.DeltakerlisteRepository
import no.nav.amt.deltaker.deltakerliste.tiltakstype.Tiltakstype
import no.nav.amt.deltaker.navbruker.model.Adressebeskyttelse
import no.nav.amt.deltaker.navbruker.model.NavBruker
import no.nav.amt.deltaker.utils.toPGObject
import no.nav.amt.lib.models.deltaker.DeltakerStatus
import no.nav.amt.lib.models.deltaker.Innsatsgruppe
import no.nav.amt.lib.models.deltakerliste.tiltakstype.Tiltakstype
import no.nav.amt.lib.utils.database.Database
import java.time.LocalDate
import java.util.UUID
Expand Down

This file was deleted.

20 changes: 7 additions & 13 deletions src/main/kotlin/no/nav/amt/deltaker/deltakerliste/Deltakerliste.kt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package no.nav.amt.deltaker.deltakerliste

import no.nav.amt.deltaker.arrangor.Arrangor
import no.nav.amt.deltaker.deltakerliste.tiltakstype.Tiltakstype
import no.nav.amt.lib.models.deltakerliste.tiltakstype.Tiltakstype
import java.time.LocalDate
import java.util.UUID

Expand Down Expand Up @@ -39,20 +39,14 @@ data class Deltakerliste(
}
}

fun erAvlystEllerAvbrutt(): Boolean {
return status == Status.AVLYST || status == Status.AVBRUTT
}
fun erAvlystEllerAvbrutt(): Boolean = status == Status.AVLYST || status == Status.AVBRUTT

fun erAvsluttet(): Boolean {
return erAvlystEllerAvbrutt() || status == Status.AVSLUTTET
}
fun erAvsluttet(): Boolean = erAvlystEllerAvbrutt() || status == Status.AVSLUTTET

fun erKurs(): Boolean {
return if (oppstart != null) {
oppstart == Oppstartstype.FELLES
} else {
kursTiltak.contains(tiltakstype.arenaKode)
}
fun erKurs(): Boolean = if (oppstart != null) {
oppstart == Oppstartstype.FELLES
} else {
kursTiltak.contains(tiltakstype.arenaKode)
}

private val kursTiltak = setOf(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ data class DeltakerlisteDto(
val arenaKode: String,
)

fun toModel(arrangor: Arrangor, tiltakstype: no.nav.amt.deltaker.deltakerliste.tiltakstype.Tiltakstype) = Deltakerliste(
fun toModel(arrangor: Arrangor, tiltakstype: no.nav.amt.lib.models.deltakerliste.tiltakstype.Tiltakstype) = Deltakerliste(
id = this.id,
tiltakstype = tiltakstype,
navn = this.navn,
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ import kotliquery.queryOf
import no.nav.amt.deltaker.application.plugins.objectMapper
import no.nav.amt.deltaker.utils.prefixColumn
import no.nav.amt.deltaker.utils.toPGObject
import no.nav.amt.lib.models.deltakerliste.tiltakstype.DeltakerRegistreringInnhold
import no.nav.amt.lib.models.deltakerliste.tiltakstype.Tiltakstype
import no.nav.amt.lib.utils.database.Database
import org.slf4j.LoggerFactory

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import no.nav.amt.lib.kafka.ManagedKafkaConsumer
import no.nav.amt.lib.kafka.config.KafkaConfig
import no.nav.amt.lib.kafka.config.KafkaConfigImpl
import no.nav.amt.lib.kafka.config.LocalKafkaConfig
import no.nav.amt.lib.models.deltakerliste.tiltakstype.kafka.TiltakstypeDto
import org.apache.kafka.common.serialization.StringDeserializer
import org.apache.kafka.common.serialization.UUIDDeserializer
import org.slf4j.LoggerFactory
Expand Down Expand Up @@ -37,12 +38,6 @@ class TiltakstypeConsumer(
}

private fun handterTiltakstype(tiltakstype: TiltakstypeDto) {
val arenaKode = tiltakstype.arenaKode
if (arenaKode == null) {
log.warn("Mottok tiltakstype ${tiltakstype.tiltakskode} uten arenakode")
return
}

repository.upsert(tiltakstype.toModel(arenaKode))
repository.upsert(tiltakstype.toModel())
}
}
Original file line number Diff line number Diff line change
@@ -1,29 +1,6 @@
package no.nav.amt.deltaker.deltakerliste.tiltakstype.kafka

import no.nav.amt.deltaker.deltaker.model.Innsatsgruppe
import no.nav.amt.deltaker.deltakerliste.tiltakstype.DeltakerRegistreringInnhold
import no.nav.amt.deltaker.deltakerliste.tiltakstype.Tiltakstype
import java.util.UUID

data class TiltakstypeDto(
val id: UUID,
val navn: String,
val tiltakskode: Tiltakstype.Tiltakskode,
val arenaKode: String?,
val innsatsgrupper: Set<Innsatsgruppe>,
val deltakerRegistreringInnhold: DeltakerRegistreringInnhold?,
) {
fun toModel(arenaKode: String): Tiltakstype {
return Tiltakstype(
id = id,
navn = navn,
tiltakskode = tiltakskode,
arenaKode = Tiltakstype.ArenaKode.valueOf(arenaKode),
innsatsgrupper = innsatsgrupper,
innhold = deltakerRegistreringInnhold,
)
}
}
import no.nav.amt.lib.models.deltakerliste.tiltakstype.Tiltakstype

fun erStottet(arenaKode: String) = arenaKode in setOf(
"INDOPPFAG",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ package no.nav.amt.deltaker.hendelse

import no.nav.amt.deltaker.Environment
import no.nav.amt.deltaker.application.plugins.objectMapper
import no.nav.amt.deltaker.hendelse.model.Hendelse
import no.nav.amt.lib.kafka.Producer
import no.nav.amt.lib.models.hendelse.Hendelse

class HendelseProducer(
private val producer: Producer<String, String>,
Expand Down
Loading

0 comments on commit 19bff8d

Please sign in to comment.