48 lines
1.5 KiB
Python
48 lines
1.5 KiB
Python
from app import db
|
|
from datetime import datetime
|
|
|
|
class Laying(db.Model):
|
|
__tablename__ = "laying"
|
|
|
|
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="laying_records")
|
|
|
|
# Basic Fields
|
|
Location = db.Column(db.String(500))
|
|
MH_NO = db.Column(db.String(100))
|
|
CC_length = db.Column(db.Float)
|
|
|
|
Pipe_Dia_mm = db.Column(db.Float)
|
|
ID_of_MH_m = db.Column(db.Float)
|
|
Laying_Length = db.Column(db.Float)
|
|
|
|
pipe_150_mm = db.Column(db.Float)
|
|
pipe_200_mm = db.Column(db.Float)
|
|
pipe_250_mm = db.Column(db.Float)
|
|
pipe_300_mm = db.Column(db.Float)
|
|
pipe_350_mm = db.Column(db.Float)
|
|
pipe_400_mm = db.Column(db.Float)
|
|
pipe_450_mm = db.Column(db.Float)
|
|
pipe_500_mm = db.Column(db.Float)
|
|
pipe_600_mm = db.Column(db.Float)
|
|
pipe_700_mm = db.Column(db.Float)
|
|
pipe_900_mm = db.Column(db.Float)
|
|
pipe_1200_mm = db.Column(db.Float)
|
|
|
|
|
|
Total = db.Column(db.Float)
|
|
Remarks = db.Column(db.String(500))
|
|
RA_Bill_No=db.Column(db.String(500))
|
|
|
|
created_at = db.Column(db.DateTime, default=datetime.today)
|
|
|
|
|
|
def __repr__(self):
|
|
return f"<LayingModel {self.Location}>"
|
|
|
|
def serialize(self):
|
|
return {c.name: getattr(self, c.name) for c in self.__table__.columns}
|