client models and report commit

This commit is contained in:
2025-12-13 18:50:27 +05:30
parent b11a974869
commit 89328c9066
21 changed files with 645 additions and 17 deletions

View File

@@ -0,0 +1,66 @@
from app import db
from datetime import datetime
class ManholeExcavationClient(db.Model):
__tablename__ = "mh_ex_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_ex_records")
# Basic Fields
Location = db.Column(db.String(255))
MH_NO = db.Column(db.String(100))
GL_m = db.Column(db.Float)
Upto_IL_Depth = db.Column(db.Float)
Cutting_Depth = db.Column(db.Float)
ID_of_MH_m = db.Column(db.Float)
Ex_Dia_of_Manhole = db.Column(db.Float)
Area_of_Manhole = db.Column(db.Float)
# Excavation categories
Soft_Murum_0_to_1_5 = db.Column(db.Float)
Soft_Murum_1_5_to_3_0 = db.Column(db.Float)
Soft_Murum_3_0_to_4_5 = db.Column(db.Float)
Hard_Murum_0_to_1_5 = db.Column(db.Float)
Hard_Murum_1_5_to_3_0 = db.Column(db.Float)
Soft_Rock_0_to_1_5 = db.Column(db.Float)
Soft_Rock_1_5_to_3_0 = db.Column(db.Float)
Hard_Rock_0_to_1_5 = db.Column(db.Float)
Hard_Rock_1_5_to_3_0 = db.Column(db.Float)
Hard_Rock_3_0_to_4_5 = db.Column(db.Float)
Hard_Rock_4_5_to_6_0 = db.Column(db.Float)
Hard_Rock_6_0_to_7_5 = db.Column(db.Float)
# Totals
Soft_Murum_0_to_1_5_total = db.Column(db.Float)
Soft_Murum_1_5_to_3_0_total = db.Column(db.Float)
Soft_Murum_3_0_to_4_5_total = db.Column(db.Float)
Hard_Murum_0_to_1_5_total = db.Column(db.Float)
Hard_Murum_1_5_and_above_total = db.Column(db.Float)
Soft_Rock_0_to_1_5_total = db.Column(db.Float)
Soft_Rock_1_5_and_above_total = db.Column(db.Float)
Hard_Rock_0_to_1_5_total = db.Column(db.Float)
Hard_Rock_1_5_and_above_total = db.Column(db.Float)
Hard_Rock_3_0_to_4_5_total = db.Column(db.Float)
Hard_Rock_4_5_to_6_0_total = db.Column(db.Float)
Hard_Rock_6_0_to_7_5_total = db.Column(db.Float)
Remarks = db.Column(db.String(500))
Total = db.Column(db.Float)
created_at = db.Column(db.DateTime, default=datetime.utcnow)
def __repr__(self):
return f"<HanholeExcavation {self.Location}>"