def set_default_price(): if Charging.elec_price.is_enable(): conn = Database.get_db() charge_list = list( map( dict, conn.execute("SELECT * FROM battery WHERE price IS NULL"). fetchall())) for charge in charge_list: charge["price"] = Charging.elec_price.get_price( charge["start_at"], charge["stop_at"], charge["kw"]) Database.set_chargings_price(conn, charge["start_at"], charge["price"]) conn.close()
def capture_diffs_in_battery_table(timestamp, data, data_previous): # pylint: disable=unused-variable if timestamp is None: raise PreventUpdate diff_data = diff_dashtable(data, data_previous, "start_at") for changed_line in diff_data: if changed_line['column_name'] == 'price': conn = Database.get_db() if not Database.set_chargings_price( conn, changed_line['start_at'], changed_line['current_value']): logger.error("Can't find line to update in the database") conn.close() return ""
def capture_diffs_in_battery_table(timestamp, data, data_previous): if timestamp is None: raise PreventUpdate diff_data = diff_dashtable(data, data_previous, "start_at") for changed_line in diff_data: if changed_line['column_name'] == 'price': conn = Database.get_db() if not Database.set_chargings_price( conn, dash_date_to_datetime(changed_line['start_at']), changed_line['current_value']): logger.error( "Can't find line to update in the database") else: logger.debug("update price %s of %s", changed_line['current_value'], changed_line['start_at']) conn.close() return "" # don't need to update dashboard