Merge pull request #620 from Hestia-Homes/eco-eligiblity-bug

Eco eligiblity bug
This commit is contained in:
KhalimCK 2025-12-15 11:07:20 +08:00 committed by GitHub
commit f67260a1d6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 31 additions and 6 deletions

View file

@ -22,7 +22,6 @@ from recommendations.recommendation_utils import (
)
from backend.ml_models.AnnualBillSavings import AnnualBillSavings
from backend.app.utils import sap_to_epc
from backend.Funding import Funding
import backend.app.assumptions as assumptions
ENVIRONMENT = os.environ.get("ENVIRONMENT", "dev")
@ -340,7 +339,6 @@ class Property:
recommendation_record=recommendation_record,
recommendations=property_representative_recommendations,
primary_recommendation_id=self.id,
non_invasive_recommendations=self.non_invasive_recommendations,
)
return scoring_dict
@ -1243,7 +1241,8 @@ class Property:
"heat network": "Natural Gas (Community Scheme)",
"lpg": 'LPG',
"biodiesel": "Smokeless Fuel",
"b30d": "B30K Biofuel"
"b30d": "B30K Biofuel",
"coal": "Coal",
}
self.heating_energy_source = list({

View file

@ -15,7 +15,6 @@ from sqlmodel import Session
from etl.epc.Record import EPCRecord
from sqlalchemy.exc import IntegrityError, OperationalError
from sqlalchemy.orm import sessionmaker
from starlette.responses import Response
from backend.app.BatterySapScorer import BatterySAPScorer

View file

@ -0,0 +1,12 @@
"""
For the Peabody project, there were a number of subtasks that failed due to issues, with the most
prominent being errors with the property address and ID data.
This script will fetch those failed subtasks, get the associated properties and delete the properties
from the database so that the subtasks can be restarted cleanly.
Additionally, we wil find the problematic records and remove them
Given we ran an EPC C scenario, we should check how many properties, below EPC C we have, that have no plan
or recommendations in case something went wrong
"""

View file

@ -697,8 +697,12 @@ class TrainingDataset(BaseDataset):
for x in missing_descriptions:
desc_cleaner = cleaner(x)
cleaned = desc_cleaner.process()
# IF NODATA, REMAP TO NONE VALUES
if all((pd.DataFrame(cleaned, index=[0]).T)[0] == False):
# IF NODATA, REMAP TO NONE VALUES, apart from walls which we want to keep as is
# If we convert the walls data to None, we end up converting booleans to None which
# causes issues downstream
if all(
(pd.DataFrame(cleaned, index=[0]).T)[0] == False
) and component != "walls":
cleaned = {key: None for key in cleaned.keys()}
cleaned_data.append(
{

View file

@ -85,6 +85,10 @@ resource "aws_db_instance" "default" {
ca_cert_identifier = "rds-ca-rsa2048-g1"
# Temporary to enfore immediate change
apply_immediately = true
# Set up storage type to gp3 for better performance
storage_type = "gp3"
iops = 3000
storage_throughput = 125
}
# Set up the bucket that recieve the csv uploads of epc to be retrofit

View file

@ -698,6 +698,13 @@ class Recommendations:
"heating_cop": 0.85,
"hotwater_cop": 0.85
}
if main_fuel_description in ['coal (community)']:
return {
"heating_fuel_type": "Coal",
"hotwater_fuel_type": "Coal",
"heating_cop": 0.85,
"hotwater_cop": 0.85
}
logger.warning(
"Unhandled community fuel."
f"Fuel: {main_fuel_description}"