Merge improvements #1
@@ -1,8 +1,9 @@
 | 
			
		||||
package com.kmalbz.api.model
 | 
			
		||||
 | 
			
		||||
import com.google.gson.annotations.SerializedName
 | 
			
		||||
import java.util.*
 | 
			
		||||
 | 
			
		||||
data class ApiObject(
 | 
			
		||||
    @SerializedName("tag") val tag: String,
 | 
			
		||||
    @SerializedName("tag") val tag: UUID,
 | 
			
		||||
    @SerializedName("probability") val probability: Double
 | 
			
		||||
)
 | 
			
		||||
@@ -9,6 +9,7 @@ import io.ktor.routing.get
 | 
			
		||||
import org.koin.ktor.ext.inject
 | 
			
		||||
import java.time.LocalDate
 | 
			
		||||
import java.time.format.DateTimeFormatter
 | 
			
		||||
import java.util.*
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Output Service - RDB
 | 
			
		||||
@@ -63,7 +64,7 @@ class OutputServiceRDBServer {
 | 
			
		||||
 | 
			
		||||
        get("/output/{tagID}") {
 | 
			
		||||
            val tagID = call.parameters["tagID"] ?: error(HttpStatusCode.NotAcceptable)
 | 
			
		||||
            val resultObject = resultObjectService.getResultObjectbyTag(tagID) ?: call.respond(HttpStatusCode.NotFound)
 | 
			
		||||
            val resultObject = resultObjectService.getResultObjectbyTag(UUID.fromString(tagID)) ?: call.respond(HttpStatusCode.NotFound)
 | 
			
		||||
 | 
			
		||||
            call.respond(resultObject)
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
@@ -4,9 +4,10 @@ import org.jetbrains.exposed.dao.id.IntIdTable
 | 
			
		||||
import org.jetbrains.exposed.sql.*
 | 
			
		||||
import org.jetbrains.exposed.sql.`java-time`.date
 | 
			
		||||
import java.time.LocalDate
 | 
			
		||||
import java.util.*
 | 
			
		||||
 | 
			
		||||
object ResultObjects : IntIdTable() {
 | 
			
		||||
    val tag: Column<String> = varchar("tag",32)
 | 
			
		||||
    val tag: Column<UUID> = uuid("tag")
 | 
			
		||||
    val date: Column<LocalDate> = date("date").default(LocalDate.now())
 | 
			
		||||
    val probability: Column<Double> = double("probability")
 | 
			
		||||
    override val primaryKey = PrimaryKey(id, name = "PK_ResultObject_Id")
 | 
			
		||||
 
 | 
			
		||||
@@ -2,11 +2,12 @@ package com.kmalbz.database.service
 | 
			
		||||
 | 
			
		||||
import com.kmalbz.api.model.ApiObject
 | 
			
		||||
import java.time.LocalDate
 | 
			
		||||
import java.util.*
 | 
			
		||||
 | 
			
		||||
interface IResultObjectService{
 | 
			
		||||
    fun addOne(apiObject: ApiObject)
 | 
			
		||||
    suspend fun getAllResultObjects(): List<ApiObject>
 | 
			
		||||
    suspend fun getResultObjectbyTag(tag: String): ApiObject?
 | 
			
		||||
    suspend fun getResultObjectbyTag(tag: UUID): ApiObject?
 | 
			
		||||
    suspend fun getResultObjectbyDate(date: LocalDate): List<ApiObject>?
 | 
			
		||||
    suspend fun getResultObjectbeforeDate(date: LocalDate): List<ApiObject>?
 | 
			
		||||
    suspend fun getResultObjectafterDate(date: LocalDate): List<ApiObject>?
 | 
			
		||||
 
 | 
			
		||||
@@ -9,6 +9,7 @@ import org.jetbrains.exposed.sql.select
 | 
			
		||||
import org.jetbrains.exposed.sql.selectAll
 | 
			
		||||
import org.jetbrains.exposed.sql.transactions.transaction
 | 
			
		||||
import java.time.LocalDate
 | 
			
		||||
import java.util.*
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class ResultObjectService : IResultObjectService {
 | 
			
		||||
@@ -26,7 +27,7 @@ class ResultObjectService : IResultObjectService {
 | 
			
		||||
        ResultObjects.selectAll().map { toResultObject(it) }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    override suspend fun getResultObjectbyTag(tag: String): ApiObject? = dbQuery {
 | 
			
		||||
    override suspend fun getResultObjectbyTag(tag: UUID): ApiObject? = dbQuery {
 | 
			
		||||
        ResultObjects.select {
 | 
			
		||||
            (ResultObjects.tag eq tag)
 | 
			
		||||
        }.mapNotNull { toResultObject(it) }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user