diff --git a/app/src/main/java/net/pokeranalytics/android/model/Criteria.kt b/app/src/main/java/net/pokeranalytics/android/model/Criteria.kt index 16dda8da..56c68cb7 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/Criteria.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/Criteria.kt @@ -86,7 +86,7 @@ sealed class Criteria(override var uniqueIdentifier: Int) : IntIdentifiable, Row if (this is ValueCustomFields) { val realm = Realm.getDefaultInstance() - val distincts = realm.where().equalTo("customField.id", this.customField.id).distinct("numericValue").findAll().sort("numericValue", Sort.ASCENDING) + val distincts = realm.where().equalTo("customField.id", this.customField.id).distinct("value").findAll().sort("value", Sort.ASCENDING) realm.close() val objects = mutableListOf() @@ -103,6 +103,7 @@ sealed class Criteria(override var uniqueIdentifier: Int) : IntIdentifiable, Row } } + QueryCondition.distinct()?.let { val values = it.mapNotNull { session -> when (this) { @@ -157,8 +158,13 @@ sealed class Criteria(override var uniqueIdentifier: Int) : IntIdentifiable, Row object TournamentFees : ListCriteria(18) object Cash : SimpleCriteria(listOf(QueryCondition.IsCash), 19) object Tournament : SimpleCriteria(listOf(QueryCondition.IsTournament), 20) - data class ListCustomFields(var customField: CustomField) : RealmCriteria(21) - data class ValueCustomFields(var customField: CustomField) : ListCriteria(22) + data class ListCustomFields(override var customField: CustomField) : RealmCriteria(21), CustomFieldCriteria { + override var customFieldId: String = customField.id + } + + data class ValueCustomFields(override var customField: CustomField) : ListCriteria(22), CustomFieldCriteria { + override var customFieldId: String = customField.id + } val queries: List get() { @@ -310,3 +316,8 @@ sealed class Criteria(override var uniqueIdentifier: Int) : IntIdentifiable, Row } + +interface CustomFieldCriteria { + var customField: CustomField + var customFieldId: String +} \ No newline at end of file