🗃️ Innsendt feilmelding sendes videre fra backend til database
Co-authored-by: Sindre Kjelsrud <sindre.kjelsrud@nav.no> Co-authored-by: Amalie Mansåker <amalie.erdal.mansaker@nav.no>
This commit is contained in:
		
							parent
							
								
									a5497cf536
								
							
						
					
					
						commit
						c47685b5d9
					
				
					 6 changed files with 34 additions and 36 deletions
				
			
		|  | @ -1,19 +1,22 @@ | |||
| package no.nav.helse.sprik.db | ||||
| 
 | ||||
| import no.nav.helse.sprik.modell.Feilmelding | ||||
| import org.jetbrains.exposed.sql.insert | ||||
| import org.jetbrains.exposed.sql.transactions.transaction | ||||
| import java.time.LocalDateTime | ||||
| 
 | ||||
| class FeilmeldingRepository { | ||||
|     fun lagre(tittel: String, beskrivelse: String, dato: LocalDateTime){ | ||||
|     fun lagre(feilmelding: Feilmelding){ | ||||
|         transaction { | ||||
|             FeilmeldingTable.run { | ||||
|                 insert { | ||||
|                     it[FeilmeldingTable.tittel] = tittel | ||||
|                     it[FeilmeldingTable.beskrivelse] = beskrivelse | ||||
|                     it[FeilmeldingTable.dato] = dato | ||||
|                     it[FeilmeldingTable.tittel] = feilmelding.tittel | ||||
|                     it[FeilmeldingTable.beskrivelse] = feilmelding.beskrivelse | ||||
|                     it[FeilmeldingTable.dato] = feilmelding.dato | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
| 
 | ||||
| } | ||||
|  | @ -1,14 +1,12 @@ | |||
| @file:UseSerializers( | ||||
|         LocalDateSerializer::class | ||||
|         LocalDateTimeSerializer::class | ||||
| ) | ||||
| 
 | ||||
| package no.nav.helse.sprik.modell | ||||
| import kotlinx.serialization.Serializable | ||||
| import kotlinx.serialization.UseSerializers | ||||
| import no.nav.helse.sprik.serializers.LocalDateSerializer | ||||
| import java.time.LocalDate | ||||
| 
 | ||||
| 
 | ||||
| import no.nav.helse.sprik.serializers.LocalDateTimeSerializer | ||||
| import java.time.LocalDateTime | ||||
| 
 | ||||
| 
 | ||||
| /** | ||||
|  | @ -19,19 +17,11 @@ class Feilmelding( | |||
|     val tittel: String, | ||||
|     val beskrivelse: String, | ||||
| 
 | ||||
|     @Serializable(LocalDateSerializer::class) | ||||
|     val dato: LocalDate? = null, //Krever en spesiallaget serialiserer i KotlinX | ||||
|     val tags: ArrayList<String> = arrayListOf<String>() | ||||
|     @Serializable(LocalDateTimeSerializer::class) | ||||
|     val dato: LocalDateTime, //Krever en spesiallaget serialiserer i KotlinX | ||||
|     //val tags: ArrayList<String> = arrayListOf<String>() | ||||
|     //val bilde: String, | ||||
| ) { | ||||
|     fun addTag(tagText: String){ | ||||
|         tags.add(tagText) | ||||
|     } | ||||
| 
 | ||||
|     fun removeTag(tagText: String){ | ||||
|         tags.removeAt(tags.indexOf(tagText)) | ||||
|     } | ||||
| 
 | ||||
|     override fun toString(): String { | ||||
|         return "Feilmelding(\n${tittel}\n${beskrivelse}\n)" | ||||
|     } | ||||
|  |  | |||
|  | @ -12,9 +12,13 @@ import io.ktor.server.http.content.* | |||
| import io.ktor.server.plugins.cors.routing.* | ||||
| import io.ktor.server.request.* | ||||
| import no.nav.helse.sprik.Test | ||||
| import no.nav.helse.sprik.db.FeilmeldingRepository | ||||
| import no.nav.helse.sprik.modell.Feilmelding | ||||
| 
 | ||||
| fun configureRouting(): ApplicationEngine = embeddedServer(CIO, applicationEngineEnvironment { | ||||
|     //Repositories for handlinger mot database: | ||||
|     val feilmeldingRepository = FeilmeldingRepository() | ||||
| 
 | ||||
|     module { | ||||
|         install(CORS) { | ||||
|             anyHost() | ||||
|  | @ -45,9 +49,9 @@ fun configureRouting(): ApplicationEngine = embeddedServer(CIO, applicationEngin | |||
|                 call.respond(status = HttpStatusCode.Created, message = test) | ||||
|             } | ||||
|             post("/nyFeil") { | ||||
|                 val test = call.receive<Feilmelding>() | ||||
|                 println(test) | ||||
|                 call.respond(status = HttpStatusCode.Created, message = test) | ||||
|                 val feilmelding = call.receive<Feilmelding>() | ||||
|                 feilmeldingRepository.lagre(feilmelding) | ||||
|                 call.respond(status = HttpStatusCode.Created, message = "Feilmelding motatt og sendt til database") | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  |  | |||
|  | @ -1,8 +0,0 @@ | |||
| package no.nav.helse.sprik.serializers | ||||
| 
 | ||||
| import java.time.LocalDate | ||||
| 
 | ||||
| object LocalDateSerializer : AsStringSerializer<LocalDate>( | ||||
|         serialName = "Sprik.kotlinx.LocalDateSerializer", | ||||
|         parse = LocalDate::parse | ||||
| ) | ||||
|  | @ -0,0 +1,8 @@ | |||
| package no.nav.helse.sprik.serializers | ||||
| 
 | ||||
| import java.time.LocalDateTime | ||||
| 
 | ||||
| object LocalDateTimeSerializer : AsStringSerializer<LocalDateTime>( | ||||
|         serialName = "Sprik.kotlinx.LocalDateTimeSerializer", | ||||
|         parse = LocalDateTime::parse | ||||
| ) | ||||
		Reference in a new issue
	
	 Markus Johansen
						Markus Johansen