Add Update note
This commit is contained in:
parent
7be4acd6e9
commit
2a32cbd806
@ -12,10 +12,15 @@ import io.ktor.application.call
|
|||||||
import io.ktor.http.HttpStatusCode
|
import io.ktor.http.HttpStatusCode
|
||||||
import io.ktor.request.receive
|
import io.ktor.request.receive
|
||||||
import io.ktor.response.respond
|
import io.ktor.response.respond
|
||||||
import io.ktor.routing.*
|
import io.ktor.routing.Route
|
||||||
|
import io.ktor.routing.get
|
||||||
|
import io.ktor.routing.patch
|
||||||
|
import io.ktor.routing.post
|
||||||
import me.liuwj.ktorm.database.Database
|
import me.liuwj.ktorm.database.Database
|
||||||
import me.liuwj.ktorm.dsl.*
|
import me.liuwj.ktorm.dsl.*
|
||||||
import me.liuwj.ktorm.entity.*
|
import me.liuwj.ktorm.entity.add
|
||||||
|
import me.liuwj.ktorm.entity.find
|
||||||
|
import me.liuwj.ktorm.entity.sequenceOf
|
||||||
import org.kodein.di.Kodein
|
import org.kodein.di.Kodein
|
||||||
import org.kodein.di.generic.instance
|
import org.kodein.di.generic.instance
|
||||||
import java.time.LocalDateTime
|
import java.time.LocalDateTime
|
||||||
@ -121,8 +126,35 @@ class NotesTitleController(kodein: Kodein) : AuthCrudController("/notes/{noteTit
|
|||||||
return@patch call.respondStatus(HttpStatusCode.BadRequest)
|
return@patch call.respondStatus(HttpStatusCode.BadRequest)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val noteId = call.requestedNoteId()
|
||||||
|
?: return@patch call.respondStatus(HttpStatusCode.NotFound)
|
||||||
|
|
||||||
|
db.useTransaction {
|
||||||
|
if (requestedChanges.title != null) {
|
||||||
|
db.update(Notes) {
|
||||||
|
it.title to requestedChanges.title
|
||||||
|
where { it.id eq noteId }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (requestedChanges.tags != null) {
|
||||||
|
// delete all tags
|
||||||
|
db.delete(Tags) {
|
||||||
|
it.noteId eq noteId
|
||||||
|
}
|
||||||
|
|
||||||
|
// put new ones
|
||||||
|
requestedChanges.tags.forEach { tagName ->
|
||||||
|
db.insert(Tags) {
|
||||||
|
it.name to tagName
|
||||||
|
it.noteId to noteId
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
call.respondStatus(HttpStatusCode.OK)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user