Query changes
This commit is contained in:
parent
49a3002259
commit
a782ad4f8a
@ -1,16 +1,34 @@
|
|||||||
package no.iktdev.mediaprocessing.shared.common.dto
|
package no.iktdev.mediaprocessing.shared.common.dto
|
||||||
|
|
||||||
|
import org.springframework.util.LinkedMultiValueMap
|
||||||
|
import org.springframework.util.MultiValueMap
|
||||||
import java.time.Instant
|
import java.time.Instant
|
||||||
|
|
||||||
data class EventQuery(
|
data class EventQuery(
|
||||||
val referenceId: String? = null,
|
val referenceId: String? = null,
|
||||||
val eventId: String? = null,
|
val eventId: String? = null,
|
||||||
val event: String? = null,
|
|
||||||
val from: Instant? = null,
|
val from: Instant? = null,
|
||||||
val to: Instant? = null,
|
val to: Instant? = null,
|
||||||
override val sort: String = "persistedAt",
|
override val sort: String = "persistedAt",
|
||||||
override val order: Sort = Sort.DESC,
|
override val order: Sort = Sort.DESC,
|
||||||
override val page: Int = 0,
|
override val page: Int = 0,
|
||||||
override val pageSize: Int = 50
|
override val pageSize: Int = 50,
|
||||||
) : PagedQuery
|
override val key: String?
|
||||||
|
) : PagedQuery {
|
||||||
|
|
||||||
|
fun toQueryParams(): MultiValueMap<String, String> {
|
||||||
|
val params = LinkedMultiValueMap<String, String>()
|
||||||
|
key?.let { params.add("key", it) }
|
||||||
|
referenceId?.let { params.add("referenceId", it) }
|
||||||
|
eventId?.let { params.add("eventId", it) }
|
||||||
|
from?.let { params.add("from", it.toString()) }
|
||||||
|
to?.let { params.add("to", it.toString()) }
|
||||||
|
params.add("sort", sort)
|
||||||
|
params.add("order", order.name)
|
||||||
|
params.add("page", page.toString())
|
||||||
|
params.add("pageSize", pageSize.toString())
|
||||||
|
|
||||||
|
return params
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@ -5,4 +5,5 @@ interface PagedQuery {
|
|||||||
val pageSize: Int
|
val pageSize: Int
|
||||||
val sort: String
|
val sort: String
|
||||||
val order: Sort
|
val order: Sort
|
||||||
|
val key: String?
|
||||||
}
|
}
|
||||||
|
|||||||
@ -14,11 +14,13 @@ data class TaskQuery(
|
|||||||
override val sort: String = "persistedAt",
|
override val sort: String = "persistedAt",
|
||||||
override val order: Sort = Sort.DESC,
|
override val order: Sort = Sort.DESC,
|
||||||
override val page: Int = 0,
|
override val page: Int = 0,
|
||||||
override val pageSize: Int = 50
|
override val pageSize: Int = 50,
|
||||||
|
override val key: String? = null
|
||||||
): PagedQuery {
|
): PagedQuery {
|
||||||
fun toQueryParams(): MultiValueMap<String, String> {
|
fun toQueryParams(): MultiValueMap<String, String> {
|
||||||
val params = LinkedMultiValueMap<String, String>()
|
val params = LinkedMultiValueMap<String, String>()
|
||||||
|
|
||||||
|
key?.let { params.add("key", it) }
|
||||||
status?.forEach { params.add("status", it) }
|
status?.forEach { params.add("status", it) }
|
||||||
claimed?.let { params.add("claimed", it.toString()) }
|
claimed?.let { params.add("claimed", it.toString()) }
|
||||||
consumed?.let { params.add("consumed", it.toString()) }
|
consumed?.let { params.add("consumed", it.toString()) }
|
||||||
|
|||||||
@ -37,7 +37,7 @@ object EventStore: EventStore {
|
|||||||
where { EventsTable.eventId like "%$id%" }
|
where { EventsTable.eventId like "%$id%" }
|
||||||
}
|
}
|
||||||
|
|
||||||
query.event?.let { ev ->
|
query.key?.let { ev ->
|
||||||
where { EventsTable.event like "%$ev%" }
|
where { EventsTable.event like "%$ev%" }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -36,7 +36,9 @@ object TaskStore: TaskStore {
|
|||||||
val enums = statuses.map { TaskStatus.valueOf(it) }
|
val enums = statuses.map { TaskStatus.valueOf(it) }
|
||||||
where { TasksTable.status inList enums }
|
where { TasksTable.status inList enums }
|
||||||
}
|
}
|
||||||
|
query.key?.let { k ->
|
||||||
|
where { TasksTable.task like "%$k%" }
|
||||||
|
}
|
||||||
query.claimed?.let { where { TasksTable.claimed eq it } }
|
query.claimed?.let { where { TasksTable.claimed eq it } }
|
||||||
query.consumed?.let { where { TasksTable.consumed eq it } }
|
query.consumed?.let { where { TasksTable.consumed eq it } }
|
||||||
query.referenceId?.let { where { TasksTable.referenceId like "%$it%" } }
|
query.referenceId?.let { where { TasksTable.referenceId like "%$it%" } }
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user