diff --git a/backend/app/plan/router.py b/backend/app/plan/router.py index c6a26fcf..42efeb42 100644 --- a/backend/app/plan/router.py +++ b/backend/app/plan/router.py @@ -879,6 +879,7 @@ async def build_mds(body: PlanTriggerRequest): results.append(to_append) results = pd.DataFrame(results) + results["sap_uplift"] = results["sap_after"] - results["sap_before"] except IntegrityError: diff --git a/etl/customers/goldman/property_ownership.py b/etl/customers/goldman/property_ownership.py index 24922f68..45367a63 100644 --- a/etl/customers/goldman/property_ownership.py +++ b/etl/customers/goldman/property_ownership.py @@ -363,11 +363,12 @@ def app(): freehold_matching_lookup = remove_duplicate_matches(freehold_matching_lookup, properties, company_ownership) leasehold_matching_lookup = remove_duplicate_matches(leasehold_matching_lookup, properties, company_ownership) - matched_addresses = freehold_matching_lookup.merge( - properties[["UPRN", "ADDRESS"]].rename(columns={"ADDRESS": "epc_address"}), + matched_addresses = pd.concat([freehold_matching_lookup, leasehold_matching_lookup]).merge( + properties[["UPRN", "ADDRESS", "CURRENT_ENERGY_EFFICIENCY", "CURRENT_ENERGY_RATING"]].rename( + columns={"ADDRESS": "epc_address"}), how="left", on="UPRN" ).merge( - company_ownership[["Title Number", "Property Address"]], + company_ownership[["Title Number", "Property Address", "Company Registration No. (1)", "Proprietor Name (1)"]], how="left", on="Title Number" ) @@ -377,6 +378,10 @@ def app(): leasehold_matching_lookup.to_excel("leasehold_matching_lookup.xlsx") shared_leasehold_match.to_excel("shared_leasehold_match.xlsx") # shared_freehold_match.to_excel("shared_freehold_match.xlsx") + # read the files + # freehold_matching_lookup = pd.read_excel("freehold_matching_lookup.xlsx") + # leasehold_matching_lookup = pd.read_excel("leasehold_matching_lookup.xlsx") + # shared_leasehold_match = pd.read_excel("shared_leasehold_match.xlsx") freehold_aggregate = aggregate_matches(freehold_matching_lookup, company_ownership, properties) leasehold_aggregate = aggregate_matches(leasehold_matching_lookup, company_ownership, properties) @@ -390,6 +395,17 @@ def app(): investment_20m = combined_aggregate[combined_aggregate["cumulative_value"] <= 20_500_000] investment_50m = combined_aggregate[combined_aggregate["cumulative_value"] <= 51_000_000] + investment_20m_properties = matched_addresses[ + matched_addresses["Company Registration No. (1)"].isin(investment_20m["Company Registration No. (1)"]) + ] + + investment_50m_properties = matched_addresses[ + matched_addresses["Company Registration No. (1)"].isin(investment_50m["Company Registration No. (1)"]) + ] + + investment_20m_properties.to_excel("investment_20m_properties.xlsx") + investment_50m_properties.to_excel("investment_50m_properties.xlsx") + properties["WALLS_DESCRIPTION"].value_counts(normalize=True)