mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-12 13:29:04 +00:00
Resolve a landlord gas-combi heating override to its SAP code 🟩
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
21afbefa9d
commit
d6bde062ed
1 changed files with 13 additions and 2 deletions
|
|
@ -19,10 +19,21 @@ from __future__ import annotations
|
||||||
|
|
||||||
from typing import Optional
|
from typing import Optional
|
||||||
|
|
||||||
from domain.modelling.simulation import EpcSimulation
|
from domain.modelling.simulation import EpcSimulation, HeatingOverlay
|
||||||
|
|
||||||
|
# Canonical system archetype → representative `sap_main_heating_code` (SAP Table
|
||||||
|
# 4b boiler rows / Table 4a). Codes map to the modern/condensing variant (A-G
|
||||||
|
# efficiency deferred): 102 regular condensing, 104 condensing combi, 120 CPSU,
|
||||||
|
# 404 fan storage heaters, 191 direct-acting electric boiler.
|
||||||
|
_MAIN_HEATING_CODES: dict[str, int] = {
|
||||||
|
"Gas boiler, combi": 104,
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
def main_heating_overlay_for(
|
def main_heating_overlay_for(
|
||||||
main_heating_value: str, building_part: int
|
main_heating_value: str, building_part: int
|
||||||
) -> Optional[EpcSimulation]:
|
) -> Optional[EpcSimulation]:
|
||||||
raise NotImplementedError
|
code = _MAIN_HEATING_CODES.get(main_heating_value)
|
||||||
|
if code is None:
|
||||||
|
return None
|
||||||
|
return EpcSimulation(heating=HeatingOverlay(sap_main_heating_code=code))
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue