i am so pleased

This commit is contained in:
bel
2023-10-26 22:20:48 -06:00
parent 54940fab52
commit 8d004c44ce
2 changed files with 49 additions and 2 deletions

View File

@@ -39,9 +39,26 @@ func NewInterestPredictor(namePattern string, currencyPattern string, apy float6
func NewContributionPredictor(reg ledger.Register) Predictor {
monthlyRate := getMonthlyContributionRates(reg)
_ = monthlyRate
return newContributionPredictor(monthlyRate)
}
func newContributionPredictor(monthlyRate map[string]ledger.Balance) Predictor {
return func(given ledger.Balances, delta time.Duration) ledger.Balances {
panic(nil)
month := time.Hour * 24 * 365 / 12
months := float64(delta) / float64(month)
result := make(ledger.Balances)
for k, v := range given {
result[k] = maps.Clone(v)
}
for name := range monthlyRate {
if _, ok := result[name]; !ok {
result[name] = make(ledger.Balance)
}
for currency := range monthlyRate[name] {
result[name][currency] += monthlyRate[name][currency] * months
}
}
return result
}
}