sample-service/src/api/route/OutputServiceRDBServer.kt

54 lines
1.9 KiB
Kotlin
Raw Normal View History

2021-08-11 14:40:05 +02:00
package com.kmalbz.api.route
import com.kmalbz.database.service.ISampleObjectService
import io.ktor.application.call
import io.ktor.http.HttpStatusCode
import io.ktor.response.respond
import io.ktor.routing.Routing
import io.ktor.routing.get
import org.koin.ktor.ext.inject
import java.time.LocalDate
import java.time.format.DateTimeFormatter
/**
2021-08-11 15:06:09 +02:00
* Sample Service
2021-08-11 14:40:05 +02:00
*
2021-08-11 15:06:09 +02:00
* This is the sample interface of the Birbnetes system.
2021-08-11 14:40:05 +02:00
*/
class OutputServiceRDBServer {
/**
2021-08-11 15:06:09 +02:00
* sample
2021-08-11 14:40:05 +02:00
*/
fun Routing.registerOutput() {
val resultObjectService by inject<ISampleObjectService>()
2021-08-11 15:06:09 +02:00
get("/sample"){
2021-08-11 14:40:05 +02:00
call.respond(resultObjectService.getAllSampleObjects())
}
2021-08-11 15:06:09 +02:00
get("/sample/after/{dateAfter}") {
2021-08-11 14:40:05 +02:00
val dateAfter = call.parameters["dateAfter"] ?: error(HttpStatusCode.NotAcceptable)
val dateTimeFormatter: DateTimeFormatter = DateTimeFormatter.ISO_LOCAL_DATE
val localDateAfter : LocalDate = LocalDate.parse(dateAfter,dateTimeFormatter)
val resultList = resultObjectService.getSampleObjectafterDate(localDateAfter) ?: call.respond(HttpStatusCode.NotFound)
call.respond(resultList)
}
2021-08-11 15:06:09 +02:00
get("/sample/before/{dateBefore}") {
2021-08-11 14:40:05 +02:00
val dateAfter = call.parameters["dateBefore"] ?: error(HttpStatusCode.NotAcceptable)
val dateTimeFormatter: DateTimeFormatter = DateTimeFormatter.ISO_LOCAL_DATE
val localDateBefore : LocalDate = LocalDate.parse(dateAfter,dateTimeFormatter)
val resultList = resultObjectService.getSampleObjectbeforeDate(localDateBefore) ?: call.respond(HttpStatusCode.NotFound)
call.respond(resultList)
}
2021-08-11 15:06:09 +02:00
get("/sample/{tagID}") {
2021-08-11 14:40:05 +02:00
val tagID = call.parameters["tagID"] ?: error(HttpStatusCode.NotAcceptable)
val resultObject = resultObjectService.getSampleObjectbyTag(tagID) ?: call.respond(HttpStatusCode.NotFound)
call.respond(resultObject)
}
}
}