Fixing bankroll graph

dev
Laurent 7 years ago
parent 67bf8d5d79
commit 5445c62177
  1. 11
      app/src/main/java/net/pokeranalytics/android/calculus/bankroll/BankrollReport.kt
  2. 19
      app/src/main/java/net/pokeranalytics/android/model/realm/Transaction.kt

@ -94,7 +94,7 @@ class BankrollReport(var setup: BankrollReportSetup) : RowRepresentable {
var depositTotal: Double = 0.0 var depositTotal: Double = 0.0
set(value) { set(value) {
field = value field = value
this.netBanked = this.depositTotal + this.withdrawalTotal this.computeNetBanked()
} }
/** /**
@ -103,7 +103,14 @@ class BankrollReport(var setup: BankrollReportSetup) : RowRepresentable {
var withdrawalTotal: Double = 0.0 var withdrawalTotal: Double = 0.0
set(value) { set(value) {
field = value field = value
this.netBanked = this.depositTotal + this.withdrawalTotal this.computeNetBanked()
}
/**
* Computes the net banked amount
*/
private fun computeNetBanked() {
this.netBanked = this.withdrawalTotal - this.depositTotal
} }
/** /**

@ -6,6 +6,8 @@ import io.realm.annotations.Ignore
import io.realm.annotations.PrimaryKey import io.realm.annotations.PrimaryKey
import io.realm.kotlin.where import io.realm.kotlin.where
import net.pokeranalytics.android.R import net.pokeranalytics.android.R
import net.pokeranalytics.android.calculus.Stat
import net.pokeranalytics.android.calculus.TextFormat
import net.pokeranalytics.android.model.filter.Filterable import net.pokeranalytics.android.model.filter.Filterable
import net.pokeranalytics.android.model.filter.QueryCondition import net.pokeranalytics.android.model.filter.QueryCondition
import net.pokeranalytics.android.model.interfaces.DatedValue import net.pokeranalytics.android.model.interfaces.DatedValue
@ -13,14 +15,17 @@ import net.pokeranalytics.android.model.interfaces.Manageable
import net.pokeranalytics.android.model.interfaces.SaveValidityStatus import net.pokeranalytics.android.model.interfaces.SaveValidityStatus
import net.pokeranalytics.android.model.interfaces.TimeFilterable import net.pokeranalytics.android.model.interfaces.TimeFilterable
import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource
import net.pokeranalytics.android.ui.graph.GraphUnderlyingEntry
import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentable
import net.pokeranalytics.android.ui.view.RowViewType import net.pokeranalytics.android.ui.view.RowViewType
import net.pokeranalytics.android.ui.view.rowrepresentable.TransactionRow import net.pokeranalytics.android.ui.view.rowrepresentable.TransactionRow
import java.text.DateFormat
import java.util.* import java.util.*
import kotlin.collections.ArrayList import kotlin.collections.ArrayList
open class Transaction : RealmObject(), Manageable, StaticRowRepresentableDataSource, RowRepresentable, TimeFilterable, Filterable, DatedValue { open class Transaction : RealmObject(), Manageable, StaticRowRepresentableDataSource, RowRepresentable, TimeFilterable, Filterable, DatedValue,
GraphUnderlyingEntry {
companion object { companion object {
@ -120,4 +125,16 @@ open class Transaction : RealmObject(), Manageable, StaticRowRepresentableDataSo
} }
return SaveValidityStatus.VALID return SaveValidityStatus.VALID
} }
// GraphUnderlyingEntry
override val entryTitle: String
get() {
return DateFormat.getDateInstance(DateFormat.SHORT).format(this.date)
}
override fun formattedValue(stat: Stat): TextFormat {
return stat.format(this.amount)
}
} }

Loading…
Cancel
Save