mirror of
https://github.com/tursom/TursomServer.git
synced 2025-03-13 19:30:10 +08:00
update ts-database
This commit is contained in:
parent
49a6df2e55
commit
7654e4b7fa
@ -1,13 +0,0 @@
|
|||||||
package cn.tursom.database.mybatisplus
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
|
|
||||||
|
|
||||||
class DdbesUpdateWrapper<T>(
|
|
||||||
override val enhanceEntityClass: Class<T>,
|
|
||||||
) : UpdateWrapper<T>(),
|
|
||||||
UpdateEnhance<T, DdbesUpdateWrapper<T>>,
|
|
||||||
DdbesWrapperEnhance<T, UpdateWrapper<T>, DdbesUpdateWrapper<T>> {
|
|
||||||
companion object {
|
|
||||||
inline operator fun <reified T> invoke() = DdbesUpdateWrapper(T::class.java)
|
|
||||||
}
|
|
||||||
}
|
|
@ -12,7 +12,7 @@ import kotlin.reflect.jvm.isAccessible
|
|||||||
|
|
||||||
@Suppress("unused")
|
@Suppress("unused")
|
||||||
@MybatisPlusEnhanceDslMaker
|
@MybatisPlusEnhanceDslMaker
|
||||||
interface CompareEnhance<T, out W : AbstractWrapper<T, String, out W>, Children : Wrapper<T>> :
|
interface EnhanceCompare<T, out W : AbstractWrapper<T, String, out W>, Children : Wrapper<T>> :
|
||||||
EnhanceEntityClassEnhance<T>,
|
EnhanceEntityClassEnhance<T>,
|
||||||
RegexAbstractWrapperEnhance<T, W, Children> {
|
RegexAbstractWrapperEnhance<T, W, Children> {
|
||||||
val compare: Compare<Children, String> get() = uncheckedCast()
|
val compare: Compare<Children, String> get() = uncheckedCast()
|
@ -3,8 +3,8 @@ package cn.tursom.database.mybatisplus
|
|||||||
import com.baomidou.mybatisplus.core.conditions.AbstractWrapper
|
import com.baomidou.mybatisplus.core.conditions.AbstractWrapper
|
||||||
import com.baomidou.mybatisplus.core.conditions.Wrapper
|
import com.baomidou.mybatisplus.core.conditions.Wrapper
|
||||||
|
|
||||||
inline fun <C : CompareEnhance<T, W, Children>, T, W : AbstractWrapper<T, String, W>, Children : Wrapper<T>> C.compare(
|
inline fun <C : EnhanceCompare<T, W, Children>, T, W : AbstractWrapper<T, String, W>, Children : Wrapper<T>> C.compare(
|
||||||
compare: CompareEnhance<T, W, Children>.() -> Unit
|
compare: EnhanceCompare<T, W, Children>.() -> Unit
|
||||||
): C {
|
): C {
|
||||||
compare()
|
compare()
|
||||||
return this
|
return this
|
||||||
@ -24,24 +24,24 @@ inline fun <C : JoinEnhance<Children>, Children> C.join(
|
|||||||
return this
|
return this
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fun <C : QueryEnhance<T, Children>, T, Children : Wrapper<T>> C.query(
|
inline fun <C : EnhanceQuery<T, Children>, T, Children : Wrapper<T>> C.query(
|
||||||
query: QueryEnhance<T, Children>.() -> Unit
|
query: EnhanceQuery<T, Children>.() -> Unit
|
||||||
): C {
|
): C {
|
||||||
query()
|
query()
|
||||||
return this
|
return this
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fun <C : UpdateEnhance<T, Children>, T, Children : Wrapper<T>> C.update(
|
inline fun <C : EnhanceUpdate<T, Children>, T, Children : Wrapper<T>> C.update(
|
||||||
update: UpdateEnhance<T, Children>.() -> Unit
|
update: EnhanceUpdate<T, Children>.() -> Unit
|
||||||
): C {
|
): C {
|
||||||
update()
|
update()
|
||||||
return this
|
return this
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fun <C : DdbesWrapperEnhance<T, W, EnhanceWrapper>,
|
inline fun <C : KtEnhanceWrapper<T, W, EnhanceWrapper>,
|
||||||
T, W : AbstractWrapper<T, String, out W>, EnhanceWrapper : Wrapper<T>>
|
T, W : AbstractWrapper<T, String, out W>, EnhanceWrapper : Wrapper<T>>
|
||||||
C.query(
|
C.query(
|
||||||
query: DdbesWrapperEnhance<T, W, EnhanceWrapper>.() -> Unit
|
query: KtEnhanceWrapper<T, W, EnhanceWrapper>.() -> Unit
|
||||||
): C {
|
): C {
|
||||||
query()
|
query()
|
||||||
return this
|
return this
|
||||||
|
@ -8,7 +8,7 @@ import kotlin.reflect.KProperty1
|
|||||||
|
|
||||||
@Suppress("unused")
|
@Suppress("unused")
|
||||||
@MybatisPlusEnhanceDslMaker
|
@MybatisPlusEnhanceDslMaker
|
||||||
interface QueryEnhance<T, out Children : Wrapper<T>> : EnhanceEntityClassEnhance<T> {
|
interface EnhanceQuery<T, out Children : Wrapper<T>> : EnhanceEntityClassEnhance<T> {
|
||||||
val query: Query<out Children, T, out Any> get() = uncheckedCast()
|
val query: Query<out Children, T, out Any> get() = uncheckedCast()
|
||||||
|
|
||||||
fun select(
|
fun select(
|
@ -9,7 +9,7 @@ import kotlin.reflect.KProperty1
|
|||||||
import kotlin.reflect.jvm.javaField
|
import kotlin.reflect.jvm.javaField
|
||||||
|
|
||||||
@MybatisPlusEnhanceDslMaker
|
@MybatisPlusEnhanceDslMaker
|
||||||
interface UpdateEnhance<T, out Children : Wrapper<T>> {
|
interface EnhanceUpdate<T, out Children : Wrapper<T>> {
|
||||||
val update: Update<out Children, String> get() = uncheckedCast()
|
val update: Update<out Children, String> get() = uncheckedCast()
|
||||||
|
|
||||||
infix fun KProperty1<T, *>.set(
|
infix fun KProperty1<T, *>.set(
|
@ -6,70 +6,70 @@ import com.baomidou.mybatisplus.extension.service.IService
|
|||||||
|
|
||||||
|
|
||||||
inline fun <reified T> IService<T>.update(
|
inline fun <reified T> IService<T>.update(
|
||||||
wrapperBuilder: DdbesUpdateWrapper<T>.() -> Unit
|
wrapperBuilder: KtEnhanceUpdateWrapper<T>.() -> Unit
|
||||||
): Boolean {
|
): Boolean {
|
||||||
val wrapper = DdbesUpdateWrapper<T>()
|
val wrapper = KtEnhanceUpdateWrapper<T>()
|
||||||
wrapper.wrapperBuilder()
|
wrapper.wrapperBuilder()
|
||||||
return update(wrapper)
|
return update(wrapper)
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fun <reified T> IService<T>.update(
|
inline fun <reified T> IService<T>.update(
|
||||||
queryBuilder: DdbesWrapperEnhance<T, UpdateWrapper<T>, DdbesUpdateWrapper<T>>.() -> Unit,
|
queryBuilder: KtEnhanceWrapper<T, UpdateWrapper<T>, KtEnhanceUpdateWrapper<T>>.() -> Unit,
|
||||||
updateBuilder: UpdateEnhance<T, DdbesUpdateWrapper<T>>.() -> Unit
|
updateBuilder: EnhanceUpdate<T, KtEnhanceUpdateWrapper<T>>.() -> Unit
|
||||||
): Boolean {
|
): Boolean {
|
||||||
val wrapper = DdbesUpdateWrapper<T>()
|
val wrapper = KtEnhanceUpdateWrapper<T>()
|
||||||
wrapper.queryBuilder()
|
wrapper.queryBuilder()
|
||||||
wrapper.updateBuilder()
|
wrapper.updateBuilder()
|
||||||
return update(wrapper)
|
return update(wrapper)
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fun <reified T> IService<T>.remove(
|
inline fun <reified T> IService<T>.remove(
|
||||||
wrapperBuilder: DdbesQueryWrapper<T>.() -> Unit
|
wrapperBuilder: KtEnhanceQueryWrapper<T>.() -> Unit
|
||||||
): Boolean {
|
): Boolean {
|
||||||
val wrapper = DdbesQueryWrapper<T>()
|
val wrapper = KtEnhanceQueryWrapper<T>()
|
||||||
wrapper.wrapperBuilder()
|
wrapper.wrapperBuilder()
|
||||||
return remove(wrapper)
|
return remove(wrapper)
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fun <reified T> IService<T>.getOne(
|
inline fun <reified T> IService<T>.getOne(
|
||||||
throwEx: Boolean = true,
|
throwEx: Boolean = true,
|
||||||
wrapperBuilder: DdbesQueryWrapper<T>.() -> Unit
|
wrapperBuilder: KtEnhanceQueryWrapper<T>.() -> Unit
|
||||||
): T {
|
): T {
|
||||||
val wrapper = DdbesQueryWrapper<T>()
|
val wrapper = KtEnhanceQueryWrapper<T>()
|
||||||
wrapper.wrapperBuilder()
|
wrapper.wrapperBuilder()
|
||||||
return getOne(wrapper, throwEx)
|
return getOne(wrapper, throwEx)
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fun <reified T> IService<T>.count(
|
inline fun <reified T> IService<T>.count(
|
||||||
wrapperBuilder: DdbesQueryWrapper<T>.() -> Unit
|
wrapperBuilder: KtEnhanceQueryWrapper<T>.() -> Unit
|
||||||
): Long {
|
): Long {
|
||||||
val wrapper = DdbesQueryWrapper<T>()
|
val wrapper = KtEnhanceQueryWrapper<T>()
|
||||||
wrapper.wrapperBuilder()
|
wrapper.wrapperBuilder()
|
||||||
return count(wrapper)
|
return count(wrapper)
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fun <reified T> IService<T>.list(
|
inline fun <reified T> IService<T>.list(
|
||||||
wrapperBuilder: DdbesQueryWrapper<T>.() -> Unit
|
wrapperBuilder: KtEnhanceQueryWrapper<T>.() -> Unit
|
||||||
): List<T> {
|
): List<T> {
|
||||||
val wrapper = DdbesQueryWrapper<T>()
|
val wrapper = KtEnhanceQueryWrapper<T>()
|
||||||
wrapper.wrapperBuilder()
|
wrapper.wrapperBuilder()
|
||||||
return list(wrapper)
|
return list(wrapper)
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fun <reified T, E : IPage<T>> IService<T>.page(
|
inline fun <reified T, E : IPage<T>> IService<T>.page(
|
||||||
page: E,
|
page: E,
|
||||||
wrapperBuilder: DdbesQueryWrapper<T>.() -> Unit
|
wrapperBuilder: KtEnhanceQueryWrapper<T>.() -> Unit
|
||||||
): E {
|
): E {
|
||||||
val wrapper = DdbesQueryWrapper<T>()
|
val wrapper = KtEnhanceQueryWrapper<T>()
|
||||||
wrapper.wrapperBuilder()
|
wrapper.wrapperBuilder()
|
||||||
return page(page, wrapper)
|
return page(page, wrapper)
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fun <reified T, E : IPage<Map<String, Any>>> IService<T>.pageMaps(
|
inline fun <reified T, E : IPage<Map<String, Any>>> IService<T>.pageMaps(
|
||||||
page: E,
|
page: E,
|
||||||
wrapperBuilder: DdbesQueryWrapper<T>.() -> Unit
|
wrapperBuilder: KtEnhanceQueryWrapper<T>.() -> Unit
|
||||||
): E {
|
): E {
|
||||||
val wrapper = DdbesQueryWrapper<T>()
|
val wrapper = KtEnhanceQueryWrapper<T>()
|
||||||
wrapper.wrapperBuilder()
|
wrapper.wrapperBuilder()
|
||||||
return pageMaps(page, wrapper)
|
return pageMaps(page, wrapper)
|
||||||
}
|
}
|
||||||
|
@ -2,17 +2,17 @@ package cn.tursom.database.mybatisplus
|
|||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
|
||||||
|
|
||||||
class DdbesQueryWrapper<T>(
|
class KtEnhanceQueryWrapper<T>(
|
||||||
override var enhanceEntityClass: Class<T>
|
override var enhanceEntityClass: Class<T>
|
||||||
) : QueryWrapper<T>(),
|
) : QueryWrapper<T>(),
|
||||||
QueryEnhance<T, DdbesQueryWrapper<T>>,
|
EnhanceQuery<T, KtEnhanceQueryWrapper<T>>,
|
||||||
DdbesWrapperEnhance<T, QueryWrapper<T>, DdbesQueryWrapper<T>> {
|
KtEnhanceWrapper<T, QueryWrapper<T>, KtEnhanceQueryWrapper<T>> {
|
||||||
init {
|
init {
|
||||||
this.entityClass = enhanceEntityClass
|
this.entityClass = enhanceEntityClass
|
||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
inline operator fun <reified T> invoke() = DdbesQueryWrapper(T::class.java)
|
inline operator fun <reified T> invoke() = KtEnhanceQueryWrapper(T::class.java)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -0,0 +1,13 @@
|
|||||||
|
package cn.tursom.database.mybatisplus
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
|
||||||
|
|
||||||
|
class KtEnhanceUpdateWrapper<T>(
|
||||||
|
override val enhanceEntityClass: Class<T>,
|
||||||
|
) : UpdateWrapper<T>(),
|
||||||
|
EnhanceUpdate<T, KtEnhanceUpdateWrapper<T>>,
|
||||||
|
KtEnhanceWrapper<T, UpdateWrapper<T>, KtEnhanceUpdateWrapper<T>> {
|
||||||
|
companion object {
|
||||||
|
inline operator fun <reified T> invoke() = KtEnhanceUpdateWrapper(T::class.java)
|
||||||
|
}
|
||||||
|
}
|
@ -8,8 +8,8 @@ import com.baomidou.mybatisplus.core.conditions.interfaces.Join
|
|||||||
import com.baomidou.mybatisplus.core.conditions.interfaces.Nested
|
import com.baomidou.mybatisplus.core.conditions.interfaces.Nested
|
||||||
|
|
||||||
@MybatisPlusEnhanceDslMaker
|
@MybatisPlusEnhanceDslMaker
|
||||||
interface DdbesWrapperEnhance<T, W : AbstractWrapper<T, String, out W>, EnhanceWrapper : Wrapper<T>> :
|
interface KtEnhanceWrapper<T, W : AbstractWrapper<T, String, out W>, EnhanceWrapper : Wrapper<T>> :
|
||||||
CompareEnhance<T, W, EnhanceWrapper>,
|
EnhanceCompare<T, W, EnhanceWrapper>,
|
||||||
JoinEnhance<EnhanceWrapper>,
|
JoinEnhance<EnhanceWrapper>,
|
||||||
FuncEnhance<T, EnhanceWrapper>,
|
FuncEnhance<T, EnhanceWrapper>,
|
||||||
Compare<W, String>,
|
Compare<W, String>,
|
Loading…
Reference in New Issue
Block a user