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

fix: getOppgave in sendTilGosys is now m2m #378

Merged
merged 1 commit into from
Dec 17, 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 @@ -7,26 +7,46 @@ import org.springframework.stereotype.Component
@Component
class GosysService(
private val oppgaveClient: OppgaveClient,
) {
fun sendOppgaveTilGosys(
) {
fun sendOppgaveTilGosys(
oppgaveId: String,
sykmeldingId: String,
veilederNavIdent: String,
beskrivelse: String? = null,
) {
val oppgave = oppgaveClient.getOppgave(oppgaveId, sykmeldingId)

oppgaveClient.oppdaterGosysOppgave(
oppgaveId,
sykmeldingId,
oppgave.versjon,
oppgave.status,
"FS22",
veilederNavIdent,
beskrivelse,
)
}

fun sendNasjonalOppgaveTilGosys(
oppgaveId: String,
sykmeldingId: String,
veilederNavIdent: String,
beskrivelse: String? = null,
) {
val oppgave = oppgaveClient.getOppgave(oppgaveId, sykmeldingId)

oppgaveClient.oppdaterGosysOppgave(
oppgaveId,
val oppgave = oppgaveClient.getNasjonalOppgave(oppgaveId, sykmeldingId)
val oppdatertOppgave = oppgave.copy(
behandlesAvApplikasjon = "FS22",
tilordnetRessurs = veilederNavIdent
)
oppgaveClient.oppdaterNasjonalGosysOppgave(
oppdatertOppgave,
sykmeldingId,
oppgave.versjon,
oppgave.status,
"FS22",
veilederNavIdent,
beskrivelse,
oppgaveId,
veilederNavIdent
)
}


fun avvisOppgaveTilGosys(
oppgaveId: String,
sykmeldingId: String,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import no.nav.sykdig.digitalisering.exceptions.IkkeTilgangException
import no.nav.sykdig.digitalisering.exceptions.NoOppgaveException
import no.nav.sykdig.digitalisering.getFristForFerdigstillingAvOppgave
import no.nav.sykdig.digitalisering.papirsykmelding.api.model.FerdigstillRegistrering
import no.nav.sykdig.digitalisering.papirsykmelding.api.model.Veileder
import no.nav.sykdig.digitalisering.saf.graphql.SafJournalpost
import no.nav.sykdig.digitalisering.saf.graphql.TEMA_SYKMELDING
import no.nav.sykdig.objectMapper
Expand Down Expand Up @@ -544,4 +545,42 @@ class OppgaveClient(
throw e
}
}

fun oppdaterNasjonalGosysOppgave(oppdatertOppgave: NasjonalOppgaveResponse, sykmeldingId: String, oppgaveId: String, veileder: String) {
val headers = HttpHeaders()
headers.contentType = MediaType.APPLICATION_JSON
headers["X-Correlation-ID"] = oppgaveId

try {
oppgaveM2mRestTemplate.exchange(
"$url/${oppdatertOppgave.id}",
HttpMethod.PUT,
HttpEntity(oppdatertOppgave, headers),
String::class.java,
)
log.info("OppdaterOppgave oppgave $oppgaveId for sykmelding $sykmeldingId")
} catch (e: HttpClientErrorException) {
if (e.statusCode.value() == 401 || e.statusCode.value() == 403) {
log.warn(
"Veileder $veileder har ikke tilgang til å " +
"oppdaterOppgave oppgaveId $oppgaveId: ${e.message}",
)
throw IkkeTilgangException("Veileder har ikke tilgang til oppgave")
} else {
log.error(
"HttpClientErrorException for oppgaveId $oppgaveId med responskode ${e.statusCode.value()} " +
"fra Oppgave ved oppdaterOppgave: ${e.message}",
e,
)
throw e
}
} catch (e: HttpServerErrorException) {
log.error(
"HttpServerErrorException for oppgaveId $oppgaveId med responskode ${e.statusCode.value()} " +
"fra Oppgave ved oppdaterOppgave: ${e.message}",
e,
)
throw e
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -108,8 +108,7 @@ class NasjonalFerdigstillingsService(
StructuredArguments.fields(loggingMeta),
)
val navIdent = nasjonalCommonService.getNavIdent().veilederIdent
gosysService.sendOppgaveTilGosys(oppgaveId, sykmeldingId, navIdent)

gosysService.sendNasjonalOppgaveTilGosys(oppgaveId, sykmeldingId, navIdent)
}

}
Loading