trytondo-optical_equipment/configuration.py

84 lines
2.6 KiB
Python

from trytond.model import ModelSingleton, ModelSQL, ModelView, fields
from trytond.pyson import Id, Eval
class Configuration(ModelSingleton, ModelSQL, ModelView):
"Equipment Configuration"
__name__ = "optical_equipment.configuration"
equipment_sequence = fields.Many2One(
"ir.sequence",
"Equipment Sequence",
domain=[
("sequence_type", "=", Id(
"optical_equipment", "sequence_type_equipment"))
],
required=True
)
maintenance_sequence = fields.Many2One(
"ir.sequence",
"Maintenance Sequence",
domain=[
(
"sequence_type",
"=",
Id("optical_equipment", "sequence_type_maintenances"),
)
],
required=True
)
sale_quote_number = fields.Many2One(
"ir.sequence",
"Sale Quote Number",
domain=[("sequence_type", "=", Id("sale", "sequence_type_sale"))],
required=True
)
agended_sequence = fields.Many2One(
"ir.sequence",
"Agended Sequence",
domain=[
("sequence_type", "=", Id(
"optical_equipment", "sequence_type_agended"))
],
required=True
)
contract_sequence = fields.Many2One(
"ir.sequence",
"Contract Sequence",
domain=[
("sequence_type", "=", Id(
"optical_equipment", "sequence_type_contract"))
],
required=True
)
temperature_min = fields.Float("Temp Min", required=True)
temperature_max = fields.Float("Temp Max", required=True)
temperature_uom = fields.Many2One(
"product.uom",
"Temperature UOM", required=True,
domain=[("category", "=", Id(
"optical_equipment", "uom_cat_temperature"))],
depends={"temperature_min"},
)
moisture_min = fields.Float("Moisture Min", required=True)
moisture_max = fields.Float("Moisture Max", required=True)
moisture_uom = fields.Many2One(
"product.uom",
"Moisture UOM",
required=True,
domain=[
("category", "=", Id(
"optical_equipment", "uom_cat_relative_humedity"))
],
depends={"moisture_min"},
)
technician_responsible = fields.Many2One(
"company.employee", "Technician Responsible",
required=True
)
invima = fields.Char(
"Invima", states={"required": Eval("technician_responsible", True)}
)
technician_signature = fields.Binary("Technician Signature",
required=True)