Skip to content

Commit 8498923

Browse files
committed
wip
1 parent 444e4bb commit 8498923

File tree

5 files changed

+55
-1
lines changed

5 files changed

+55
-1
lines changed

src/main/kotlin/no/nav/syfo/brev/esyfovarsel/EsyfovarselProducer.kt

+8-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package no.nav.syfo.brev.esyfovarsel
22

33
import com.fasterxml.jackson.annotation.JsonTypeInfo
4+
import no.nav.syfo.dialogmote.domain.DialogmoteSvarType
45
import java.io.Serializable
56
import java.util.*
67
import org.apache.kafka.clients.producer.KafkaProducer
@@ -55,7 +56,8 @@ data class ArbeidstakerHendelse(
5556
data class VarselData(
5657
val journalpost: VarselDataJournalpost? = null,
5758
val narmesteLeder: VarselDataNarmesteLeder? = null,
58-
val motetidspunkt: VarselDataMotetidspunkt? = null
59+
val motetidspunkt: VarselDataMotetidspunkt? = null,
60+
val dialogmoteSvar: VarselDataDialogmoteSvar? = null
5961
)
6062

6163
data class VarselDataJournalpost(
@@ -71,6 +73,10 @@ data class VarselDataMotetidspunkt(
7173
val tidspunkt: LocalDateTime
7274
)
7375

76+
data class VarselDataDialogmoteSvar(
77+
val svar: DialogmoteSvarType
78+
)
79+
7480
enum class HendelseType {
7581
NL_DIALOGMOTE_INNKALT,
7682
SM_DIALOGMOTE_INNKALT,
@@ -81,4 +87,5 @@ enum class HendelseType {
8187
NL_DIALOGMOTE_NYTT_TID_STED,
8288
SM_DIALOGMOTE_NYTT_TID_STED,
8389
SM_DIALOGMOTE_LEST,
90+
NL_DIALOGMOTE_SVAR,
8491
}

src/main/kotlin/no/nav/syfo/brev/narmesteleder/NarmesteLederBrevApi.kt

+5
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,11 @@ fun Route.registerNarmestelederBrevApi(
177177
svarTekst = responsDTO.svarTekst,
178178
)
179179
if (updated) {
180+
dialogmoteService.publishNarmesteLederSvarMelding(
181+
brev = brev,
182+
responsDTO = responsDTO,
183+
narmesteLederPersonIdent = narmesteLederPersonIdent,
184+
)
180185
call.respond(HttpStatusCode.OK)
181186
} else {
182187
throw IllegalArgumentException("Response already stored")

src/main/kotlin/no/nav/syfo/brev/narmesteleder/NarmesteLederVarselService.kt

+4
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@ class NarmesteLederVarselService(
2626
esyfovarselProducer.sendVarselToEsyfovarsel(hendelse)
2727
}
2828

29+
fun sendMelding(hendelse: EsyfovarselHendelse) {
30+
esyfovarselProducer.sendVarselToEsyfovarsel(hendelse)
31+
}
32+
2933
private fun getNaermesteLederVarselType(motedeltakerVarselType: MotedeltakerVarselType): HendelseType {
3034
return when (motedeltakerVarselType) {
3135
MotedeltakerVarselType.INNKALT -> HendelseType.NL_DIALOGMOTE_INNKALT

src/main/kotlin/no/nav/syfo/dialogmote/DialogmoteService.kt

+32
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@ package no.nav.syfo.dialogmote
33
import no.nav.syfo.application.api.authentication.getNAVIdentFromToken
44
import no.nav.syfo.application.database.DatabaseInterface
55
import no.nav.syfo.application.exception.ConflictException
6+
import no.nav.syfo.brev.esyfovarsel.HendelseType
7+
import no.nav.syfo.brev.esyfovarsel.NarmesteLederHendelse
8+
import no.nav.syfo.brev.esyfovarsel.VarselData
9+
import no.nav.syfo.brev.esyfovarsel.VarselDataDialogmoteSvar
10+
import no.nav.syfo.brev.narmesteleder.domain.NarmesteLederResponsDTO
611
import no.nav.syfo.client.behandlendeenhet.BehandlendeEnhetClient
712
import no.nav.syfo.client.narmesteleder.NarmesteLederClient
813
import no.nav.syfo.client.narmesteleder.NarmesteLederRelasjonDTO
@@ -843,4 +848,31 @@ class DialogmoteService(
843848
callId = callId,
844849
)
845850
}
851+
852+
fun publishNarmesteLederSvarMelding(
853+
brev: NarmesteLederBrev,
854+
responsDTO: NarmesteLederResponsDTO,
855+
narmesteLederPersonIdent: PersonIdent,
856+
) {
857+
val dialogmoteDeltagerArbeidsgiver = dialogmotedeltakerService.getDialogmoteDeltakerArbeidsgiverById(
858+
motedeltakerArbeidsgiverId = brev.motedeltakerArbeidsgiverId,
859+
)
860+
val arbeidstakerPersonIdent = dialogmotedeltakerService.getDialogmoteDeltakerArbeidstaker(
861+
moteId = dialogmoteDeltagerArbeidsgiver.moteId,
862+
).personIdent.value
863+
864+
varselService.sendNarmesteLederEsyfovarselMelding(
865+
NarmesteLederHendelse(
866+
type = HendelseType.NL_DIALOGMOTE_SVAR,
867+
data = VarselData(
868+
dialogmoteSvar = VarselDataDialogmoteSvar(
869+
svar = DialogmoteSvarType.valueOf(responsDTO.svarType),
870+
)
871+
),
872+
narmesteLederFnr = narmesteLederPersonIdent.value,
873+
arbeidstakerFnr = arbeidstakerPersonIdent,
874+
orgnummer = dialogmoteDeltagerArbeidsgiver.virksomhetsnummer.value,
875+
)
876+
)
877+
}
846878
}

src/main/kotlin/no/nav/syfo/dialogmote/VarselService.kt

+6
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package no.nav.syfo.dialogmote
33
import java.util.*
44
import no.nav.syfo.brev.arbeidstaker.ArbeidstakerVarselService
55
import no.nav.syfo.brev.behandler.BehandlerVarselService
6+
import no.nav.syfo.brev.esyfovarsel.NarmesteLederHendelse
67
import no.nav.syfo.brev.narmesteleder.NarmesteLederVarselService
78
import no.nav.syfo.client.altinn.AltinnClient
89
import no.nav.syfo.client.altinn.createAltinnMelding
@@ -106,4 +107,9 @@ class VarselService(
106107
}
107108
}
108109
}
110+
fun sendNarmesteLederEsyfovarselMelding(
111+
hendelse: NarmesteLederHendelse
112+
) {
113+
narmesteLederVarselService.sendMelding(hendelse)
114+
}
109115
}

0 commit comments

Comments
 (0)