From b26071e8fcdb752b183a8b5d105a8f3ba00b4ab7 Mon Sep 17 00:00:00 2001 From: Khalim Conn-Kowlessar Date: Sat, 9 Aug 2025 19:24:16 +0100 Subject: [PATCH] handle smokeless coal boiler --- backend/Funding.py | 5 +++-- backend/tests/test_funding.py | 7 +++++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/backend/Funding.py b/backend/Funding.py index 0aa86545..8ae82d48 100644 --- a/backend/Funding.py +++ b/backend/Funding.py @@ -384,12 +384,13 @@ class Funding: if mainheating["has_boiler"] and ( main_fuel["fuel_type"] in [ - "dual fuel appliance mineral and wood", "manufactured smokeless fuel", "dual fuel mineral wood" + "dual fuel appliance mineral and wood", "manufactured smokeless fuel", "dual fuel mineral wood", + "smokeless coal" ] ) and (mainheat_energy_eff in ["Average", "Very Poor", "Poor"]): return 'Solid Fossil Boiler' - if mainheating["has_ground_source_heat_pump"]: + if mainheating["has_ground_source_heat_pump"] or mainheating["has_water_source_heat_pump"]: return 'GSHP' if mainheating["has_boiler"] and (main_fuel["fuel_type"] in ["electric", "electricity"]): diff --git a/backend/tests/test_funding.py b/backend/tests/test_funding.py index 1608ca39..f64089f7 100644 --- a/backend/tests/test_funding.py +++ b/backend/tests/test_funding.py @@ -1075,3 +1075,10 @@ for _, x in tqdm(epc_df.iterrows(), total=len(epc_df)): errors.append(x["LMK_KEY"]) errored_epcs = epc_df[epc_df["LMK_KEY"].isin(errors)] +unique_combs = errored_epcs[["MAINHEAT_ENERGY_EFF", "MAINHEAT_DESCRIPTION", "MAIN_FUEL"]].drop_duplicates() +i = 0 +x = errored_epcs[ + (errored_epcs["MAINHEAT_ENERGY_EFF"] == unique_combs["MAINHEAT_ENERGY_EFF"].values[i]) & + (errored_epcs["MAINHEAT_DESCRIPTION"] == unique_combs["MAINHEAT_DESCRIPTION"].values[i]) & + (errored_epcs["MAIN_FUEL"] == unique_combs["MAIN_FUEL"].values[i]) + ].head(1).squeeze()