From 48eb492bdff1d9e97d461c7cafcb5124c67bab88 Mon Sep 17 00:00:00 2001 From: Jun-te Kim Date: Sun, 16 Mar 2025 15:38:53 +0000 Subject: [PATCH] finsihed lighting --- etl/pdfReader/sitenotes.py | 15 ++++++++++++--- etl/transform/types.py | 3 ++- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/etl/pdfReader/sitenotes.py b/etl/pdfReader/sitenotes.py index 4bb4547..e6058e8 100644 --- a/etl/pdfReader/sitenotes.py +++ b/etl/pdfReader/sitenotes.py @@ -2,7 +2,8 @@ from etl.pdfReader.reportType import ReportType from transform.types import ( CompanyInfo, SurverySummaryInfo, AssessorInfo, PropertyDescription, PropertyDetail, Dimension, - Walls, Roofs, Floors, Door, VentilationAndCooling + Walls, Roofs, Floors, Door, VentilationAndCooling, + Lighting ) from datetime import datetime @@ -212,6 +213,8 @@ class QuidosSiteNotesExtractor(SiteNotesExtractor): # Section 12 ventilationAndCooling = self.get_ventilation_and_cooling() + lighting = self.get_lighting() + self.property_description = PropertyDescription( built_form = get_value("Built Form"), detachment_or_position = get_value("Detachment/Position"), @@ -257,6 +260,7 @@ class QuidosSiteNotesExtractor(SiteNotesExtractor): conservatory=conservatory, door=door, ventilationAndCooling=ventilationAndCooling, + lighting=lighting, ) @@ -609,7 +613,7 @@ class QuidosSiteNotesExtractor(SiteNotesExtractor): space_cooling_system_present=True if dict_.get("space_cooling_system_present").upper() == "YES" else False ) - def get_section_13(self): + def get_lighting(self): data = self.raw_data[self.raw_data.index('13.0 Lighting'): self.raw_data.index('14.0 Main Heating1')] avoid = [ "13.0 Lighting", @@ -619,7 +623,12 @@ class QuidosSiteNotesExtractor(SiteNotesExtractor): "Total number of light fittings", "Total number of L.E.L. fittings", ] - self.two_columns_processor(data, sub_titles, avoid = avoid, section=13) + dict_ = self.two_columns_processor(data, sub_titles, avoid = avoid) + print(dict_) + return Lighting( + total_no_of_light_fittings=int(dict_["total_number_of_light_fittings"]), + total_no_of_lel_fittings=int(dict_["total_number_of_l.e.l._fittings"]), + ) def get_section_14(self): data = self.raw_data[self.raw_data.index('14.0 Main Heating1'): self.raw_data.index('14.1 Main Heating2')] diff --git a/etl/transform/types.py b/etl/transform/types.py index dfb6f33..96eb249 100644 --- a/etl/transform/types.py +++ b/etl/transform/types.py @@ -138,4 +138,5 @@ class PropertyDescription(BaseModel): ex4_property: Optional[PropertyDetail] = None conservatory: bool door: Optional[Door] - ventilationAndCooling: Optional[VentilationAndCooling] \ No newline at end of file + ventilationAndCooling: Optional[VentilationAndCooling] + lighting: Optional[Lighting] \ No newline at end of file