Map secondary_heating on full-SAP certs for the calculator 🟩

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Khalim Conn-Kowlessar 2026-06-25 20:40:59 +00:00
parent 7b06d9dbab
commit 5149400f96
2 changed files with 9 additions and 0 deletions

View file

@ -748,6 +748,11 @@ class EpcPropertyDataMapper:
built_form=(
str(schema.built_form) if schema.built_form is not None else None
),
secondary_heating=(
EpcPropertyDataMapper._map_energy_element(schema.secondary_heating)
if schema.secondary_heating is not None
else None
),
dwelling_type=(
schema.dwelling_type
if isinstance(schema.dwelling_type, str)

View file

@ -209,6 +209,10 @@ class SapSchema17_1:
# gov built_form code (1 detached … 6 enclosed mid-terrace). Carried for the
# property-details panel and exposed-side handling (ADR-0037).
built_form: Optional[int] = None
# Lodged secondary heating element (description + ratings); "None" when the
# cert has no secondary. Read by the calculator's cert_to_inputs — dropping
# it under-counts a real secondary heater (ADR-0037).
secondary_heating: Optional[EnergyElement] = None
# measured living-room area (m²); the engine consumes it via a back-solved
# habitable_rooms_count (Table 27). Optional — 100% present in the corpus.
living_area: Optional[Union[int, float]] = None