|
|
|
|
@ -19,6 +19,7 @@ import net.pokeranalytics.android.calculus.ComputedResults |
|
|
|
|
import net.pokeranalytics.android.calculus.Stat |
|
|
|
|
import net.pokeranalytics.android.model.comparison.Comparator |
|
|
|
|
import net.pokeranalytics.android.model.filter.QueryCondition |
|
|
|
|
import net.pokeranalytics.android.ui.activity.StatisticDetailsActivity |
|
|
|
|
import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity |
|
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter |
|
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate |
|
|
|
|
@ -72,6 +73,9 @@ class CalendarDetailsFragment : PokerAnalyticsFragment(), StaticRowRepresentable |
|
|
|
|
is GraphRow -> { |
|
|
|
|
//TODO: Open graph details |
|
|
|
|
toast("Open graph details") |
|
|
|
|
row.report.results.firstOrNull()?.group?.let { computableGroup -> |
|
|
|
|
StatisticDetailsActivity.newInstance(requireContext(), row.stat, computableGroup, row.report) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
@ -153,19 +157,27 @@ class CalendarDetailsFragment : PokerAnalyticsFragment(), StaticRowRepresentable |
|
|
|
|
val realm = Realm.getDefaultInstance() |
|
|
|
|
val conditions = ArrayList<QueryCondition>().apply { |
|
|
|
|
addAll(computedResults.group.conditions) |
|
|
|
|
|
|
|
|
|
// Remove session type conditions |
|
|
|
|
removeAll(Comparator.CASH.queryConditions) |
|
|
|
|
removeAll(Comparator.TOURNAMENT.queryConditions) |
|
|
|
|
|
|
|
|
|
when (sessionTypeCondition) { |
|
|
|
|
QueryCondition.CASH -> addAll(Comparator.CASH.queryConditions) |
|
|
|
|
QueryCondition.TOURNAMENT -> addAll(Comparator.TOURNAMENT.queryConditions) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
val options = Calculator.Options(evolutionValues = Calculator.Options.EvolutionValues.STANDARD) |
|
|
|
|
val requiredStats: List<Stat> = listOf(Stat.LOCATIONS_PLAYED, Stat.LONGEST_STREAKS, Stat.DAYS_PLAYED, Stat.STANDARD_DEVIATION_HOURLY) |
|
|
|
|
val options = Calculator.Options(evolutionValues = Calculator.Options.EvolutionValues.STANDARD, stats = requiredStats) |
|
|
|
|
val report = Calculator.computeStatsWithComparators(realm, conditions = conditions, options = options) |
|
|
|
|
|
|
|
|
|
Timber.d("Report take: ${System.currentTimeMillis() - startDate.time}ms") |
|
|
|
|
|
|
|
|
|
report.results.firstOrNull()?.let { |
|
|
|
|
|
|
|
|
|
// Create rows |
|
|
|
|
|
|
|
|
|
rowRepresentables.clear() |
|
|
|
|
rowRepresentables.add(CustomizableRowRepresentable(RowViewType.HEADER_TITLE, resId = R.string.net_result)) |
|
|
|
|
rowRepresentables.add(GraphRow(report, Stat.NETRESULT)) |
|
|
|
|
@ -192,7 +204,6 @@ class CalendarDetailsFragment : PokerAnalyticsFragment(), StaticRowRepresentable |
|
|
|
|
* Set data |
|
|
|
|
*/ |
|
|
|
|
fun setData(computedResults: ComputedResults?, sessionTypeCondition: QueryCondition?, title: String?) { |
|
|
|
|
Timber.d("Set data") |
|
|
|
|
|
|
|
|
|
this.computedResults = computedResults |
|
|
|
|
this.sessionTypeCondition = sessionTypeCondition |
|
|
|
|
|