diff --git a/etl/eligibility/ha_15_32/ha_analysis_batch_3.py b/etl/eligibility/ha_15_32/ha_analysis_batch_3.py index 191ca74c..ac4d3a0c 100644 --- a/etl/eligibility/ha_15_32/ha_analysis_batch_3.py +++ b/etl/eligibility/ha_15_32/ha_analysis_batch_3.py @@ -2956,14 +2956,14 @@ def forecast_remaining_sales(loader): gbis_total = eligiblity_counts[ eligiblity_counts["ECO Eligibility"] == "gbis" ]["count"].sum() - gbis_total = np.round(gbis_total * ha_gbis_sale_conversion) - gbis_total_revenue = gbis_total * gbis_rate + gbis_total = int(np.round(gbis_total * ha_gbis_sale_conversion)) + gbis_total_revenue = int(gbis_total * gbis_rate) gbis_remaining = eligiblity_counts_remaining[ eligiblity_counts["ECO Eligibility"] == "gbis" ]["count"].sum() - gbis_remaining = np.round(gbis_remaining * ha_gbis_sale_conversion) - gbis_remaining_revenue = gbis_remaining * gbis_rate + gbis_remaining = int(np.round(gbis_remaining * ha_gbis_sale_conversion)) + gbis_remaining_revenue = int(gbis_remaining * gbis_rate) to_append = { ("", "", "", "HA Name"): ha_name, @@ -3037,12 +3037,37 @@ def forecast_remaining_sales(loader): # TODO: Add a blank row and then a total row - assumptions = { - "ECO4 new rate": eco4_rate, - "GBIS new rate": gbis_rate, - # "ECO4 old rate": old_eco4_rate, - # "GBIS old rate": old_gbis_rate, - } + assumptions = [ + { + ("", "", "", "HA Name"): "ECO4 rate", + ("", "Original Warmfront estimate", "Total - #", "ECO4 - November"): "£" + str(eco4_rate) + }, + { + ("", "", "", "HA Name"): "GBIS rate", + ("ECO4 original", "", "Remaining - #", ""): "£" + str(gbis_rate) + }, + { + ("", "", "", "HA Name"): "Median CIGA pass rate", + ("ECO4 original", "", "Total - £", ""): str(round(median_ciga_success_rate * 100, 1)) + "%", + }, + { + ("", "", "", "HA Name"): "Maximum allowed CIGA pass rate", + ("ECO4 original", "", "Total - £", ""): str(round(maximum_ciga_conversion * 100, 1)) + "%", + ("ECO4 original", "", "Remaining - £", ""): "- Maximum allowed CIGA conversion for HAs without CIGA checks" + }, + { + ("", "", "", "HA Name"): "Median ECO4 (no CIGA) sales conversion rate", + ("ECO4 original", "", "Total - £", ""): str(round(median_eco4_to_install * 100, 1)) + "%", + ("ECO4 original", "", "Remaining - £", + ""): " - Sales conversion rate for a ECO4 property that didn't need a CIGA check" + }, + { + ("", "", "", "HA Name"): "Median ECO4 (subect to CIGA) sales conversion rate", + ("ECO4 original", "", "Total - £", ""): str(round(median_ciga_pass_to_install * 100, 1)) + "%", + ("ECO4 original", "", "Remaining - £", + ""): " - Sales conversion rate for a ECO4 property that passed a CIGA check" + } + ] def app():