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 7298d55..66c3ca8 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 @@ -1,5 +1,6 @@ package no.nav.helse.sprik.db +import no.nav.helse.sprik.db.FeilmeldingTable.aktorid import no.nav.helse.sprik.db.FeilmeldingTable.arbeidsstatus import no.nav.helse.sprik.db.FeilmeldingTable.beskrivelse import no.nav.helse.sprik.db.FeilmeldingTable.dato @@ -15,6 +16,7 @@ import org.jetbrains.exposed.sql.transactions.transaction class FeilmeldingRepository { fun lagre(feilmelding: Feilmelding) { + transaction { FeilmeldingTable.run { insert { @@ -23,6 +25,10 @@ class FeilmeldingRepository { it[FeilmeldingTable.dato] = feilmelding.dato it[FeilmeldingTable.arbeidsstatus] = feilmelding.arbeidsstatus it[FeilmeldingTable.haster] = feilmelding.haster + + if (feilmelding.aktorid != null){ + it[FeilmeldingTable.aktorid] = feilmelding.aktorid + } } } } @@ -35,7 +41,8 @@ class FeilmeldingRepository { dato = rad[dato], arbeidsstatus = rad[arbeidsstatus], haster = rad[haster], - kommentar = rad[kommentar] + kommentar = rad[kommentar], + aktorid = rad[aktorid] ) fun hentAlleFeilmeldinger(): List = transaction { diff --git a/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingTable.kt b/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingTable.kt index 49c5275..9279ae0 100644 --- a/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingTable.kt +++ b/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingTable.kt @@ -11,4 +11,5 @@ object FeilmeldingTable : Table("feilmelding") { val arbeidsstatus = integer("arbeidsstatus") val haster = bool("haster") val kommentar = text("kommentar") + val aktorid = long("aktorid") } \ No newline at end of file diff --git a/backend/src/main/kotlin/no/nav/helse/sprik/modell/Feilmelding.kt b/backend/src/main/kotlin/no/nav/helse/sprik/modell/Feilmelding.kt index 4c48212..04c09fc 100644 --- a/backend/src/main/kotlin/no/nav/helse/sprik/modell/Feilmelding.kt +++ b/backend/src/main/kotlin/no/nav/helse/sprik/modell/Feilmelding.kt @@ -20,7 +20,8 @@ class Feilmelding( val dato: LocalDateTime, //Krever en spesiallaget serialiserer i KotlinX val arbeidsstatus: Int, val haster: Boolean, - val kommentar: String? + val kommentar: String?, + val aktorid: Long? //val bilde: String, ) { override fun toString(): 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 f6870e2..ed1e423 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 @@ -68,7 +68,6 @@ fun configureRouting(): ApplicationEngine = embeddedServer(CIO, applicationEngin } put("/api/oppdaterfeil") { val oppdatertFeilmelding = call.receive() - println(oppdatertFeilmelding) feilmeldingRepository.oppdaterFeilmelding(oppdatertFeilmelding) call.respond(status = HttpStatusCode.Created, message = "Feilmelding oppdatert") } diff --git a/backend/src/main/resources/db/migration/V6__leggerTilAktorID.sql b/backend/src/main/resources/db/migration/V6__leggerTilAktorID.sql new file mode 100644 index 0000000..66695e6 --- /dev/null +++ b/backend/src/main/resources/db/migration/V6__leggerTilAktorID.sql @@ -0,0 +1 @@ +ALTER TABLE feilmelding ADD aktorid INT \ No newline at end of file diff --git a/backend/src/main/resources/db/migration/V7__endrerDatatypeForAktorid.sql b/backend/src/main/resources/db/migration/V7__endrerDatatypeForAktorid.sql new file mode 100644 index 0000000..69dc5d2 --- /dev/null +++ b/backend/src/main/resources/db/migration/V7__endrerDatatypeForAktorid.sql @@ -0,0 +1,2 @@ +ALTER TABLE feilmelding +ALTER COLUMN aktorid TYPE BIGINT diff --git a/backend/src/test/kotlin/LocalApp.kt b/backend/src/test/kotlin/LocalApp.kt index 1a31f51..cc8f2fd 100644 --- a/backend/src/test/kotlin/LocalApp.kt +++ b/backend/src/test/kotlin/LocalApp.kt @@ -22,11 +22,11 @@ fun main() { private fun oppretteMockData() { val feilmeldingRepository = FeilmeldingRepository() - feilmeldingRepository.lagre(Feilmelding(null, "Mangel på hensyn til tariffoppgjør", "Det har vært ett tariffoppgjør og speil sier sykepengene må tilbakekreves, noe som er feil. (sier vi.. har ikke domenekunnskap)", LocalDateTime.of(2023, 1, 1, 8, 0, 0), 0, false, null)) - feilmeldingRepository.lagre(Feilmelding(null, "Speil sier NAV må tilbakekreve sykepenger på feil grunnlag", "Beskrivelse Test2", LocalDateTime.of(2023, 2, 1, 8, 0, 0), 1, true, null)) - 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, null)) + feilmeldingRepository.lagre(Feilmelding(null, "Mangel på hensyn til tariffoppgjør", "Det har vært ett tariffoppgjør og speil sier sykepengene må tilbakekreves, noe som er feil. (sier vi.. har ikke domenekunnskap)", LocalDateTime.of(2023, 1, 1, 8, 0, 0), 0, false, null, null)) + feilmeldingRepository.lagre(Feilmelding(null, "Speil sier NAV må tilbakekreve sykepenger på feil grunnlag", "Beskrivelse Test2", LocalDateTime.of(2023, 2, 1, 8, 0, 0), 1, true, null, null)) + feilmeldingRepository.lagre(Feilmelding(null, "Feil A", "Lorem Ipsum", LocalDateTime.of(2023, 3, 1, 8, 0, 0), 2, false, null, null)) + feilmeldingRepository.lagre(Feilmelding(null, "Feil B", "Lorem Ipsum", LocalDateTime.of(2023, 4, 1, 8, 0, 0), 1, true, null, null)) + feilmeldingRepository.lagre(Feilmelding(null, "Feil C", "Lorem Ipsum", LocalDateTime.of(2023, 5, 1, 8, 0, 0), 1, true, null, null)) + feilmeldingRepository.lagre(Feilmelding(null, "Feil D", "Lorem Ipsum", LocalDateTime.of(2023, 6, 1, 8, 0, 0), 0, false, null, null)) feilmeldingRepository.oppdaterKommentar(1, "Test kommentar") } diff --git a/backend/src/test/kotlin/no/nav/helse/sprik/FeilmeldingTest.kt b/backend/src/test/kotlin/no/nav/helse/sprik/FeilmeldingTest.kt index 3fe1211..7e7ba5f 100644 --- a/backend/src/test/kotlin/no/nav/helse/sprik/FeilmeldingTest.kt +++ b/backend/src/test/kotlin/no/nav/helse/sprik/FeilmeldingTest.kt @@ -34,7 +34,7 @@ class FeilmeldingTest { @BeforeEach fun lagreFeilmelding() { - val feilmelding = Feilmelding(null, "Test", "Testesen", LocalDateTime.of(2023,1,1,8,0), 0, true, null) + val feilmelding = Feilmelding(null, "Test", "Testesen", LocalDateTime.of(2023,1,1,8,0), 0, true, null, null) feilmeldingRepository.lagre(feilmelding) } @@ -109,7 +109,7 @@ class FeilmeldingTest { } @Test fun `Oppdaterer en feilmelding`() { - val oppdatertFeilmelding = Feilmelding(getId(), "Oppdatert", "Oppdatert feil", LocalDateTime.of(2023, 1, 1, 8, 0), 1, false, null) + val oppdatertFeilmelding = Feilmelding(getId(), "Oppdatert", "Oppdatert feil", LocalDateTime.of(2023, 1, 1, 8, 0), 1, false, null, null) feilmeldingRepository.oppdaterFeilmelding(oppdatertFeilmelding) val actualOppdatert = transaction { FeilmeldingTable.selectAll().single() } assertEquals("Oppdatert", actualOppdatert[FeilmeldingTable.tittel]) diff --git a/frontend/src/components/FeilKort.tsx b/frontend/src/components/FeilKort.tsx index 01d45b9..5f900d6 100644 --- a/frontend/src/components/FeilKort.tsx +++ b/frontend/src/components/FeilKort.tsx @@ -63,6 +63,7 @@ const FeilKort = (props: IFeilKort) => { setVisModal={setVisModal} reset={props.reset} kommentar={props.kommentar} + aktorId={props.aktorId} /> : { setRedigeringsmodus={setRedigeringsmodus} reset={props.reset} kommentar={props.kommentar} + aktorId={props.aktorId} > -

Her kommer det content

+

aktorId: {props.aktorId}

} diff --git a/frontend/src/components/KortKonteiner.tsx b/frontend/src/components/KortKonteiner.tsx index 3cc976d..08201d8 100644 --- a/frontend/src/components/KortKonteiner.tsx +++ b/frontend/src/components/KortKonteiner.tsx @@ -25,6 +25,7 @@ const KortKonteiner = (props: IKortKonteiner) => { haster={feilMelding.haster} reset={props.reset} kommentar={feilMelding.kommentar} + aktorId={feilMelding.aktorid} /> )) } diff --git a/frontend/src/index.tsx b/frontend/src/index.tsx index 04273cc..7181cfd 100644 --- a/frontend/src/index.tsx +++ b/frontend/src/index.tsx @@ -18,9 +18,7 @@ export default function Home() { * Henter alle feilmeldinger fra backend. * Bruker endepunktet /api/hentallefeil. */ - const hentAlleFeil = async () => { - console.log("hentAlleFeil"); - + const hentAlleFeil = async () => { await axios.get("/api/hentallefeil") .then(data => data.data) .then(feil => { diff --git a/frontend/src/interface.ts b/frontend/src/interface.ts index ef749bd..67d1e78 100644 --- a/frontend/src/interface.ts +++ b/frontend/src/interface.ts @@ -11,6 +11,7 @@ export interface IFeilmelding { arbeidsstatus: number haster: boolean kommentar?: string + aktorId?: number } export interface FeilmeldingsInnholdInterface extends IFeilmelding { @@ -28,6 +29,7 @@ export class Feilmelding implements IFeilmelding { arbeidsstatus: number = 0 haster: boolean = false kommentar?: string = undefined + aktorid?: number = undefined /** * Typescript 2.1 syntax som lar deg sende inn et JSON object og mappe det til class. @@ -42,6 +44,7 @@ export class Feilmelding implements IFeilmelding { arbeidsstatus: number haster: boolean kommentar: string + aktorId: number }) { if (fields) Object.assign(this, fields); } diff --git a/frontend/src/pages/feil.tsx b/frontend/src/pages/feil.tsx index bfc7399..8a053f8 100644 --- a/frontend/src/pages/feil.tsx +++ b/frontend/src/pages/feil.tsx @@ -15,13 +15,9 @@ export default function Feil() { const [status, setStatus] = useState(0) const [haster, setHaster] = useState(false) const [valgteTags, setValgteTags] = useState([] as string[]); - const [aktørId, setAktørId] = useState(""); - - console.log(aktørId); + const [aktorid, setAktorid] = useState(null); - const handleSubmit = () => { - const payload = { id: null, tittel: tittel, @@ -29,9 +25,9 @@ export default function Feil() { dato: new Date().toISOString().replace('Z', ''), // Litt wack fix, burde endres arbeidsstatus: 0, haster: haster, - kommentar: null + kommentar: null, + aktorid: aktorid ? aktorid : null, //kategorier: valgteTags - //aktørId: aktørId } axios.post("/api/nyfeil", payload, { @@ -121,8 +117,8 @@ export default function Feil() { setAktørId(e.target.value)} + description="Legg ved aktør-ID om det er relevant" + onChange={e => setAktorid(parseInt(e.target.value))} />