30
30
from control .chargepoint .control_parameter import ControlParameter , control_parameter_factory
31
31
from control .chargepoint .charging_type import ChargingType
32
32
from control .chargepoint .rfid import ChargepointRfidMixin
33
+ from control .ev .charge_template import ChargeTemplate
33
34
from control .ev .ev import Ev
34
35
from control import phase_switch
35
36
from control .chargepoint .chargepoint_state import ChargepointState
@@ -240,7 +241,7 @@ def _process_charge_stop(self) -> None:
240
241
log .debug ("/set/manual_lock True" )
241
242
# Ev wurde noch nicht aktualisiert.
242
243
# Ladeprofil aus den Einstellungen laden.
243
- self ._update_charge_template (self .data .set .charging_ev_data )
244
+ self .update_charge_template (self .data .set .charging_ev_data . charge_template )
244
245
chargelog .save_and_reset_data (self , data .data .ev_data ["ev" + str (self .data .set .charging_ev_prev )])
245
246
self .data .set .charging_ev_prev = - 1
246
247
Pub ().pub ("openWB/set/chargepoint/" + str (self .num )+ "/set/charging_ev_prev" ,
@@ -654,7 +655,7 @@ def update_ev(self, ev_list: Dict[str, Ev]) -> None:
654
655
vehicle = - 1
655
656
self ._pub_configured_ev (ev_list )
656
657
if self .data .config .ev != self .data .set .ev_prev :
657
- self ._update_charge_template (ev_list [f"ev{ self .data .config .ev } " ])
658
+ self .update_charge_template (ev_list [f"ev{ self .data .config .ev } " ]. charge_template )
658
659
659
660
def update (self , ev_list : Dict [str , Ev ]) -> None :
660
661
try :
@@ -740,11 +741,11 @@ def update(self, ev_list: Dict[str, Ev]) -> None:
740
741
if vehicle != - 1 :
741
742
self ._pub_connected_vehicle (ev_list [f"ev{ vehicle } " ])
742
743
if self .data .set .charge_template .data .id != ev_list [f"ev{ vehicle } " ].charge_template .data .id :
743
- self ._update_charge_template (ev_list [f"ev{ vehicle } " ])
744
+ self .update_charge_template (ev_list [f"ev{ vehicle } " ]. charge_template )
744
745
else :
745
746
self ._pub_configured_ev (ev_list )
746
747
if self .data .set .charge_template .data .id != ev_list [f"ev{ self .data .config .ev } " ].charge_template .data .id :
747
- self ._update_charge_template (ev_list [f"ev{ self .data .config .ev } " ])
748
+ self .update_charge_template (ev_list [f"ev{ self .data .config .ev } " ]. charge_template )
748
749
# OCPP Start Transaction nach Anstecken
749
750
if ((self .data .get .plug_state and self .data .set .plug_state_prev is False ) or
750
751
(self .data .set .ocpp_transaction_id is None and self .data .get .charge_state )):
@@ -787,17 +788,17 @@ def _get_charging_ev(self, vehicle: int, ev_list: Dict[str, Ev]) -> Ev:
787
788
if self .data .set .charging_ev != vehicle and self .data .set .charging_ev_prev != vehicle :
788
789
Pub ().pub (f"openWB/set/vehicle/{ charging_ev .num } /get/force_soc_update" , True )
789
790
log .debug ("SoC nach EV-Wechsel" )
790
- self ._update_charge_template (charging_ev )
791
+ self .update_charge_template (charging_ev . charge_template )
791
792
if self .data .set .charge_template .data .id != charging_ev .charge_template .data .id :
792
- self ._update_charge_template (charging_ev )
793
+ self .update_charge_template (charging_ev )
793
794
self .data .set .charging_ev_data = charging_ev
794
795
self .data .set .charging_ev = vehicle
795
796
Pub ().pub ("openWB/set/chargepoint/" + str (self .num )+ "/set/charging_ev" , vehicle )
796
797
self .data .set .charging_ev_prev = vehicle
797
798
Pub ().pub ("openWB/set/chargepoint/" + str (self .num )+ "/set/charging_ev_prev" , vehicle )
798
799
return charging_ev
799
800
800
- def _update_charge_template (self , charging_ev_data : Ev ) -> None :
801
+ def update_charge_template (self , charge_template : ChargeTemplate ) -> None :
801
802
# evtl noch vorhandene, aber in den Einstellungen gelöschte Pläne entfernen
802
803
def on_connect (client , userdata , flags , rc ):
803
804
client .subscribe (f'openWB/chargepoint/{ self .num } /set/charge_template/#' , 2 )
@@ -808,7 +809,7 @@ def __get_payload(client, userdata, msg):
808
809
InternalBrokerClient ("processBrokerBranch" , on_connect , __get_payload ).start_finite_loop ()
809
810
for topic in received_topics :
810
811
Pub ().pub (topic , "" )
811
- self .data .set .charge_template = copy .deepcopy (charging_ev_data . charge_template )
812
+ self .data .set .charge_template = copy .deepcopy (charge_template )
812
813
pub_template = copy .deepcopy (self .data .set .charge_template .data )
813
814
pub_template = dataclasses .asdict (pub_template )
814
815
pub_template ["chargemode" ]["scheduled_charging" ]["plans" ].clear ()
0 commit comments