add Classes for Bitumen, Asphat, Aggregates, Additives and Properties of them
This commit is contained in:
@@ -12,7 +12,7 @@ from .norm_documents import (
|
||||
NormDocumentAsphalt,
|
||||
NormDocumentBitumen,
|
||||
)
|
||||
from .norm_specification import DeliveryGrain, EnumerateBase
|
||||
from .norm_specification import DeliveryGrain, EnumerateBase, AdditiveEnum
|
||||
from .project import Project
|
||||
from .usermanagement import Organisation, User
|
||||
|
||||
@@ -102,7 +102,7 @@ class Aggregate(Material):
|
||||
|
||||
class Additive(Material):
|
||||
|
||||
typ = StringField(required=True)
|
||||
category = LazyReferenceField(AdditiveEnum, required=True)
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ from paveit.helper import fetch_recursive, mongo_to_dict
|
||||
|
||||
from enum import Enum
|
||||
|
||||
from .material import Material, Additive
|
||||
from .material import Material, Additive, Bitumen, Aggregate
|
||||
from .usermanagement import Organisation, User
|
||||
|
||||
from .enumeration import AsphaltCategoryEnum, BitumenCategoryEnum
|
||||
@@ -17,10 +17,12 @@ from .norm_documents import (
|
||||
)
|
||||
from .norm_specification import (
|
||||
AsphaltParameterLimitsBaseEnum,
|
||||
BitumenParameterLimitsBaseEnum
|
||||
BitumenParameterLimitsBaseEnum,
|
||||
AdditiveEnum,
|
||||
AdditiveSubEnum,
|
||||
DeliveryGrain
|
||||
)
|
||||
|
||||
|
||||
class ProcessParameters(Enum):
|
||||
"""
|
||||
Typ der Wert:
|
||||
@@ -41,14 +43,6 @@ class Address(EmbeddedDocument):
|
||||
postal_code = IntField()
|
||||
country = StringField()
|
||||
|
||||
class Additive(EmbeddedDocument):
|
||||
|
||||
additive_id = LazyReferenceField(Additive, required=True)
|
||||
|
||||
quantity = IntField()
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
class Propertie(Document):
|
||||
@@ -63,6 +57,7 @@ class Propertie(Document):
|
||||
"step": "60"
|
||||
}})
|
||||
|
||||
|
||||
def to_dict(self):
|
||||
# convert data to dict
|
||||
data = fetch_recursive(self)
|
||||
@@ -86,10 +81,10 @@ class Propertie(Document):
|
||||
|
||||
# Additives
|
||||
|
||||
class PropertieAdditives(Propertie):
|
||||
class PropertieAdditive(Propertie):
|
||||
pass
|
||||
|
||||
class PropertieAdditivesMeta(PropertieAdditives):
|
||||
class PropertieAdditiveMeta(PropertieAdditive):
|
||||
|
||||
name = StringField()
|
||||
productnumber = StringField()
|
||||
@@ -99,7 +94,7 @@ class PropertieAdditivesMeta(PropertieAdditives):
|
||||
|
||||
address = EmbeddedDocumentField(Address)
|
||||
|
||||
#category = LazyReferenceField(BitumenParameterLimitsBaseEnum, required=False)
|
||||
subcategory = LazyReferenceField(AdditiveSubEnum, required=True)
|
||||
|
||||
|
||||
# Aggregates
|
||||
@@ -118,7 +113,7 @@ class PropertieAggregateMeta(PropertieAggregate):
|
||||
mine = StringField()
|
||||
address = EmbeddedDocumentField(Address)
|
||||
|
||||
category = LazyReferenceField(BitumenParameterLimitsBaseEnum, required=False)
|
||||
category = LazyReferenceField(DeliveryGrain, required=False)
|
||||
|
||||
|
||||
# Bitumen
|
||||
@@ -151,22 +146,130 @@ class PropertieAsphaltMeta(PropertieAsphalt):
|
||||
certificate_number = StringField()
|
||||
certificate_date = IntField()
|
||||
|
||||
mixing_plant = StringField()
|
||||
mixingplant = StringField()
|
||||
address = EmbeddedDocumentField(Address)
|
||||
|
||||
category = LazyReferenceField(AsphaltParameterLimitsBaseEnum, required=True)
|
||||
|
||||
class PropertieAsphaltBitumenContent(PropertieAsphalt):
|
||||
class Additive(EmbeddedDocument):
|
||||
|
||||
process_parameter = EnumField(ProcessParameters, required=True) # Ist- oder Sollwert
|
||||
additive_id = LazyReferenceField(Additive, required=True)
|
||||
|
||||
quantity_bitumen = IntField()
|
||||
quantity_additive_bitumen = IntField()
|
||||
quantity_bitumen_total = IntField()
|
||||
total_bituem_content = IntField()
|
||||
elastic_recovery = IntField()
|
||||
equistiffness_temperature = IntField()
|
||||
phase_angle = IntField()
|
||||
A = FloatField()
|
||||
B = FloatField()
|
||||
C = FloatField()
|
||||
min = FloatField()
|
||||
max = FloatField()
|
||||
|
||||
class BitumenInfo(EmbeddedDocument):
|
||||
added_binder_A = FloatField(required=False)
|
||||
added_binder_B = FloatField(required=False)
|
||||
added_binder_C = FloatField(required=False)
|
||||
added_binder_min = FloatField(required=False)
|
||||
added_binder_max = FloatField(required=False)
|
||||
|
||||
binder_from_additives_A = FloatField(required=False)
|
||||
binder_from_additives_B = FloatField(required=False)
|
||||
binder_from_additives_C = FloatField(required=False)
|
||||
binder_from_additives_min = FloatField(required=False)
|
||||
binder_from_additives_max = FloatField(required=False)
|
||||
|
||||
total_binder_A = FloatField(required=False)
|
||||
total_binder_B = FloatField(required=False)
|
||||
total_binder_C = FloatField(required=False)
|
||||
total_binder_min = FloatField(required=False)
|
||||
total_binder_max = FloatField(required=False)
|
||||
|
||||
total_binder_vol_A = FloatField(required=False)
|
||||
total_binder_vol_B = FloatField(required=False)
|
||||
total_binder_vol_C = FloatField(required=False)
|
||||
total_binder_vol_min = FloatField(required=False)
|
||||
total_binder_vol_max = FloatField(required=False)
|
||||
|
||||
elastic_recovery_A = FloatField(required=False)
|
||||
elastic_recovery_B = FloatField(required=False)
|
||||
elastic_recovery_C = FloatField(required=False)
|
||||
elastic_recovery_min = FloatField(required=False)
|
||||
elastic_recovery_max = FloatField(required=False)
|
||||
|
||||
equi_stiffness_A = FloatField(required=False)
|
||||
equi_stiffness_B = FloatField(required=False)
|
||||
equi_stiffness_C = FloatField(required=False)
|
||||
equi_stiffness_min = FloatField(required=False)
|
||||
equi_stiffness_max = FloatField(required=False)
|
||||
|
||||
phase_angle_A = FloatField(required=False)
|
||||
phase_angle_B = FloatField(required=False)
|
||||
phase_angle_C = FloatField(required=False)
|
||||
phase_angle_min = FloatField(required=False)
|
||||
phase_angle_max = FloatField(required=False)
|
||||
|
||||
class PropertieAsphaltBitumenParameters(PropertieAsphalt):
|
||||
|
||||
bitumen_id = LazyReferenceField(Bitumen, required=True)
|
||||
|
||||
bitumen = EmbeddedDocumentField(BitumenInfo)
|
||||
additives = ListField(EmbeddedDocumentField(Additive))
|
||||
|
||||
class AggregateInfo(EmbeddedDocument):
|
||||
|
||||
id = LazyReferenceField(Aggregate, required=False)
|
||||
size_45x0 = FloatField(required=False)
|
||||
size_31x5 = FloatField(required=False)
|
||||
size_22x4 = FloatField(required=False)
|
||||
size_16x0 = FloatField(required=False)
|
||||
size_11x2 = FloatField(required=False)
|
||||
size_8x0 = FloatField(required=False)
|
||||
size_5x6 = FloatField(required=False)
|
||||
size_2x0 = FloatField(required=False)
|
||||
size_1x0 = FloatField(required=False)
|
||||
size_0x25 = FloatField(required=False)
|
||||
size_0x125 = FloatField(required=False)
|
||||
size_0x063 = FloatField(required=False)
|
||||
size_less_0x063 = FloatField(required=False)
|
||||
oversize = FloatField(required=False)
|
||||
normal_grain = FloatField(required=False)
|
||||
bulk_density = FloatField(required=False)
|
||||
flow_coefficient = FloatField(required=False)
|
||||
aggregates_bulk_density = FloatField(required=False)
|
||||
|
||||
class PropertieAsphaltAggregates(PropertieAsphalt):
|
||||
aggregates = ListField(EmbeddedDocumentField(AggregateInfo), required=True)
|
||||
|
||||
class MineralMixtureInfo(EmbeddedDocument):
|
||||
|
||||
size_45x0 = FloatField(required=False)
|
||||
size_31x5 = FloatField(required=False)
|
||||
size_22x4 = FloatField(required=False)
|
||||
size_16x0 = FloatField(required=False)
|
||||
size_11x2 = FloatField(required=False)
|
||||
size_8x0 = FloatField(required=False)
|
||||
size_5x6 = FloatField(required=False)
|
||||
size_2x0 = FloatField(required=False)
|
||||
size_1x0 = FloatField(required=False)
|
||||
size_0x25 = FloatField(required=False)
|
||||
size_0x125 = FloatField(required=False)
|
||||
size_0x063 = FloatField(required=False)
|
||||
size_less_0x063 = FloatField(required=False)
|
||||
|
||||
class PropertieAsphaltMineralMixture(PropertieAsphalt):
|
||||
trailing = EmbeddedDocumentField(MineralMixtureInfo, required=False)
|
||||
passage = EmbeddedDocumentField(MineralMixtureInfo, required=False)
|
||||
|
||||
class PropertyMetrics(EmbeddedDocument):
|
||||
A = FloatField(required=False)
|
||||
B = FloatField(required=False)
|
||||
C = FloatField(required=False)
|
||||
min = FloatField(required=False)
|
||||
max = FloatField(required=False)
|
||||
|
||||
class PropertiesAsphaltMixingParameters(PropertieAsphalt):
|
||||
bulk_density = EmbeddedDocumentField(PropertyMetrics)
|
||||
asphalt_density = EmbeddedDocumentField(PropertyMetrics)
|
||||
marshall_density = EmbeddedDocumentField(PropertyMetrics)
|
||||
cavity_content = EmbeddedDocumentField(PropertyMetrics)
|
||||
cavity_filling_level = EmbeddedDocumentField(PropertyMetrics)
|
||||
marshall_compression_temperature = EmbeddedDocumentField(PropertyMetrics)
|
||||
expired_binder_quantity = EmbeddedDocumentField(PropertyMetrics)
|
||||
water_sensitivity_ITSR = EmbeddedDocumentField(PropertyMetrics)
|
||||
swelling_DIN1996 = EmbeddedDocumentField(PropertyMetrics)
|
||||
@@ -29,6 +29,10 @@ class EnumerateBase(Document):
|
||||
class AdditiveEnum(EnumerateBase):
|
||||
name = StringField()
|
||||
|
||||
class AdditiveSubEnum(EnumerateBase):
|
||||
categoryId = LazyReferenceField(AdditiveEnum, required=True)
|
||||
name = StringField()
|
||||
|
||||
# Gesteine
|
||||
class DeliveryGrain(EnumerateBase):
|
||||
name = StringField()
|
||||
|
||||
Reference in New Issue
Block a user