|
|
|
|
@ -29,6 +29,9 @@ sealed class QueryCondition(var operator: Operator? = null) { |
|
|
|
|
this.valueMap = mapOf("ids" to id) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
class MoreQueryCondition : QueryCondition(Operator.MORE) |
|
|
|
|
class LessQueryCondition : QueryCondition(Operator.LESS) |
|
|
|
|
|
|
|
|
|
companion object { |
|
|
|
|
fun valueOf(name:String) : QueryCondition { |
|
|
|
|
val kClass = Class.forName("${QueryCondition::class.qualifiedName}$$name").kotlin |
|
|
|
|
@ -42,7 +45,10 @@ sealed class QueryCondition(var operator: Operator? = null) { |
|
|
|
|
enum class Operator { |
|
|
|
|
BETWEEN, |
|
|
|
|
MORE, |
|
|
|
|
LESS; |
|
|
|
|
LESS, |
|
|
|
|
BETWEEN_RIGHT_EXCLUSIVE, |
|
|
|
|
BETWEEN_LEFT_EXCLUSIVE, |
|
|
|
|
; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
object LIVE : QueryCondition() |
|
|
|
|
@ -98,7 +104,14 @@ sealed class QueryCondition(var operator: Operator? = null) { |
|
|
|
|
class BETWEEN_NUMBER_OF_PLAYER: QueryCondition(Operator.BETWEEN) |
|
|
|
|
class MORE_THAN_TOURNAMENT_FEE: QueryCondition(Operator.MORE) |
|
|
|
|
class LESS_THAN_TOURNAMENT_FEE: QueryCondition(Operator.LESS) |
|
|
|
|
class BETWEEN_TOURNAMENT_FEE: QueryCondition(Operator.BETWEEN) |
|
|
|
|
class BETWEEN_TOURNAMENT_FEE: QueryCondition(Operator.BETWEEN_RIGHT_EXCLUSIVE) { |
|
|
|
|
fun between(leftValue:Double, rightValue:Double) { |
|
|
|
|
this.valueMap = mapOf( |
|
|
|
|
"leftValue" to leftValue, |
|
|
|
|
"rightValue" to rightValue |
|
|
|
|
) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
class MIN_RE_BUY: QueryCondition(Operator.MORE) |
|
|
|
|
class MAX_RE_BUY: QueryCondition(Operator.LESS) |
|
|
|
|
|
|
|
|
|
@ -198,6 +211,16 @@ sealed class QueryCondition(var operator: Operator? = null) { |
|
|
|
|
val rightValue: Double by valueMap |
|
|
|
|
return realmQuery.between(fieldName, leftValue, rightValue) |
|
|
|
|
} |
|
|
|
|
Operator.BETWEEN_LEFT_EXCLUSIVE -> { |
|
|
|
|
val leftValue: Double by valueMap |
|
|
|
|
val rightValue: Double by valueMap |
|
|
|
|
return realmQuery.greaterThan(fieldName, leftValue).and().lessThanOrEqualTo(fieldName, rightValue) |
|
|
|
|
} |
|
|
|
|
Operator.BETWEEN_RIGHT_EXCLUSIVE-> { |
|
|
|
|
val leftValue: Double by valueMap |
|
|
|
|
val rightValue: Double by valueMap |
|
|
|
|
return realmQuery.greaterThanOrEqualTo(fieldName, leftValue).and().lessThan(fieldName, rightValue) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return when (this) { |
|
|
|
|
|