diff --git a/changelog.md b/changelog.md index 36a8df1..0f8a19e 100644 --- a/changelog.md +++ b/changelog.md @@ -18,7 +18,7 @@ * Added work package config documentation. ### Fixes -* None. +* Fix inconsistency between GQL and python load override assignment. ### Notes * None. diff --git a/src/zepben/eas/client/eas_client.py b/src/zepben/eas/client/eas_client.py index 7fb3389..dab957f 100644 --- a/src/zepben/eas/client/eas_client.py +++ b/src/zepben/eas/client/eas_client.py @@ -222,15 +222,27 @@ async def async_get_work_package_cost_estimation(self, work_package: WorkPackage "timePeriod": { "startTime": config.load_time.start_time.isoformat(), "endTime": config.load_time.end_time.isoformat(), - "overrides": config.load_time.load_overrides and { - key: value.__dict__ - for key, value in config.load_time.load_overrides.items()} + "overrides": config.load_time.load_overrides and [ + { + "loadId": key, + "loadWattsOverride": value.load_watts, + "genWattsOverride": value.gen_watts, + "loadVarOverride": value.load_var, + "genVarOverride": value.gen_var, + } for key, value in config.load_time.load_overrides.items() + ] } if isinstance(config.load_time, TimePeriod) else None, "fixedTime": config.load_time and { "loadTime": config.load_time.time.isoformat(), - "overrides": config.load_time.load_overrides and { - key: value.__dict__ - for key, value in config.load_time.load_overrides.items()} + "overrides": config.load_time.load_overrides and [ + { + "loadId": key, + "loadWattsOverride": value.load_watts, + "genWattsOverride": value.gen_watts, + "loadVarOverride": value.load_var, + "genVarOverride": value.gen_var, + } for key, value in config.load_time.load_overrides.items() + ] } if isinstance(config.load_time, FixedTime) else None, } for config in work_package.syf_config.configs ] @@ -441,15 +453,27 @@ async def async_run_hosting_capacity_work_package(self, work_package: WorkPackag "timePeriod": { "startTime": config.load_time.start_time.isoformat(), "endTime": config.load_time.end_time.isoformat(), - "overrides": config.load_time.load_overrides and { - key: value.__dict__ - for key, value in config.load_time.load_overrides.items()} + "overrides": config.load_time.load_overrides and [ + { + "loadId": key, + "loadWattsOverride": value.load_watts, + "genWattsOverride": value.gen_watts, + "loadVarOverride": value.load_var, + "genVarOverride": value.gen_var, + } for key, value in config.load_time.load_overrides.items() + ] } if isinstance(config.load_time, TimePeriod) else None, "fixedTime": config.load_time and { "loadTime": config.load_time.time.isoformat(), - "overrides": config.load_time.load_overrides and { - key: value.__dict__ - for key, value in config.load_time.load_overrides.items()} + "overrides": config.load_time.load_overrides and [ + { + "loadId": key, + "loadWattsOverride": value.load_watts, + "genWattsOverride": value.gen_watts, + "loadVarOverride": value.load_var, + "genVarOverride": value.gen_var, + } for key, value in config.load_time.load_overrides.items() + ] } if isinstance(config.load_time, FixedTime) else None, } for config in work_package.syf_config.configs ]