From e5dd206e09be1c3ade6ab4668538511f18b06afa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Amalie=20Mans=C3=A5ker?= Date: Thu, 3 Aug 2023 12:36:25 +0200 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Kommentarer=20til=20feilmeldinger?= =?UTF-8?q?=20vises=20i=20frontend?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Vises foreløpig ikke riktig i frontend, men det vises Co-authored-by: Sindre Kjelsrud --- .../nav/helse/sprik/db/FeilmeldingRepository.kt | 1 + .../helse/sprik/modell/InnkommendeKommentar.kt | 4 ++++ .../kotlin/no/nav/helse/sprik/plugins/Routing.kt | 11 ++++------- backend/src/test/kotlin/LocalApp.kt | 3 ++- frontend/src/components/FeilmeldingsInnhold.tsx | 15 +++++++++------ 5 files changed, 20 insertions(+), 14 deletions(-) create mode 100644 backend/src/main/kotlin/no/nav/helse/sprik/modell/InnkommendeKommentar.kt diff --git a/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingRepository.kt b/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingRepository.kt index 466e12b..7298d55 100644 --- a/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingRepository.kt +++ b/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingRepository.kt @@ -9,6 +9,7 @@ import no.nav.helse.sprik.db.FeilmeldingTable.kommentar import no.nav.helse.sprik.db.FeilmeldingTable.tittel import no.nav.helse.sprik.modell.Feilmelding import org.jetbrains.exposed.sql.* +import org.jetbrains.exposed.sql.SqlExpressionBuilder.eq import org.jetbrains.exposed.sql.SqlExpressionBuilder.like import org.jetbrains.exposed.sql.transactions.transaction diff --git a/backend/src/main/kotlin/no/nav/helse/sprik/modell/InnkommendeKommentar.kt b/backend/src/main/kotlin/no/nav/helse/sprik/modell/InnkommendeKommentar.kt new file mode 100644 index 0000000..69a50d8 --- /dev/null +++ b/backend/src/main/kotlin/no/nav/helse/sprik/modell/InnkommendeKommentar.kt @@ -0,0 +1,4 @@ +import kotlinx.serialization.Serializable + +@Serializable +class InnkommendeKommentar(val id: Int, val kommentar: String) diff --git a/backend/src/main/kotlin/no/nav/helse/sprik/plugins/Routing.kt b/backend/src/main/kotlin/no/nav/helse/sprik/plugins/Routing.kt index f59a7fd..2aa6077 100644 --- a/backend/src/main/kotlin/no/nav/helse/sprik/plugins/Routing.kt +++ b/backend/src/main/kotlin/no/nav/helse/sprik/plugins/Routing.kt @@ -1,5 +1,6 @@ package no.nav.helse.sprik.plugins +import InnkommendeKommentar import io.ktor.http.* import io.ktor.server.routing.* import io.ktor.server.response.* @@ -71,13 +72,9 @@ fun configureRouting(): ApplicationEngine = embeddedServer(CIO, applicationEngin call.respond(status = HttpStatusCode.Created, message = "Feilmelding oppdatert") } put("/api/oppdaterkommentar") { - val oppdatertKommentarFeilmelding = call.receive() - if (oppdatertKommentarFeilmelding.id == null || oppdatertKommentarFeilmelding.kommentar == null) { - call.respond(status = HttpStatusCode.NotAcceptable, message = "Må ha id og kommentar for å oppdatere feilmelding") - } else { - feilmeldingRepository.oppdaterKommentar(oppdatertKommentarFeilmelding.id, oppdatertKommentarFeilmelding.kommentar) - call.respond(status = HttpStatusCode.Created, message = "Feilmelding oppdatert") - } + val innkommendeKommentar = call.receive() + feilmeldingRepository.oppdaterKommentar(innkommendeKommentar.id, innkommendeKommentar.kommentar) + call.respond(status = HttpStatusCode.Created, message = "Feilmelding oppdatert") } } } diff --git a/backend/src/test/kotlin/LocalApp.kt b/backend/src/test/kotlin/LocalApp.kt index adc5d2a..1a31f51 100644 --- a/backend/src/test/kotlin/LocalApp.kt +++ b/backend/src/test/kotlin/LocalApp.kt @@ -27,5 +27,6 @@ private fun oppretteMockData() { feilmeldingRepository.lagre(Feilmelding(null, "Feil A", "Lorem Ipsum", LocalDateTime.of(2023, 3, 1, 8, 0, 0), 2, false, null)) feilmeldingRepository.lagre(Feilmelding(null, "Feil B", "Lorem Ipsum", LocalDateTime.of(2023, 4, 1, 8, 0, 0), 1, true, null)) feilmeldingRepository.lagre(Feilmelding(null, "Feil C", "Lorem Ipsum", LocalDateTime.of(2023, 5, 1, 8, 0, 0), 1, true, null)) - feilmeldingRepository.lagre(Feilmelding(null, "Feil D", "Lorem Ipsum", LocalDateTime.of(2023, 6, 1, 8, 0, 0), 0, false, "Test kommentar")) + feilmeldingRepository.lagre(Feilmelding(null, "Feil D", "Lorem Ipsum", LocalDateTime.of(2023, 6, 1, 8, 0, 0), 0, false, null)) + feilmeldingRepository.oppdaterKommentar(1, "Test kommentar") } diff --git a/frontend/src/components/FeilmeldingsInnhold.tsx b/frontend/src/components/FeilmeldingsInnhold.tsx index 1ef5d1d..821e767 100644 --- a/frontend/src/components/FeilmeldingsInnhold.tsx +++ b/frontend/src/components/FeilmeldingsInnhold.tsx @@ -8,15 +8,17 @@ import axios from "axios" const FeilmeldingsInnhold = (props: FeilmeldingsInnholdInterface) => { - const [kommentar, setKommentar] = useState("") - const [kommentarfelt, setKommentarfelt] = useState("") + const [kommentar, setKommentar] = useState(props.kommentar ? props.kommentar : "") + const [kommentarfelt, setKommentarfelt] = useState("") const oppdaterkommentar = async() => { - setKommentar(kommentarfelt) + console.log(kommentarfelt) + console.log(kommentar); + const payload = { id: props.id, - tittel: kommentar, + kommentar: kommentarfelt, } await axios.put("/api/oppdaterkommentar", payload, { @@ -67,14 +69,15 @@ const FeilmeldingsInnhold = (props: FeilmeldingsInnholdInterface) => { oppdaterkommentar()} + oppdaterKommentar={() => { + setKommentar(kommentarfelt) + oppdaterkommentar()}} /> : } - Test: {props.kommentar ? props.kommentar : "null"} ) }