added more types

This commit is contained in:
Jun-te Kim 2025-06-02 14:23:35 +00:00
parent 947dcd1364
commit 94917dd795

View file

@ -1,8 +1,128 @@
from etl.transform.preSiteNoteTypes import BaseModel, Optional
from etl.transform.preSiteNoteTypes import BaseModel, Optional, List
class ConditionReport(BaseModel):
property_reference_code: str
class GeneralInformation(BaseModel):
pass
class PropertyAccess(BaseModel):
are_there_any_road_restrictions_in_the_locality: bool
is_on_street_parking_avalible: bool
is_the_access_gated: bool
is_there_restricted_space_for_contractors_to_access_the_wall_area: bool
is_there_restrcited_space_for_contractors_to_access_the_roof_area: bool
is_there_more_than_2_dot_5_mm_in_width_to_fence_or_neighbouring_boundary_along_the_full_gable_elevation: bool
is_access_to_the_rear_provided_by_use_of_a_ginnel: bool
is_access_to_the_rear_provided_by_use_of_a_secured_alleway: bool
class ExternalElevationGableOne(BaseModel):
do_all_answers_for_the_front_elevation_also_apply_to_this_wall: bool
class ExternalElevationGableTwo(BaseModel):
is_there_a_fourth_external_elevation: bool
class ExternalElevationRear(BaseModel):
do_all_answers_for_the_front_elevation_also_apply_to_this_wall: bool
class ExternalElevationFront(BaseModel):
general_condition_of_the_elevation: str
are_there_any_visible_signs_of_existing_wall_insulation: str
are_there_any_signs_of_water_penetration_caused_by_failed_rainwater_goods_or_pipework: bool
are_there_any_visible_signs_of_movement: str
are_there_any_visible_signs_of_cracking_to_the_existing_external_finish: bool
class ConservatoryOrOutbuilding(BaseModel):
is_there_a_conservatory_and_or_outbuilding: bool
class ExternalElevations(BaseModel):
front: ExternalElevationFront
rear: ExternalElevationRear
gable_one: ExternalElevationGableOne
gable_two: ExternalElevationGableTwo
class AccessAndElevations(BaseModel):
property_access: PropertyAccess
conservatory_and_or_outbuilding: ConservatoryOrOutbuilding
external_elevations: ExternalElevations
class RoomDetail(BaseModel):
overall_condition_of_the_room: str
does_the_room_have_any_defects: str
does_the_room_have_any_windows: bool
condition_of_windows: Optional[str]
are_the_windows_openable: Optional[bool]
do_the_windows_have_trickle_vents: Optional[bool]
is_there_ventilation_system_present_in_the_room: str
is_the_ventilation_system_in_good_working_order: Optional[str]
extract_ventilation_rate_measured: Optional[float]
are_there_any_visible_or_reported_signs_of_damp_mould_or_excessive_condensation_within_the_room: bool
are_there_sufficient_undercuts_on_the_closed_door: bool
class Conservatory(BaseModel):
is_there_a_conservatory_and_or_outbuilding: bool
class Hallway(BaseModel):
is_there_a_hallway: bool
room_detail: RoomDetail
class LivingRoom(BaseModel):
room_detail: RoomDetail
class DiningRoom(BaseModel):
is_there_a_dining_room: bool
room_detail: RoomDetail
class Kitchen(BaseModel):
room_detail: RoomDetail
class WC(BaseModel):
is_there_a_seperated_wc: bool
room_detail: RoomDetail
class Utilty(BaseModel):
is_there_a_utility_room: bool
room_detail: RoomDetail
class Landing(BaseModel):
room_detail: RoomDetail
is_there_a_landing: bool
class Bathroom(BaseModel):
is_this_an_ensuite_bathroom: bool
room_detail: RoomDetail
class Bedroom(BaseModel):
room_detail: RoomDetail
double_or_single_bedroom: str
class LoftSpace(BaseModel):
is_the_loft_space_accessible: bool
overall_condition_of_the_loft_space: str
does_the_loft_space_have_any_defects: bool
existing_depth_of_loft_insulation: str
is_the_insulation_layer_even_across_the_loft: bool
is_the_loft_boarded_in_any_area: bool
boarded_m2_area: Optional[float]
condition_of_existing_roof_lining: str
is_there_an_existing_heating_system_or_plumbing_located_in_the_loft: bool
class RoomInRoof(BaseModel):
is_there_a_room_in_roof: bool
class Rooms(BaseModel):
hallway: Hallway
living_room: LivingRoom
dining_room: DiningRoom
kitchen: Kitchen
utility: Utilty
WC: WC
landing: Landing
Bathroom: List[Bathroom]
Bedroom: List[Bedroom]
loft_space: LoftSpace
room_in_roof: RoomInRoof
class HeatingSystemGeneralCondition(BaseModel):
is_the_heating_system_in_working_order: bool
does_the_occupant_have_a_smart_meter: bool
@ -86,9 +206,6 @@ class OccupancyAssessment(BaseModel):
shower_and_bath: ShowerAndBath
appliances: Appliances
class VentilationChecklist(BaseModel):
intermittent_extract_ventilation: bool
continous_mechanical_extract_ventilation: bool