Merge pull request #1 from synebula-myths/dev

Dev
This commit is contained in:
2021-03-25 10:37:56 +08:00
committed by GitHub
6 changed files with 54 additions and 27 deletions

View File

@@ -28,7 +28,7 @@ interface IQueryApp<TView, TKey> : IApplication {
} }
@GetMapping @GetMapping
fun list(@RequestParam params: MutableMap<String, Any>): HttpMessage { fun list(@RequestParam params: LinkedHashMap<String, Any>): HttpMessage {
return this.doQuery("获取${this.name}列表数据失败") { return this.doQuery("获取${this.name}列表数据失败") {
this.query!!.list(params, clazz) this.query!!.list(params, clazz)
} }
@@ -38,11 +38,10 @@ interface IQueryApp<TView, TKey> : IApplication {
fun paging( fun paging(
@PathVariable size: Int, @PathVariable size: Int,
@PathVariable page: Int, @PathVariable page: Int,
@RequestParam parameters: MutableMap<String, Any> @RequestParam parameters: LinkedHashMap<String, Any>
): HttpMessage { ): HttpMessage {
return this.doQuery("获取${this.name}分页数据[条数:$size,页码:$page]失败") { return this.doQuery("获取${this.name}分页数据[条数:$size,页码:$page]失败") {
val data = Params(page, size) val data = Params(page, size, parameters)
data.parameters = parameters
this.query!!.paging(data, clazz) this.query!!.paging(data, clazz)
} }
} }

View File

@@ -10,5 +10,5 @@ package com.synebula.gaea.data.cache
interface ICache { interface ICache {
fun add(key: String, value: CacheEntity) fun add(key: String, value: CacheEntity)
operator fun get(key: String): CacheEntity operator fun get(key: String): CacheEntity?
} }

View File

@@ -8,13 +8,8 @@ package com.synebula.gaea.data.code
* @since 2016年10月24日 下午2:53:50 * @since 2016年10月24日 下午2:53:50
*/ */
class CompositeCode(val generators: List<ICodeGenerator<*>>?) : ICodeGenerator<String> { class CompositeCode(val generators: List<ICodeGenerator<*>>?) : ICodeGenerator<String> {
/*
* Method
*/
override fun generate(): String { override fun generate(): String {
if (this.generators == null || generators.size == 0) if (this.generators == null || generators.isEmpty())
return "" return ""
val buffer = StringBuffer() val buffer = StringBuffer()
for (generator in generators) { for (generator in generators) {

View File

@@ -29,11 +29,6 @@ class FixedSerialCode(
var step: Int = 1 var step: Int = 1
) : ICodeGenerator<String> { ) : ICodeGenerator<String> {
/*
* Method
*/
@Synchronized @Synchronized
override fun generate(): String { override fun generate(): String {
val value = this.seed val value = this.seed

View File

@@ -8,10 +8,7 @@ package com.synebula.gaea.data.code
* @since 2016年10月24日 下午4:07:10 * @since 2016年10月24日 下午4:07:10
*/ */
class ValueCode(var value: String) : ICodeGenerator<String> { class ValueCode(var value: String) : ICodeGenerator<String> {
/*
* Method
*/
override fun generate(): String { override fun generate(): String {
return this.value return this.value
} }

View File

@@ -11,36 +11,77 @@ import com.synebula.gaea.query.type.Order
*/ */
data class Params(var page: Int = 1, var size: Int = 10) { 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 * 数据索引从0开始。表示数据在总量的第几条。index = (page - 1) * size
*/ */
var index: Long = 0 var index: Long = 0
get() = (page.toLong() - 1) * size.toLong() get() = (page.toLong() - 1) * size
private set 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 { fun where(field: String, value: Any): Params {
parameters[field] = value _parameters[field] = value
return this return this
} }
/** /**
* 添加排序条件 * 添加排序条件
*/ */
fun addOrderBy(field: String, type: Order = Order.ASC): Params { fun order(field: String, order: Order = Order.ASC): Params {
orders[field] = type _orders[field] = order
return this return this
} }
} }