Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IS-2679: Start consumer manglende medvirkning #432

Merged
merged 1 commit into from
Sep 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,10 @@ data class ManglendeMedvirkningDTO(
val uuid: UUID,
val personident: String,
val createdAt: LocalDateTime,
val type: ManglendeMedvirkningVurderingType,
val vurderingType: ManglendeMedvirkningVurderingType,
val begrunnelse: String,
val varsel: ManglendeMedvirkningVarselDTO?,
val veilederident: String,
)

data class ManglendeMedvirkningVarselDTO(
Expand All @@ -28,5 +29,5 @@ data class ManglendeMedvirkningVarselDTO(
)

enum class ManglendeMedvirkningVurderingType {
FORHANDSVARSEL, OPPFYLT, STANS, IKKE_AKTUELL,
FORHANDSVARSEL, OPPFYLT, STANS, IKKE_AKTUELL, UNNTAK
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Litt kjipt at vi må huske på å oppdatere her når det blir flere typer.

}
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import no.nav.syfo.oppfolgingstilfelle.kafka.launchKafkaTaskOppfolgingstilfelleP
import no.nav.syfo.pdlpersonhendelse.kafka.launchKafkaTaskPersonhendelse
import no.nav.syfo.personoppgavehendelse.kafka.launchKafkaTaskPersonoppgavehendelse
import no.nav.syfo.personstatus.PersonoversiktStatusService
import no.nav.syfo.personstatus.infrastructure.kafka.manglendemedvirkning.ManglendeMedvirkningVurderingConsumer
import no.nav.syfo.personstatus.infrastructure.kafka.meroppfolging.SenOppfolgingKandidatStatusConsumer
import no.nav.syfo.trengeroppfolging.kafka.launchTrengerOppfolgingConsumer

Expand Down Expand Up @@ -75,4 +76,10 @@ fun launchKafkaModule(
applicationState = applicationState,
kafkaEnvironment = environment.kafka,
)

ManglendeMedvirkningVurderingConsumer(personoversiktStatusService = personoversiktStatusService)
.start(
applicationState = applicationState,
kafkaEnvironment = environment.kafka,
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ package no.nav.syfo.personstatus.infrastructure.kafka.manglendemedvirkning

import no.nav.syfo.ApplicationState
import no.nav.syfo.personstatus.PersonoversiktStatusService
import no.nav.syfo.personstatus.domain.PersonIdent
import no.nav.syfo.personstatus.infrastructure.kafka.*
import no.nav.syfo.personstatus.infrastructure.kafka.meroppfolging.KandidatStatusRecord
import no.nav.syfo.util.configuredJacksonMapper
import org.apache.kafka.clients.consumer.ConsumerConfig
import org.apache.kafka.clients.consumer.ConsumerRecords
Expand Down Expand Up @@ -47,7 +47,7 @@ class ManglendeMedvirkningVurderingConsumer(
return validRecords.map { record ->
val recordValue = record.value()
personoversiktStatusService.upsertManglendeMedvirkningStatus(
personident = recordValue.personident,
personident = PersonIdent(recordValue.personident),
isAktivVurdering = recordValue.vurderingType.isActive,
)
}
Expand All @@ -59,8 +59,8 @@ class ManglendeMedvirkningVurderingConsumer(
}
}

class ManglendeMedvirkningVurderingRecordDeserializer : Deserializer<KandidatStatusRecord> {
class ManglendeMedvirkningVurderingRecordDeserializer : Deserializer<VurderingRecord> {
private val mapper = configuredJacksonMapper()
override fun deserialize(topic: String, data: ByteArray): KandidatStatusRecord =
mapper.readValue(data, KandidatStatusRecord::class.java)
override fun deserialize(topic: String, data: ByteArray): VurderingRecord =
mapper.readValue(data, VurderingRecord::class.java)
}
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
package no.nav.syfo.personstatus.infrastructure.kafka.manglendemedvirkning

import no.nav.syfo.personstatus.domain.PersonIdent
import java.time.LocalDate
import java.time.OffsetDateTime
import java.util.*

data class VurderingRecord(
val uuid: UUID,
val personident: PersonIdent,
val personident: String,
val veilederident: String,
val createdAt: OffsetDateTime,
val begrunnelse: String,
Expand All @@ -21,11 +20,11 @@ data class VurderingTypeDTO(
)

enum class VurderingType {
FORHANDSVARSEL, OPPFYLT, STANS, IKKE_AKTUELL
FORHANDSVARSEL, OPPFYLT, STANS, IKKE_AKTUELL, UNNTAK
}

data class Varsel(
val uuid: UUID,
val createdAt: OffsetDateTime,
val svarFrist: LocalDate,
val svarfrist: LocalDate,
)
Original file line number Diff line number Diff line change
Expand Up @@ -972,8 +972,9 @@ object PersonoversiktStatusApiV2Spek : Spek({
personOversiktStatus.fnr shouldBeEqualTo ARBEIDSTAKER_FNR
personOversiktStatus.manglendeMedvirkning shouldNotBe null
personOversiktStatus.manglendeMedvirkning?.varsel shouldNotBe null
personOversiktStatus.manglendeMedvirkning?.type shouldBeEqualTo ManglendeMedvirkningVurderingType.FORHANDSVARSEL
personOversiktStatus.manglendeMedvirkning?.vurderingType shouldBeEqualTo ManglendeMedvirkningVurderingType.FORHANDSVARSEL
personOversiktStatus.manglendeMedvirkning?.begrunnelse shouldBeEqualTo "begrunnelse"
personOversiktStatus.manglendeMedvirkning?.veilederident shouldBeEqualTo VEILEDER_ID
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,14 +60,14 @@ class ManglendeMedvirkningVurderingConsumerSpek : Spek({
val personident = PersonIdent(UserConstants.ARBEIDSTAKER_FNR)
val forhandsvarselVurderingRecord = VurderingRecord(
uuid = UUID.randomUUID(),
personident = personident,
personident = personident.value,
veilederident = UserConstants.VEILEDER_ID,
createdAt = OffsetDateTime.now(),
begrunnelse = "begrunnelse",
varsel = Varsel(
uuid = UUID.randomUUID(),
createdAt = OffsetDateTime.now(),
svarFrist = LocalDate.now().plusWeeks(3),
svarfrist = LocalDate.now().plusWeeks(3),
),
vurderingType = VurderingTypeDTO(
value = VurderingType.FORHANDSVARSEL,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,9 @@ fun MockRequestHandleScope.manglendeMedvirkningMockResponse(): HttpResponseData
uuid = UUID.randomUUID(),
personident = UserConstants.ARBEIDSTAKER_FNR,
createdAt = LocalDateTime.now().minusDays(1),
type = ManglendeMedvirkningVurderingType.FORHANDSVARSEL,
vurderingType = ManglendeMedvirkningVurderingType.FORHANDSVARSEL,
begrunnelse = "begrunnelse",
veilederident = UserConstants.VEILEDER_ID,
varsel = ManglendeMedvirkningVarselDTO(
uuid = UUID.randomUUID(),
createdAt = LocalDateTime.now().minusDays(1),
Expand Down