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
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)
}
}

View File

@@ -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?
}

View File

@@ -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) {

View File

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

View File

@@ -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
}

View File

@@ -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()
get() = (page.toLong() - 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
}
}