from app import db from datetime import datetime class ManholeDomesticChamberClient(db.Model): __tablename__ = "mh_dc_client" id = db.Column(db.Integer, primary_key=True) # Foreign Key to Subcontractor table # subcontractor_id = db.Column(db.Integer, db.ForeignKey("subcontractors.id"), nullable=False) # Relationship for easy access (subcontractor.subcontractor_name) # subcontractor = db.relationship("Subcontractor", backref="mh_dc_records") # Basic Fields RA_Bill_No=db.Column(db.String(500)) Location = db.Column(db.String(500)) MH_NO = db.Column(db.String(100)) MH_TOP_LEVEL = db.Column(db.Float) MH_IL_LEVEL = db.Column(db.Float) Depth_of_MH = db.Column(db.Float) # Excavation categories d_0_to_1_5 = db.Column(db.Float) d_1_5_to_2_0 = db.Column(db.Float) d_2_0_to_2_5 = db.Column(db.Float) d_2_5_to_3_0 = db.Column(db.Float) d_3_0_to_3_5 = db.Column(db.Float) d_3_5_to_4_0 = db.Column(db.Float) d_4_0_to_4_5= db.Column(db.Float) d_4_5_to_5_0 = db.Column(db.Float) d_5_0_to_5_5 = db.Column(db.Float) d_5_5_to_6_0 = db.Column(db.Float) d_6_0_to_6_5 = db.Column(db.Float) Domestic_Chambers = db.Column(db.Float) created_at = db.Column(db.DateTime, default=datetime.today) def __repr__(self): return f"" def serialize(self): return {c.name: getattr(self, c.name) for c in self.__table__.columns} def sum_mh_dc_fields(): return [ "d_0_to_0_75", "d_0_76_to_1_05", "d_1_06_to_1_65", "d_1_66_to_2_15", "d_2_16_to_2_65", "d_2_66_to_3_15", "d_3_16_to_3_65", "d_3_66_to_4_15", "d_4_16_to_4_65", "d_4_66_to_5_15", "d_5_16_to_5_65", "d_5_66_to_6_15", "d_6_16_to_6_65", "d_6_66_to_7_15", "d_7_16_to_7_65", "d_7_66_to_8_15", "d_8_16_to_8_65", "d_8_66_to_9_15", "d_9_16_to_9_65" ]