Skip to content

Commit 0d7d780

Browse files
committed
Always send dvh message SENDT_TIL_TR when receiving anke i TR from external API.
1 parent 34c9f4e commit 0d7d780

File tree

2 files changed

+53
-3
lines changed

2 files changed

+53
-3
lines changed

src/main/kotlin/no/nav/klage/oppgave/api/controller/external/ExternalApiController.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,6 @@ class ExternalApiController(
9090
@Valid @RequestBody oversendtAnkeITrygderetten: OversendtAnkeITrygderettenV1
9191
) {
9292
secureLogger.debug("Ankeitrygderetten data $oversendtAnkeITrygderetten sent to Kabal")
93-
ankeITrygderettenbehandlingService.createAnkeITrygderettenbehandling(oversendtAnkeITrygderetten)
93+
ankeITrygderettenbehandlingService.createAnkeITrygderettenbehandlingFromExternalApi(oversendtAnkeITrygderetten)
9494
}
9595
}

src/main/kotlin/no/nav/klage/oppgave/service/AnkeITrygderettenbehandlingService.kt

+52-2
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import com.fasterxml.jackson.databind.ObjectMapper
44
import com.fasterxml.jackson.databind.SerializationFeature
55
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule
66
import no.nav.klage.dokument.api.view.JournalfoertDokumentReference
7+
import no.nav.klage.kodeverk.Type
78
import no.nav.klage.kodeverk.hjemmel.Hjemmel
89
import no.nav.klage.kodeverk.hjemmel.ytelseToRegistreringshjemlerV2
910
import no.nav.klage.oppgave.api.view.OversendtAnkeITrygderettenV1
@@ -17,10 +18,12 @@ import no.nav.klage.oppgave.domain.klage.Felt
1718
import no.nav.klage.oppgave.repositories.AnkeITrygderettenbehandlingRepository
1819
import no.nav.klage.oppgave.repositories.KafkaEventRepository
1920
import no.nav.klage.oppgave.util.getLogger
21+
import no.nav.klage.oppgave.util.ourJacksonObjectMapper
2022
import org.springframework.beans.factory.annotation.Value
2123
import org.springframework.context.ApplicationEventPublisher
2224
import org.springframework.stereotype.Service
2325
import org.springframework.transaction.annotation.Transactional
26+
import java.time.LocalDateTime
2427
import java.util.*
2528

2629
@Service
@@ -37,6 +40,7 @@ class AnkeITrygderettenbehandlingService(
3740
companion object {
3841
@Suppress("JAVA_CLASS_ON_COMPANION")
3942
private val logger = getLogger(javaClass.enclosingClass)
43+
private val objectMapper = ourJacksonObjectMapper()
4044
private val objectMapperBehandlingEvents = ObjectMapper().registerModule(JavaTimeModule()).configure(
4145
SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false
4246
)
@@ -143,12 +147,58 @@ class AnkeITrygderettenbehandlingService(
143147
return ankeITrygderettenbehandling
144148
}
145149

146-
fun createAnkeITrygderettenbehandling(input: OversendtAnkeITrygderettenV1) {
150+
fun createAnkeITrygderettenbehandlingFromExternalApi(input: OversendtAnkeITrygderettenV1) {
147151
mottakService.validateAnkeITrygderettenV1(input)
148152
val inputDocuments =
149153
dokumentService.createSaksdokumenterFromJournalpostIdList(input.tilknyttedeJournalposter.map { it.journalpostId })
150-
createAnkeITrygderettenbehandling(
154+
val ankeITrygderettenbehandling = createAnkeITrygderettenbehandling(
151155
input.createAnkeITrygderettenbehandlingInput(inputDocuments)
152156
)
157+
158+
val statistikkTilDVH = StatistikkTilDVH(
159+
eventId = UUID.randomUUID(),
160+
behandlingId = ankeITrygderettenbehandling.dvhReferanse,
161+
behandlingIdKabal = ankeITrygderettenbehandling.toString(),
162+
//Means enhetTildeltDato
163+
behandlingStartetKA = null,
164+
ansvarligEnhetKode = "TR0000",
165+
behandlingStatus = BehandlingState.SENDT_TIL_TR,
166+
behandlingType = Type.ANKE.name,
167+
//Means medunderskriver
168+
beslutter = null,
169+
endringstid = ankeITrygderettenbehandling.sendtTilTrygderetten,
170+
hjemmel = emptyList(),
171+
klager = getDVHPart(
172+
type = ankeITrygderettenbehandling.klager.partId.type,
173+
value = ankeITrygderettenbehandling.klager.partId.value
174+
),
175+
opprinneligFagsaksystem = ankeITrygderettenbehandling.fagsystem.navn,
176+
overfoertKA = ankeITrygderettenbehandling.mottattKlageinstans.toLocalDate(),
177+
resultat = null,
178+
sakenGjelder = getDVHPart(
179+
type = ankeITrygderettenbehandling.sakenGjelder.partId.type,
180+
value = ankeITrygderettenbehandling.sakenGjelder.partId.value
181+
),
182+
saksbehandler = ankeITrygderettenbehandling.tildeling?.saksbehandlerident,
183+
saksbehandlerEnhet = ankeITrygderettenbehandling.tildeling?.enhet,
184+
tekniskTid = LocalDateTime.now(),
185+
vedtaksdato = null,
186+
ytelseType = ankeITrygderettenbehandling.ytelse.name,
187+
opprinneligFagsakId = ankeITrygderettenbehandling.fagsakId,
188+
)
189+
190+
kafkaEventRepository.save(
191+
KafkaEvent(
192+
id = UUID.randomUUID(),
193+
behandlingId = ankeITrygderettenbehandling.id,
194+
kilde = ankeITrygderettenbehandling.fagsystem.navn,
195+
kildeReferanse = ankeITrygderettenbehandling.kildeReferanse,
196+
status = UtsendingStatus.IKKE_SENDT,
197+
jsonPayload = statistikkTilDVH.toJson(),
198+
type = EventType.STATS_DVH
199+
)
200+
)
153201
}
202+
203+
private fun StatistikkTilDVH.toJson(): String = objectMapper.writeValueAsString(this)
154204
}

0 commit comments

Comments
 (0)