Aktor id backend (#31)

* 🚧 Frontend sender AktørID til backend

WIP: Database og backend takler ikke lange tall (må finne alternativ datatype til int)


* 🐛 Endret datatype på aktorid i database til BIGINT

* 🍱 Lagring av valgfri aktørid i database

*  Aktørid vises på feilmeldinginnhold i frontend

* 🎨 Fjernet ubrukte logs, rettet grammatikk, fikset typing på aktorid frontend

---------

Co-authored-by: Amalie Mansåker <amalie.erdal.mansaker@nav.no>
This commit is contained in:
Markus A. R. Johansen 2023-08-04 12:41:24 +02:00 committed by GitHub
parent ebd9e0105b
commit 13a3ee415d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 35 additions and 24 deletions

View file

@ -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<Feilmelding> = transaction {

View file

@ -11,4 +11,5 @@ object FeilmeldingTable : Table("feilmelding") {
val arbeidsstatus = integer("arbeidsstatus")
val haster = bool("haster")
val kommentar = text("kommentar")
val aktorid = long("aktorid")
}

View file

@ -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 {

View file

@ -68,7 +68,6 @@ fun configureRouting(): ApplicationEngine = embeddedServer(CIO, applicationEngin
}
put("/api/oppdaterfeil") {
val oppdatertFeilmelding = call.receive<Feilmelding>()
println(oppdatertFeilmelding)
feilmeldingRepository.oppdaterFeilmelding(oppdatertFeilmelding)
call.respond(status = HttpStatusCode.Created, message = "Feilmelding oppdatert")
}

View file

@ -0,0 +1 @@
ALTER TABLE feilmelding ADD aktorid INT

View file

@ -0,0 +1,2 @@
ALTER TABLE feilmelding
ALTER COLUMN aktorid TYPE BIGINT

View file

@ -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")
}

View file

@ -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])