mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-12 13:29:04 +00:00
include address and postcode on magicplan plan 🟩
This commit is contained in:
parent
3b9d40f2f8
commit
069e6693ae
2 changed files with 16 additions and 0 deletions
|
|
@ -7,10 +7,24 @@ def map_plan(mp: MagicPlan) -> Plan:
|
||||||
return Plan(
|
return Plan(
|
||||||
uid=mp.plan.id,
|
uid=mp.plan.id,
|
||||||
name=mp.plan.name,
|
name=mp.plan.name,
|
||||||
|
address=_map_address(mp.plan.address),
|
||||||
|
postcode=mp.plan.address.postal_code if mp.plan.address else None,
|
||||||
floors=[_map_floor(f) for f in mp.plan_detail.plan.floors],
|
floors=[_map_floor(f) for f in mp.plan_detail.plan.floors],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def _map_address(addr: api.Address | None) -> str | None:
|
||||||
|
if addr is None:
|
||||||
|
return None
|
||||||
|
street = (
|
||||||
|
f"{addr.street_number} {addr.street}".strip()
|
||||||
|
if addr.street_number
|
||||||
|
else addr.street
|
||||||
|
)
|
||||||
|
parts = [p for p in [street, addr.city, addr.country] if p]
|
||||||
|
return ", ".join(parts) if parts else None
|
||||||
|
|
||||||
|
|
||||||
def _map_floor(f: api.Floor) -> Floor:
|
def _map_floor(f: api.Floor) -> Floor:
|
||||||
return Floor(
|
return Floor(
|
||||||
level=f.level,
|
level=f.level,
|
||||||
|
|
|
||||||
|
|
@ -35,4 +35,6 @@ class Floor:
|
||||||
class Plan:
|
class Plan:
|
||||||
uid: str
|
uid: str
|
||||||
name: str | None
|
name: str | None
|
||||||
|
address: str | None = None
|
||||||
|
postcode: str | None = None
|
||||||
floors: list[Floor] = field(default_factory=list[Floor])
|
floors: list[Floor] = field(default_factory=list[Floor])
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue