修改代码格式等;调整分页参如兼容@排序字段
This commit is contained in:
@@ -28,7 +28,7 @@ interface IQueryApp<TView, TKey> : IApplication {
|
||||
}
|
||||
|
||||
@GetMapping
|
||||
fun list(@RequestParam params: MutableMap<String, Any>): HttpMessage {
|
||||
fun list(@RequestParam params: LinkedHashMap<String, Any>): HttpMessage {
|
||||
return this.doQuery("获取${this.name}列表数据失败") {
|
||||
this.query!!.list(params, clazz)
|
||||
}
|
||||
@@ -38,11 +38,10 @@ interface IQueryApp<TView, TKey> : IApplication {
|
||||
fun paging(
|
||||
@PathVariable size: Int,
|
||||
@PathVariable page: Int,
|
||||
@RequestParam parameters: MutableMap<String, Any>
|
||||
@RequestParam parameters: LinkedHashMap<String, Any>
|
||||
): HttpMessage {
|
||||
return this.doQuery("获取${this.name}分页数据[条数:$size,页码:$page]失败") {
|
||||
val data = Params(page, size)
|
||||
data.parameters = parameters
|
||||
val data = Params(page, size, parameters)
|
||||
this.query!!.paging(data, clazz)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,5 +10,5 @@ package com.synebula.gaea.data.cache
|
||||
interface ICache {
|
||||
fun add(key: String, value: CacheEntity)
|
||||
|
||||
operator fun get(key: String): CacheEntity
|
||||
operator fun get(key: String): CacheEntity?
|
||||
}
|
||||
|
||||
@@ -8,13 +8,8 @@ package com.synebula.gaea.data.code
|
||||
* @since 2016年10月24日 下午2:53:50
|
||||
*/
|
||||
class CompositeCode(val generators: List<ICodeGenerator<*>>?) : ICodeGenerator<String> {
|
||||
|
||||
/*
|
||||
* Method
|
||||
*/
|
||||
|
||||
override fun generate(): String {
|
||||
if (this.generators == null || generators.size == 0)
|
||||
if (this.generators == null || generators.isEmpty())
|
||||
return ""
|
||||
val buffer = StringBuffer()
|
||||
for (generator in generators) {
|
||||
|
||||
@@ -29,11 +29,6 @@ class FixedSerialCode(
|
||||
var step: Int = 1
|
||||
) : ICodeGenerator<String> {
|
||||
|
||||
|
||||
/*
|
||||
* Method
|
||||
*/
|
||||
|
||||
@Synchronized
|
||||
override fun generate(): String {
|
||||
val value = this.seed
|
||||
|
||||
@@ -8,10 +8,7 @@ package com.synebula.gaea.data.code
|
||||
* @since 2016年10月24日 下午4:07:10
|
||||
*/
|
||||
class ValueCode(var value: String) : ICodeGenerator<String> {
|
||||
|
||||
/*
|
||||
* Method
|
||||
*/
|
||||
|
||||
override fun generate(): String {
|
||||
return this.value
|
||||
}
|
||||
|
||||
@@ -11,36 +11,77 @@ import com.synebula.gaea.query.type.Order
|
||||
*/
|
||||
data class Params(var page: Int = 1, var size: Int = 10) {
|
||||
|
||||
private var _parameters = mutableMapOf<String, Any>()
|
||||
private var _orders = mutableMapOf<String, Order>()
|
||||
|
||||
/**
|
||||
* 数据索引,从0开始。表示数据在总量的第几条。(index = (page - 1) * size)
|
||||
*/
|
||||
var index: Long = 0
|
||||
get() = (page.toLong() - 1) * size.toLong()
|
||||
var index: Int = 0
|
||||
get() = (page - 1) * size
|
||||
private set
|
||||
|
||||
/**
|
||||
* 排序条件。
|
||||
*/
|
||||
var orders: MutableMap<String, Order> = hashMapOf()
|
||||
var orders: Map<String, Order>
|
||||
set(value) {
|
||||
this._orders = value.toMutableMap()
|
||||
}
|
||||
get() {
|
||||
if (this._parameters.keys.count { it.startsWith("@") } > 0) {
|
||||
val params = mutableMapOf<String, Any>()
|
||||
this._parameters.forEach {
|
||||
if (it.key.startsWith("@")) {
|
||||
this._orders[it.key.removePrefix("@")] = Order.valueOf(it.value.toString())
|
||||
} else
|
||||
params[it.key] = it.value
|
||||
}
|
||||
this._parameters = params
|
||||
}
|
||||
return this._orders
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询条件。
|
||||
*/
|
||||
var parameters: MutableMap<String, Any> = hashMapOf()
|
||||
var parameters: Map<String, Any>
|
||||
set(value) {
|
||||
this._parameters = value.toMutableMap()
|
||||
}
|
||||
get() {
|
||||
if (this._parameters.keys.count { it.startsWith("@") } > 0) {
|
||||
val params = mutableMapOf<String, Any>()
|
||||
this._parameters.forEach {
|
||||
if (it.key.startsWith("@")) {
|
||||
this._orders[it.key.removePrefix("@")] = Order.valueOf(it.value.toString())
|
||||
} else
|
||||
params[it.key] = it.value
|
||||
}
|
||||
this._parameters = params
|
||||
}
|
||||
return this._parameters
|
||||
}
|
||||
|
||||
constructor(page: Int, size: Int, parameters: LinkedHashMap<String, Any>) : this(page, size) {
|
||||
this.page = page
|
||||
this.size = size
|
||||
this._parameters = parameters
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加查询条件
|
||||
*/
|
||||
fun addParameter(field: String, value: Any): Params {
|
||||
parameters[field] = value
|
||||
fun where(field: String, value: Any): Params {
|
||||
_parameters[field] = value
|
||||
return this
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加排序条件
|
||||
*/
|
||||
fun addOrderBy(field: String, type: Order = Order.ASC): Params {
|
||||
orders[field] = type
|
||||
fun order(field: String, order: Order = Order.ASC): Params {
|
||||
_orders[field] = order
|
||||
return this
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user