dabase column field type changes

This commit is contained in:
2026-03-20 16:25:38 +05:30
parent 6e4406519a
commit 12b2032430
9 changed files with 247 additions and 249 deletions

View File

@@ -11,33 +11,33 @@ class LayingClient(db.Model):
# Basic Fields # Basic Fields
Location = db.Column(db.String(500)) Location = db.Column(db.String(500))
MH_NO = db.Column(db.String(100)) MH_NO = db.Column(db.String(100))
CC_length = db.Column(db.Float, default=0) CC_length = db.Column(db.Numeric(10, 4), default=0)
# Bedding Qty. # Bedding Qty.
Outer_dia_of_MH_m = db.Column(db.Float, default=0) Outer_dia_of_MH_m = db.Column(db.Numeric(10, 4), default=0)
Bedding_Length = db.Column(db.Float, default=0) Bedding_Length = db.Column(db.Numeric(10, 4), default=0)
Width = db.Column(db.Float, default=0) Width = db.Column(db.Numeric(10, 4), default=0)
Depth = db.Column(db.Float, default=0) Depth = db.Column(db.Numeric(10, 4), default=0)
Qty = db.Column(db.Float, default=0) Qty = db.Column(db.Numeric(10, 4), default=0)
# PIPE LAYING Qty. # PIPE LAYING Qty.
Pipe_Dia_mm = db.Column(db.Float, default=0) Pipe_Dia_mm = db.Column(db.Numeric(10, 4), default=0)
ID_of_MH_m = db.Column(db.Float, default=0) ID_of_MH_m = db.Column(db.Numeric(10, 4), default=0)
Laying_Length = db.Column(db.Float, default=0) Laying_Length = db.Column(db.Numeric(10, 4), default=0)
pipe_150_mm = db.Column(db.Float, default=0) pipe_150_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_200_mm = db.Column(db.Float, default=0) pipe_200_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_250_mm = db.Column(db.Float, default=0) pipe_250_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_300_mm = db.Column(db.Float, default=0) pipe_300_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_350_mm = db.Column(db.Float, default=0) pipe_350_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_400_mm = db.Column(db.Float, default=0) pipe_400_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_450_mm = db.Column(db.Float, default=0) pipe_450_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_500_mm = db.Column(db.Float, default=0) pipe_500_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_600_mm = db.Column(db.Float, default=0) pipe_600_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_700_mm = db.Column(db.Float, default=0) pipe_700_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_900_mm = db.Column(db.Float, default=0) pipe_900_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_1200_mm = db.Column(db.Float, default=0) pipe_1200_mm = db.Column(db.Numeric(10, 4), default=0)
Total = db.Column(db.Float, default=0) Total = db.Column(db.Numeric(12, 4), default=0)
Remarks = db.Column(db.String(500)) Remarks = db.Column(db.String(500))
RA_Bill_No=db.Column(db.String(500)) RA_Bill_No=db.Column(db.String(500))
@@ -57,7 +57,7 @@ def calculate_laying_total(mapper, connection, target):
for column in target.__table__.columns: for column in target.__table__.columns:
if RegularExpression.PIPE_MM_PATTERN.match(column.name): if RegularExpression.PIPE_MM_PATTERN.match(column.name):
total += getattr(target, column.name) or 0 total += getattr(target, column.name) or 0
target.Total = total target.Total = round(total)
event.listen(LayingClient, "before_insert", calculate_laying_total) event.listen(LayingClient, "before_insert", calculate_laying_total)
event.listen(LayingClient, "before_update", calculate_laying_total) event.listen(LayingClient, "before_update", calculate_laying_total)

View File

@@ -15,25 +15,25 @@ class Laying(db.Model):
# Pipe Laying Fields # Pipe Laying Fields
Location = db.Column(db.String(500)) Location = db.Column(db.String(500))
MH_NO = db.Column(db.String(100)) MH_NO = db.Column(db.String(100))
CC_length = db.Column(db.Float, default=0) CC_length = db.Column(db.Numeric(10, 4), default=0)
Pipe_Dia_mm = db.Column(db.Float, default=0) Pipe_Dia_mm = db.Column(db.Numeric(10, 4), default=0)
ID_of_MH_m = db.Column(db.Float, default=0) ID_of_MH_m = db.Column(db.Numeric(10, 4), default=0)
Laying_Length = db.Column(db.Float, default=0) Laying_Length = db.Column(db.Numeric(10, 4), default=0)
pipe_150_mm = db.Column(db.Float, default=0) pipe_150_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_200_mm = db.Column(db.Float, default=0) pipe_200_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_250_mm = db.Column(db.Float, default=0) pipe_250_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_300_mm = db.Column(db.Float, default=0) pipe_300_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_350_mm = db.Column(db.Float, default=0) pipe_350_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_400_mm = db.Column(db.Float, default=0) pipe_400_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_450_mm = db.Column(db.Float, default=0) pipe_450_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_500_mm = db.Column(db.Float, default=0) pipe_500_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_600_mm = db.Column(db.Float, default=0) pipe_600_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_700_mm = db.Column(db.Float, default=0) pipe_700_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_900_mm = db.Column(db.Float, default=0) pipe_900_mm = db.Column(db.Numeric(10, 4), default=0)
pipe_1200_mm = db.Column(db.Float, default=0) pipe_1200_mm = db.Column(db.Numeric(10, 4), default=0)
Total = db.Column(db.Float, default=0) Total = db.Column(db.Numeric(12, 4), default=0)
Remarks = db.Column(db.String(500)) Remarks = db.Column(db.String(500))
RA_Bill_No=db.Column(db.String(500)) RA_Bill_No=db.Column(db.String(500))
@@ -53,7 +53,7 @@ def calculate_laying_total(mapper, connection, target):
for column in target.__table__.columns: for column in target.__table__.columns:
if RegularExpression.PIPE_MM_PATTERN.match(column.name): if RegularExpression.PIPE_MM_PATTERN.match(column.name):
total += getattr(target, column.name) or 0 total += getattr(target, column.name) or 0
target.Total = total target.Total = round(total)
event.listen(Laying, "before_insert", calculate_laying_total) event.listen(Laying, "before_insert", calculate_laying_total)
event.listen(Laying, "before_update", calculate_laying_total) event.listen(Laying, "before_update", calculate_laying_total)

View File

@@ -15,35 +15,35 @@ class ManholeDomesticChamber(db.Model):
# Basic Fields # Basic Fields
Location = db.Column(db.String(500)) Location = db.Column(db.String(500))
MH_NO = db.Column(db.String(100)) MH_NO = db.Column(db.String(100))
Depth_of_MH = db.Column(db.Float, default=0) Depth_of_MH = db.Column(db.Numeric(10, 4), default=0)
# Excavation categories # Excavation categories
d_0_to_0_75 = db.Column(db.Float, default=0) d_0_to_0_75 = db.Column(db.Numeric(10, 4), default=0)
d_0_76_to_1_05 = db.Column(db.Float, default=0) d_0_76_to_1_05 = db.Column(db.Numeric(10, 4), default=0)
d_1_06_to_1_65 = db.Column(db.Float, default=0) d_1_06_to_1_65 = db.Column(db.Numeric(10, 4), default=0)
d_1_66_to_2_15 = db.Column(db.Float, default=0) d_1_66_to_2_15 = db.Column(db.Numeric(10, 4), default=0)
d_2_16_to_2_65 = db.Column(db.Float, default=0) d_2_16_to_2_65 = db.Column(db.Numeric(10, 4), default=0)
d_2_66_to_3_15 = db.Column(db.Float, default=0) d_2_66_to_3_15 = db.Column(db.Numeric(10, 4), default=0)
d_3_16_to_3_65= db.Column(db.Float, default=0) d_3_16_to_3_65= db.Column(db.Numeric(10, 4), default=0)
d_3_66_to_4_15 = db.Column(db.Float, default=0) d_3_66_to_4_15 = db.Column(db.Numeric(10, 4), default=0)
d_4_16_to_4_65 = db.Column(db.Float, default=0) d_4_16_to_4_65 = db.Column(db.Numeric(10, 4), default=0)
d_4_66_to_5_15 = db.Column(db.Float, default=0) d_4_66_to_5_15 = db.Column(db.Numeric(10, 4), default=0)
d_5_16_to_5_65 = db.Column(db.Float, default=0) d_5_16_to_5_65 = db.Column(db.Numeric(10, 4), default=0)
d_5_66_to_6_15 = db.Column(db.Float, default=0) d_5_66_to_6_15 = db.Column(db.Numeric(10, 4), default=0)
d_6_16_to_6_65 = db.Column(db.Float, default=0) d_6_16_to_6_65 = db.Column(db.Numeric(10, 4), default=0)
d_6_66_to_7_15 = db.Column(db.Float, default=0) d_6_66_to_7_15 = db.Column(db.Numeric(10, 4), default=0)
d_7_16_to_7_65 = db.Column(db.Float, default=0) d_7_16_to_7_65 = db.Column(db.Numeric(10, 4), default=0)
d_7_66_to_8_15 = db.Column(db.Float, default=0) d_7_66_to_8_15 = db.Column(db.Numeric(10, 4), default=0)
d_8_16_to_8_65 = db.Column(db.Float, default=0) d_8_16_to_8_65 = db.Column(db.Numeric(10, 4), default=0)
d_8_66_to_9_15 = db.Column(db.Float, default=0) d_8_66_to_9_15 = db.Column(db.Numeric(10, 4), default=0)
d_9_16_to_9_65 = db.Column(db.Float, default=0) d_9_16_to_9_65 = db.Column(db.Numeric(10, 4), default=0)
Domestic_Chambers = db.Column(db.Float, default=0) Domestic_Chambers = db.Column(db.Numeric(10, 4), default=0)
DWC_Pipe_Length = db.Column(db.Float, default=0) DWC_Pipe_Length = db.Column(db.Numeric(10, 4), default=0)
UPVC_Pipe_Length = db.Column(db.Float, default=0) UPVC_Pipe_Length = db.Column(db.Numeric(10, 4), default=0)
RA_Bill_No=db.Column(db.String(500)) RA_Bill_No=db.Column(db.String(500))
Total = db.Column(db.Float, default=0) Total = db.Column(db.Numeric(12, 4), default=0)
created_at = db.Column(db.DateTime, default=datetime.today) created_at = db.Column(db.DateTime, default=datetime.today)
def __repr__(self): def __repr__(self):
@@ -59,7 +59,7 @@ def calculate_mh_dc_total(mapper, connection, target):
for column in target.__table__.columns: for column in target.__table__.columns:
if RegularExpression.D_RANGE_PATTERN.match(column.name): if RegularExpression.D_RANGE_PATTERN.match(column.name):
total += getattr(target, column.name) or 0 total += getattr(target, column.name) or 0
target.Total = total target.Total = round(total)
event.listen(ManholeDomesticChamber, "before_insert", calculate_mh_dc_total) event.listen(ManholeDomesticChamber, "before_insert", calculate_mh_dc_total)
event.listen(ManholeDomesticChamber, "before_update", calculate_mh_dc_total) event.listen(ManholeDomesticChamber, "before_update", calculate_mh_dc_total)

View File

@@ -16,47 +16,47 @@ class ManholeExcavation(db.Model):
Location = db.Column(db.String(500)) Location = db.Column(db.String(500))
MH_NO = db.Column(db.String(100)) MH_NO = db.Column(db.String(100))
Upto_IL_Depth = db.Column(db.Float, default=0) Upto_IL_Depth = db.Column(db.Numeric(10, 4), default=0)
Cutting_Depth = db.Column(db.Float, default=0) Cutting_Depth = db.Column(db.Numeric(10, 4), default=0)
ID_of_MH_m = db.Column(db.Float, default=0) ID_of_MH_m = db.Column(db.Numeric(10, 4), default=0)
Ex_Dia_of_Manhole = db.Column(db.Float, default=0) Ex_Dia_of_Manhole = db.Column(db.Numeric(10, 4), default=0)
Area_of_Manhole = db.Column(db.Float, default=0) Area_of_Manhole = db.Column(db.Numeric(10, 4), default=0)
# Excavation categories # Excavation categories
Soft_Murum_0_to_1_5 = db.Column(db.Float, default=0) Soft_Murum_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_1_5_to_3_0 = db.Column(db.Float, default=0) Soft_Murum_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_3_0_to_4_5 = db.Column(db.Float, default=0) Soft_Murum_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_0_to_1_5 = db.Column(db.Float, default=0) Hard_Murum_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_1_5_to_3_0 = db.Column(db.Float, default=0) Hard_Murum_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_0_to_1_5 = db.Column(db.Float, default=0) Soft_Rock_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_1_5_to_3_0 = db.Column(db.Float, default=0) Soft_Rock_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_0_to_1_5 = db.Column(db.Float, default=0) Hard_Rock_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_1_5_to_3_0 = db.Column(db.Float, default=0) Hard_Rock_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_3_0_to_4_5 = db.Column(db.Float, default=0) Hard_Rock_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_4_5_to_6_0 = db.Column(db.Float, default=0) Hard_Rock_4_5_to_6_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_6_0_to_7_5 = db.Column(db.Float, default=0) Hard_Rock_6_0_to_7_5 = db.Column(db.Numeric(10, 4), default=0)
# Totals # Totals
Soft_Murum_0_to_1_5_total = db.Column(db.Float, default=0) Soft_Murum_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_1_5_to_3_0_total = db.Column(db.Float, default=0) Soft_Murum_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_3_0_to_4_5_total = db.Column(db.Float, default=0) Soft_Murum_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_0_to_1_5_total = db.Column(db.Float, default=0) Hard_Murum_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_1_5_and_above_total = db.Column(db.Float, default=0) Hard_Murum_1_5_and_above_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_0_to_1_5_total = db.Column(db.Float, default=0) Soft_Rock_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_1_5_and_above_total = db.Column(db.Float, default=0) Soft_Rock_1_5_and_above_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_0_to_1_5_total = db.Column(db.Float, default=0) Hard_Rock_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_1_5_to_3_0_total = db.Column(db.Float, default=0) Hard_Rock_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_3_0_to_4_5_total = db.Column(db.Float, default=0) Hard_Rock_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_4_5_to_6_0_total = db.Column(db.Float, default=0) Hard_Rock_4_5_to_6_0_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_6_0_to_7_5_total = db.Column(db.Float, default=0) Hard_Rock_6_0_to_7_5_total = db.Column(db.Numeric(10, 4), default=0)
Total = db.Column(db.Float, default=0) Total = db.Column(db.Numeric(12, 4), default=0)
Remarks = db.Column(db.String(500)) Remarks = db.Column(db.String(500))
RA_Bill_No=db.Column(db.String(500)) RA_Bill_No=db.Column(db.String(500))
@@ -74,7 +74,7 @@ def calculate_Manhole_total(mapper, connection, target):
for column in target.__table__.columns: for column in target.__table__.columns:
if RegularExpression.STR_TOTAL_PATTERN.match(column.name): if RegularExpression.STR_TOTAL_PATTERN.match(column.name):
total += getattr(target, column.name) or 0 total += getattr(target, column.name) or 0
target.Total = total target.Total = round(total)
event.listen(ManholeExcavation, "before_insert", calculate_Manhole_total) event.listen(ManholeExcavation, "before_insert", calculate_Manhole_total)

View File

@@ -12,26 +12,26 @@ class ManholeDomesticChamberClient(db.Model):
RA_Bill_No=db.Column(db.String(500)) RA_Bill_No=db.Column(db.String(500))
Location = db.Column(db.String(500)) Location = db.Column(db.String(500))
MH_NO = db.Column(db.String(100)) MH_NO = db.Column(db.String(100))
MH_TOP_LEVEL = db.Column(db.Float, default=0) MH_TOP_LEVEL = db.Column(db.Numeric(10, 4), default=0)
MH_IL_LEVEL = db.Column(db.Float, default=0) MH_IL_LEVEL = db.Column(db.Numeric(10, 4), default=0)
Depth_of_MH = db.Column(db.Float, default=0) Depth_of_MH = db.Column(db.Numeric(10, 4), default=0)
# Excavation categories # Excavation categories
d_0_to_1_5 = db.Column(db.Float, default=0) d_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
d_1_5_to_2_0 = db.Column(db.Float, default=0) d_1_5_to_2_0 = db.Column(db.Numeric(10, 4), default=0)
d_2_0_to_2_5 = db.Column(db.Float, default=0) d_2_0_to_2_5 = db.Column(db.Numeric(10, 4), default=0)
d_2_5_to_3_0 = db.Column(db.Float, default=0) d_2_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
d_3_0_to_3_5 = db.Column(db.Float, default=0) d_3_0_to_3_5 = db.Column(db.Numeric(10, 4), default=0)
d_3_5_to_4_0 = db.Column(db.Float, default=0) d_3_5_to_4_0 = db.Column(db.Numeric(10, 4), default=0)
d_4_0_to_4_5= db.Column(db.Float, default=0) d_4_0_to_4_5= db.Column(db.Numeric(10, 4), default=0)
d_4_5_to_5_0 = db.Column(db.Float, default=0) d_4_5_to_5_0 = db.Column(db.Numeric(10, 4), default=0)
d_5_0_to_5_5 = db.Column(db.Float, default=0) d_5_0_to_5_5 = db.Column(db.Numeric(10, 4), default=0)
d_5_5_to_6_0 = db.Column(db.Float, default=0) d_5_5_to_6_0 = db.Column(db.Numeric(10, 4), default=0)
d_6_0_to_6_5 = db.Column(db.Float, default=0) d_6_0_to_6_5 = db.Column(db.Numeric(10, 4), default=0)
Domestic_Chambers = db.Column(db.Float, default=0) Domestic_Chambers = db.Column(db.Numeric(10, 4), default=0)
Total = db.Column(db.Float, default=0) Total = db.Column(db.Numeric(12, 4), default=0)
created_at = db.Column(db.DateTime, default=datetime.today) created_at = db.Column(db.DateTime, default=datetime.today)
def __repr__(self): def __repr__(self):
@@ -48,7 +48,7 @@ def calculate_mh_dc_total(mapper, connection, target):
for column in target.__table__.columns: for column in target.__table__.columns:
if RegularExpression.D_RANGE_PATTERN.match(column.name): if RegularExpression.D_RANGE_PATTERN.match(column.name):
total += getattr(target, column.name) or 0 total += getattr(target, column.name) or 0
target.Total = total target.Total = round(total)
event.listen(ManholeDomesticChamberClient, "before_insert", calculate_mh_dc_total) event.listen(ManholeDomesticChamberClient, "before_insert", calculate_mh_dc_total)

View File

@@ -12,65 +12,65 @@ class ManholeExcavationClient(db.Model):
RA_Bill_No=db.Column(db.String(500)) RA_Bill_No=db.Column(db.String(500))
Location = db.Column(db.String(500)) Location = db.Column(db.String(500))
MH_NO = db.Column(db.String(100)) MH_NO = db.Column(db.String(100))
Ground_Level = db.Column(db.Float, default=0) Ground_Level = db.Column(db.Numeric(10, 4), default=0)
MH_Invert_Level = db.Column(db.Float, default=0) MH_Invert_Level = db.Column(db.Numeric(10, 4), default=0)
MH_Top_Level = db.Column(db.Float, default=0) MH_Top_Level = db.Column(db.Numeric(10, 4), default=0)
Ex_Level = db.Column(db.Float, default=0) Ex_Level = db.Column(db.Numeric(10, 4), default=0)
Cutting_Depth = db.Column(db.Float, default=0) Cutting_Depth = db.Column(db.Numeric(10, 4), default=0)
MH_Depth = db.Column(db.Float, default=0) MH_Depth = db.Column(db.Numeric(10, 4), default=0)
ID_of_MH_m = db.Column(db.Float, default=0) ID_of_MH_m = db.Column(db.Numeric(10, 4), default=0)
Dia_of_MH_Cutting = db.Column(db.Float, default=0) Dia_of_MH_Cutting = db.Column(db.Numeric(10, 4), default=0)
Area_of_Manhole = db.Column(db.Float, default=0) Area_of_Manhole = db.Column(db.Numeric(10, 4), default=0)
# Excavation categories # Excavation categories
Marshi_Muddy_Slushy_0_to_1_5 = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Marshi_Muddy_Slushy_1_5_to_3_0 = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Marshi_Muddy_Slushy_3_0_to_4_5 = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_0_to_1_5 = db.Column(db.Float, default=0) Soft_Murum_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_1_5_to_3_0 = db.Column(db.Float, default=0) Soft_Murum_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_3_0_to_4_5 = db.Column(db.Float, default=0) Soft_Murum_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_0_to_1_5 = db.Column(db.Float, default=0) Hard_Murum_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_1_5_to_3_0 = db.Column(db.Float, default=0) Hard_Murum_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_3_0_to_4_5 = db.Column(db.Float, default=0) Hard_Murum_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_0_to_1_5 = db.Column(db.Float, default=0) Soft_Rock_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_1_5_to_3_0 = db.Column(db.Float, default=0) Soft_Rock_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_3_0_to_4_5 = db.Column(db.Float, default=0) Soft_Murum_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_0_to_1_5 = db.Column(db.Float, default=0) Hard_Rock_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_1_5_to_3_0 = db.Column(db.Float, default=0) Hard_Rock_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_3_0_to_4_5 = db.Column(db.Float, default=0) Hard_Rock_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_4_5_to_6_0 = db.Column(db.Float, default=0) Hard_Rock_4_5_to_6_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_6_0_to_7_5 = db.Column(db.Float, default=0) Hard_Rock_6_0_to_7_5 = db.Column(db.Numeric(10, 4), default=0)
# Totals # Totals
Marshi_Muddy_Slushy_0_to_1_5_total = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Marshi_Muddy_Slushy_1_5_to_3_0_total = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Marshi_Muddy_Slushy_3_0_to_4_5_total = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_0_to_1_5_total = db.Column(db.Float, default=0) Soft_Murum_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_1_5_to_3_0_total = db.Column(db.Float, default=0) Soft_Murum_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_3_0_to_4_5_total = db.Column(db.Float, default=0) Soft_Murum_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_0_to_1_5_total = db.Column(db.Float, default=0) Hard_Murum_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_1_5_to_3_0_total = db.Column(db.Float, default=0) Hard_Murum_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_3_0_to_4_5_total = db.Column(db.Float, default=0) Hard_Murum_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_0_to_1_5_total = db.Column(db.Float, default=0) Soft_Rock_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_1_5_to_3_0_total = db.Column(db.Float, default=0) Soft_Rock_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_3_0_to_4_5_total = db.Column(db.Float, default=0) Soft_Rock_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_0_to_1_5_total = db.Column(db.Float, default=0) Hard_Rock_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_1_5_to_3_0_total = db.Column(db.Float, default=0) Hard_Rock_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_3_0_to_4_5_total = db.Column(db.Float, default=0) Hard_Rock_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_4_5_to_6_0_total = db.Column(db.Float, default=0) Hard_Rock_4_5_to_6_0_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_6_0_to_7_5_total = db.Column(db.Float, default=0) Hard_Rock_6_0_to_7_5_total = db.Column(db.Numeric(10, 4), default=0)
Remarks = db.Column(db.String(500)) Remarks = db.Column(db.String(500))
Total = db.Column(db.Float, default=0) Total = db.Column(db.Numeric(12, 4), default=0)
created_at = db.Column(db.DateTime, default=datetime.today) created_at = db.Column(db.DateTime, default=datetime.today)
@@ -87,7 +87,7 @@ def calculate_Manhole_total(mapper, connection, target):
for column in target.__table__.columns: for column in target.__table__.columns:
if RegularExpression.STR_TOTAL_PATTERN.match(column.name): if RegularExpression.STR_TOTAL_PATTERN.match(column.name):
total += getattr(target, column.name) or 0 total += getattr(target, column.name) or 0
target.Total = total target.Total = round(total)
event.listen(ManholeExcavationClient, "before_insert", calculate_Manhole_total) event.listen(ManholeExcavationClient, "before_insert", calculate_Manhole_total)

View File

@@ -12,69 +12,69 @@ class TrenchExcavationClient(db.Model):
RA_Bill_No=db.Column(db.String(500)) RA_Bill_No=db.Column(db.String(500))
Location = db.Column(db.String(500)) Location = db.Column(db.String(500))
MH_NO = db.Column(db.String(100)) MH_NO = db.Column(db.String(100))
CC_length = db.Column(db.Float, default=0) CC_length = db.Column(db.Numeric(10, 4), default=0)
Actual_Trench_Length = db.Column(db.Float, default=0) Actual_Trench_Length = db.Column(db.Numeric(10, 4), default=0)
Ground_Level = db.Column(db.Float, default=0) Ground_Level = db.Column(db.Numeric(10, 4), default=0)
Invert_Level = db.Column(db.Float, default=0) Invert_Level = db.Column(db.Numeric(10, 4), default=0)
Excavated_level = db.Column(db.Float, default=0) Excavated_level = db.Column(db.Numeric(10, 4), default=0)
Cutting_Depth = db.Column(db.Float, default=0) Cutting_Depth = db.Column(db.Numeric(10, 4), default=0)
Avg_Depth = db.Column(db.Float, default=0) Avg_Depth = db.Column(db.Numeric(10, 4), default=0)
Pipe_Dia_mm = db.Column(db.Float, default=0) Pipe_Dia_mm = db.Column(db.Numeric(10, 4), default=0)
# width # width
Width_0_to_1_5_m = db.Column(db.Float, default=0) Width_0_to_1_5_m = db.Column(db.Numeric(10, 4), default=0)
Width_1_5_to_3_0_m = db.Column(db.Float, default=0) Width_1_5_to_3_0_m = db.Column(db.Numeric(10, 4), default=0)
Width_3_0_to_4_5_m = db.Column(db.Float, default=0) Width_3_0_to_4_5_m = db.Column(db.Numeric(10, 4), default=0)
Width_4_5_to_6_0_m = db.Column(db.Float, default=0) Width_4_5_to_6_0_m = db.Column(db.Numeric(10, 4), default=0)
Width_6_0_to_7_5_m = db.Column(db.Float, default=0) Width_6_0_to_7_5_m = db.Column(db.Numeric(10, 4), default=0)
# Excavation categories # Excavation categories
Marshi_Muddy_Slushy_0_to_1_5 = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Marshi_Muddy_Slushy_1_5_to_3_0 = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Marshi_Muddy_Slushy_3_0_to_4_5 = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_0_to_1_5 = db.Column(db.Float, default=0) Soft_Murum_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_1_5_to_3_0 = db.Column(db.Float, default=0) Soft_Murum_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_3_0_to_4_5 = db.Column(db.Float, default=0) Soft_Murum_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_0_to_1_5 = db.Column(db.Float, default=0) Hard_Murum_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_1_5_to_3_0 = db.Column(db.Float, default=0) Hard_Murum_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_3_0_to_4_5 = db.Column(db.Float, default=0) Hard_Murum_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_0_to_1_5 = db.Column(db.Float, default=0) Soft_Rock_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_1_5_to_3_0 = db.Column(db.Float, default=0) Soft_Rock_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_3_0_to_4_5 = db.Column(db.Float, default=0) Soft_Rock_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_0_to_1_5 = db.Column(db.Float, default=0) Hard_Rock_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_1_5_to_3_0 = db.Column(db.Float, default=0) Hard_Rock_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_3_0_to_4_5 = db.Column(db.Float, default=0) Hard_Rock_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_4_5_to_6_0 = db.Column(db.Float, default=0) Hard_Rock_4_5_to_6_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_6_0_to_7_5 = db.Column(db.Float, default=0) Hard_Rock_6_0_to_7_5 = db.Column(db.Numeric(10, 4), default=0)
# Totals # Totals
Marshi_Muddy_Slushy_0_to_1_5_total = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Marshi_Muddy_Slushy_1_5_to_3_0_total = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Marshi_Muddy_Slushy_3_0_to_4_5_total = db.Column(db.Float, default=0) Marshi_Muddy_Slushy_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_0_to_1_5_total = db.Column(db.Float, default=0) Soft_Murum_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_1_5_to_3_0_total = db.Column(db.Float, default=0) Soft_Murum_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_3_0_to_4_5_total = db.Column(db.Float, default=0) Soft_Murum_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_0_to_1_5_total = db.Column(db.Float, default=0) Hard_Murum_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_1_5_to_3_0_total = db.Column(db.Float, default=0) Hard_Murum_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_3_0_to_4_5_total = db.Column(db.Float, default=0) Hard_Murum_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_0_to_1_5_total = db.Column(db.Float, default=0) Soft_Rock_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_1_5_to_3_0_total = db.Column(db.Float, default=0) Soft_Rock_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_3_0_to_4_5_total = db.Column(db.Float, default=0) Soft_Rock_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_0_to_1_5_total = db.Column(db.Float, default=0) Hard_Rock_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_1_5_to_3_0_total = db.Column(db.Float, default=0) Hard_Rock_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_3_0_to_4_5_total = db.Column(db.Float, default=0) Hard_Rock_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_4_5_to_6_0_total = db.Column(db.Float, default=0) Hard_Rock_4_5_to_6_0_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_6_0_to_7_5_total = db.Column(db.Float, default=0) Hard_Rock_6_0_to_7_5_total = db.Column(db.Numeric(10, 4), default=0)
Total = db.Column(db.Float, default=0) Total = db.Column(db.Numeric(12, 4), default=0)
Remarks = db.Column(db.String(500)) Remarks = db.Column(db.String(500))
created_at = db.Column(db.DateTime, default=datetime.today) created_at = db.Column(db.DateTime, default=datetime.today)
@@ -92,7 +92,7 @@ def calculate_trench_client_total(mapper, connection, target):
for column in target.__table__.columns: for column in target.__table__.columns:
if RegularExpression.STR_TOTAL_PATTERN.match(column.name): if RegularExpression.STR_TOTAL_PATTERN.match(column.name):
total += getattr(target, column.name) or 0 total += getattr(target, column.name) or 0
target.Total = total target.Total = round(total)
event.listen(TrenchExcavationClient, "before_insert", calculate_trench_client_total) event.listen(TrenchExcavationClient, "before_insert", calculate_trench_client_total)
event.listen(TrenchExcavationClient, "before_update", calculate_trench_client_total) event.listen(TrenchExcavationClient, "before_update", calculate_trench_client_total)

View File

@@ -15,59 +15,59 @@ class TrenchExcavation(db.Model):
# Basic Fields # Basic Fields
Location = db.Column(db.String(500)) Location = db.Column(db.String(500))
MH_NO = db.Column(db.String(100)) MH_NO = db.Column(db.String(100))
CC_length = db.Column(db.Float, default=0) CC_length = db.Column(db.Numeric(10, 4), default=0)
Invert_Level = db.Column(db.Float, default=0) Invert_Level = db.Column(db.Numeric(10, 4), default=0)
MH_Top_Level = db.Column(db.Float, default=0) MH_Top_Level = db.Column(db.Numeric(10, 4), default=0)
Ground_Level = db.Column(db.Float, default=0) Ground_Level = db.Column(db.Numeric(10, 4), default=0)
ID_of_MH_m = db.Column(db.Float, default=0) ID_of_MH_m = db.Column(db.Numeric(10, 4), default=0)
Actual_Trench_Length = db.Column(db.Float, default=0) Actual_Trench_Length = db.Column(db.Numeric(10, 4), default=0)
Pipe_Dia_mm = db.Column(db.Float, default=0) Pipe_Dia_mm = db.Column(db.Numeric(10, 4), default=0)
# width # width
Width_0_to_2_5 = db.Column(db.Float, default=0) Width_0_to_2_5 = db.Column(db.Numeric(10, 4), default=0)
Width_2_5_to_3_0 = db.Column(db.Float, default=0) Width_2_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Width_3_0_to_4_5 = db.Column(db.Float, default=0) Width_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Width_4_5_to_6_0 = db.Column(db.Float, default=0) Width_4_5_to_6_0 = db.Column(db.Numeric(10, 4), default=0)
Upto_IL_Depth = db.Column(db.Float, default=0) Upto_IL_Depth = db.Column(db.Numeric(10, 4), default=0)
Cutting_Depth = db.Column(db.Float, default=0) Cutting_Depth = db.Column(db.Numeric(10, 4), default=0)
Avg_Depth = db.Column(db.Float, default=0) Avg_Depth = db.Column(db.Numeric(10, 4), default=0)
# Excavation categories # Excavation categories
Soft_Murum_0_to_1_5 = db.Column(db.Float, default=0) Soft_Murum_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_1_5_to_3_0 = db.Column(db.Float, default=0) Soft_Murum_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_3_0_to_4_5 = db.Column(db.Float, default=0) Soft_Murum_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_0_to_1_5 = db.Column(db.Float, default=0) Hard_Murum_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_1_5_to_3_0 = db.Column(db.Float, default=0) Hard_Murum_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_0_to_1_5 = db.Column(db.Float, default=0) Soft_Rock_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_1_5_to_3_0 = db.Column(db.Float, default=0) Soft_Rock_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_0_to_1_5 = db.Column(db.Float, default=0) Hard_Rock_0_to_1_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_1_5_to_3_0 = db.Column(db.Float, default=0) Hard_Rock_1_5_to_3_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_3_0_to_4_5 = db.Column(db.Float, default=0) Hard_Rock_3_0_to_4_5 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_4_5_to_6_0 = db.Column(db.Float, default=0) Hard_Rock_4_5_to_6_0 = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_6_0_to_7_5 = db.Column(db.Float, default=0) Hard_Rock_6_0_to_7_5 = db.Column(db.Numeric(10, 4), default=0)
# Totals # Totals
Soft_Murum_0_to_1_5_total = db.Column(db.Float, default=0) Soft_Murum_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_1_5_to_3_0_total = db.Column(db.Float, default=0) Soft_Murum_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Murum_3_0_to_4_5_total = db.Column(db.Float, default=0) Soft_Murum_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_0_to_1_5_total = db.Column(db.Float, default=0) Hard_Murum_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Murum_1_5_and_above_total = db.Column(db.Float, default=0) Hard_Murum_1_5_and_above_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_0_to_1_5_total = db.Column(db.Float, default=0) Soft_Rock_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Soft_Rock_1_5_and_above_total = db.Column(db.Float, default=0) Soft_Rock_1_5_and_above_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_0_to_1_5_total = db.Column(db.Float, default=0) Hard_Rock_0_to_1_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_1_5_to_3_0_total = db.Column(db.Float, default=0) Hard_Rock_1_5_to_3_0_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_3_0_to_4_5_total = db.Column(db.Float, default=0) Hard_Rock_3_0_to_4_5_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_4_5_to_6_0_total = db.Column(db.Float, default=0) Hard_Rock_4_5_to_6_0_total = db.Column(db.Numeric(10, 4), default=0)
Hard_Rock_6_0_to_7_5_total = db.Column(db.Float, default=0) Hard_Rock_6_0_to_7_5_total = db.Column(db.Numeric(10, 4), default=0)
Total = db.Column(db.Float, default=0) Total = db.Column(db.Numeric(12, 4), default=0)
Remarks = db.Column(db.String(500)) Remarks = db.Column(db.String(500))
RA_Bill_No=db.Column(db.String(500)) RA_Bill_No=db.Column(db.String(500))

View File

@@ -160,8 +160,6 @@ def get_ra_bills():
# }) # })
@dashboard_bp.route("/api/trench-analysis") @dashboard_bp.route("/api/trench-analysis")
def trench_analysis(): def trench_analysis():