Fixing issues due to modeling changes

dev
Laurent 7 years ago
parent 27a6571c02
commit 14f0971017
  1. 7
      app/src/main/java/net/pokeranalytics/android/model/Criteria.kt
  2. 2
      app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt

@ -16,7 +16,6 @@ import net.pokeranalytics.android.model.Criteria.TournamentFees.comparison
import net.pokeranalytics.android.model.Criteria.TournamentNames.comparison import net.pokeranalytics.android.model.Criteria.TournamentNames.comparison
import net.pokeranalytics.android.model.Criteria.TournamentTypes.comparison import net.pokeranalytics.android.model.Criteria.TournamentTypes.comparison
import net.pokeranalytics.android.model.Criteria.TransactionTypes.comparison import net.pokeranalytics.android.model.Criteria.TransactionTypes.comparison
import net.pokeranalytics.android.model.filter.FilterHelper
import net.pokeranalytics.android.model.filter.Query import net.pokeranalytics.android.model.filter.Query
import net.pokeranalytics.android.model.filter.QueryCondition import net.pokeranalytics.android.model.filter.QueryCondition
import net.pokeranalytics.android.model.interfaces.NameManageable import net.pokeranalytics.android.model.interfaces.NameManageable
@ -24,6 +23,7 @@ import net.pokeranalytics.android.model.realm.*
import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentable
import net.pokeranalytics.android.util.enumerations.IntIdentifiable import net.pokeranalytics.android.util.enumerations.IntIdentifiable
import net.pokeranalytics.android.util.enumerations.IntSearchable import net.pokeranalytics.android.util.enumerations.IntSearchable
import net.pokeranalytics.android.util.extensions.findById
fun List<Criteria>.combined(): List<Query> { fun List<Criteria>.combined(): List<Query> {
val comparatorList = ArrayList<List<Query>>() val comparatorList = ArrayList<List<Query>>()
@ -64,9 +64,12 @@ sealed class Criteria(override var uniqueIdentifier: Int) : IntIdentifiable, Row
if (this is ListCustomFields) { if (this is ListCustomFields) {
val objects = mutableListOf<QueryCondition.CustomFieldListQuery>() val objects = mutableListOf<QueryCondition.CustomFieldListQuery>()
val realm = Realm.getDefaultInstance() val realm = Realm.getDefaultInstance()
realm.where<CustomFieldEntry>().equalTo("customField.id", this.customField.id).findAll().forEach { realm.findById(CustomField::class.java, this.customFieldId)?.entries?.forEach {
objects.add(QueryCondition.CustomFieldListQuery(it)) objects.add(QueryCondition.CustomFieldListQuery(it))
} }
// realm.where<CustomFieldEntry>().equalTo("customField.id", this.customFieldId).findAll().forEach {
// objects.add(QueryCondition.CustomFieldListQuery(it))
// }
objects.sorted() objects.sorted()
realm.close() realm.close()
return objects.map { Query(it) } return objects.map { Query(it) }

@ -109,7 +109,7 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat
Duration::class.java -> "netDuration" Duration::class.java -> "netDuration"
CustomFieldListQuery::class.java -> "customFieldEntries.id" CustomFieldListQuery::class.java -> "customFieldEntries.id"
CustomFieldAmountQuery::class.java, CustomFieldNumberQuery::class.java -> "customFieldEntries.numericValue" CustomFieldAmountQuery::class.java, CustomFieldNumberQuery::class.java -> "customFieldEntries.numericValue"
CustomFieldQuery::class.java -> "customFieldEntries.customField.id" CustomFieldQuery::class.java -> "customFieldEntries.customFields.id"
else -> null else -> null
} }
} }

Loading…
Cancel
Save