Refactor ChargeRemainder into ChargeFinishTimer (#352)

This commit is contained in:
andig 2020-09-16 08:00:57 +02:00 • committed by GitHub
parent 0f73d5d7d9
commit c78a43b340
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 46 additions and 28 deletions

View file

@ -54,9 +54,10 @@ func (s *SocEstimator) RemainingChargeDuration(chargePower float64, targetSoC in
}
// use vehicle api if available
if vr, ok := s.vehicle.(api.ChargeRemainder); ok {
timeRemaining, err := vr.RemainingTime()
if vr, ok := s.vehicle.(api.ChargeFinishTimer); ok {
finishTime, err := vr.FinishTime()
if err == nil {
timeRemaining := time.Until(finishTime)
return time.Duration(float64(timeRemaining) * percentRemaining / (100 - s.socCharge))
}