Restore persistence of limit soc and energy (#10979)
This commit is contained in:
parent
219dacdb06
commit
ff38abffd8
4 changed files with 10 additions and 8 deletions
|
|
@ -309,6 +309,12 @@ func (lp *Loadpoint) restoreSettings() {
|
|||
if v, err := lp.settings.Float(keys.PlanEnergy); err == nil {
|
||||
lp.planEnergy = v
|
||||
}
|
||||
if v, err := lp.settings.Int(keys.LimitSoc); err == nil {
|
||||
lp.limitSoc = int(v)
|
||||
}
|
||||
if v, err := lp.settings.Float(keys.LimitEnergy); err == nil {
|
||||
lp.limitEnergy = v
|
||||
}
|
||||
}
|
||||
|
||||
// requestUpdate requests site to update this loadpoint
|
||||
|
|
|
|||
|
|
@ -136,6 +136,7 @@ func (lp *Loadpoint) GetLimitSoc() int {
|
|||
func (lp *Loadpoint) setLimitSoc(soc int) {
|
||||
lp.limitSoc = soc
|
||||
lp.publish(keys.LimitSoc, soc)
|
||||
lp.settings.SetInt(keys.LimitSoc, int64(soc))
|
||||
}
|
||||
|
||||
// SetLimitSoc sets the session soc limit
|
||||
|
|
@ -163,6 +164,7 @@ func (lp *Loadpoint) GetLimitEnergy() float64 {
|
|||
func (lp *Loadpoint) setLimitEnergy(energy float64) {
|
||||
lp.limitEnergy = energy
|
||||
lp.publish(keys.LimitEnergy, energy)
|
||||
lp.settings.SetFloat(keys.LimitEnergy, energy)
|
||||
}
|
||||
|
||||
// SetLimitEnergy sets the session energy limit
|
||||
|
|
|
|||
|
|
@ -121,12 +121,6 @@ func (lp *Loadpoint) setActiveVehicle(v api.Vehicle) {
|
|||
lp.log.INFO.Printf("vehicle updated: %s -> %s", from, to)
|
||||
}
|
||||
|
||||
// reset session values
|
||||
lp.Lock()
|
||||
lp.setLimitSoc(0)
|
||||
lp.setLimitEnergy(0)
|
||||
lp.Unlock()
|
||||
|
||||
if v != nil {
|
||||
lp.socUpdated = time.Time{}
|
||||
|
||||
|
|
|
|||
|
|
@ -98,7 +98,7 @@ test.describe("limitEnergy", async () => {
|
|||
await page.reload();
|
||||
await expect(page.getByTestId("limit-energy-value")).toHaveText("10 kWh");
|
||||
});
|
||||
test("should be reset on vehicle change", async ({ page }) => {
|
||||
test("should not be reset on vehicle change", async ({ page }) => {
|
||||
await page.goto("/");
|
||||
|
||||
await page.getByRole("button", { name: "blauer e-Golf" }).click();
|
||||
|
|
@ -107,6 +107,6 @@ test.describe("limitEnergy", async () => {
|
|||
|
||||
await page.getByRole("button", { name: "grüner Honda e" }).click();
|
||||
await page.getByRole("button", { name: "Guest vehicle" }).click();
|
||||
await expect(page.getByTestId("limit-energy-value")).toHaveText("none");
|
||||
await expect(page.getByTestId("limit-energy-value")).toHaveText("10 kWh");
|
||||
});
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue