update optical_equipment
This commit is contained in:
parent
d24c3751ff
commit
29ebdfcfaa
@ -69,7 +69,32 @@ class MaintenanceService(Workflow, ModelSQL, ModelView):
|
||||
], "State", required=True, readonly=True, sort=True)
|
||||
|
||||
rec_name = fields.Function(fields.Char('rec_name'), 'get_rec_name')
|
||||
|
||||
temperature_min = fields.Float("Temp Min", states={
|
||||
'readonly': If(Eval('state') == 'finished', True),
|
||||
'required': If(Eval('state') == 'in_progress', True)})
|
||||
temperature_max = fields.Float("Temp Max", states={
|
||||
'readonly': If(Eval('state') == 'finished', True),
|
||||
'required': If(Eval('state') == 'in_progress', True)})
|
||||
temperature_uom = fields.Many2One('product.uom', 'Temperature UOM',
|
||||
domain=[('category', '=', Id('optical_equipment', "uom_cat_temperature"))],
|
||||
states={'invisible': If(Eval('temperature_min') == None, True),
|
||||
'readonly' : (Eval('state') == 'finished'),
|
||||
'required': If(Eval('state') == 'in_progress', True)},
|
||||
depends=['itemperature_min']
|
||||
)
|
||||
moisture_min = fields.Float("Moisture Min", states={
|
||||
'readonly': If(Eval('state') == 'finished', True),
|
||||
'required': If(Eval('state') == 'in_progress', True)})
|
||||
moisture_max = fields.Float("Moisture Max", states={
|
||||
'readonly': If(Eval('state') == 'finished', True),
|
||||
'required': If(Eval('state') == 'in_progress', True)})
|
||||
moisture_uom = fields.Many2One('product.uom', "Moisture UOM",
|
||||
domain=[('category', '=', Id('optical_equipment', 'uom_cat_relative_humedity'))],
|
||||
states={'invisible' : If(Eval('moisture_min') == None, True),
|
||||
'readonly': Eval('state') == 'finished',
|
||||
'required': If(Eval('state') == 'in_progress', True)},
|
||||
depends=['moisture_min'])
|
||||
|
||||
@fields.depends('maintenance_type', 'code')
|
||||
def get_rec_name(self, name):
|
||||
if self.maintenance_type and self.code:
|
||||
@ -107,7 +132,21 @@ class MaintenanceService(Workflow, ModelSQL, ModelView):
|
||||
@classmethod
|
||||
def default_state(self):
|
||||
return 'draft'
|
||||
|
||||
|
||||
@fields.depends('temperature_min', 'temperature_uom')
|
||||
def on_change_temperature_min(self):
|
||||
if self.temperature_min:
|
||||
pool = Pool()
|
||||
Measurements = pool.get('product.uom')
|
||||
self.temperature_uom = Measurements.search(['name', '=', 'Celsius'])[0].id
|
||||
|
||||
|
||||
@fields.depends('moisture_min', 'moisture_uom')
|
||||
def on_change_moisture_min(self):
|
||||
pool = Pool()
|
||||
Measurements = pool.get('product.uom')
|
||||
self.moisture_uom = Measurements.search(['name', '=', 'Relative Humedity'])[0].id
|
||||
|
||||
@classmethod
|
||||
def _get_origin(cls):
|
||||
'Return list of Model names for origin Reference'
|
||||
@ -236,7 +275,7 @@ class Maintenance(Workflow, ModelSQL, ModelView):
|
||||
states={'invisible' : If(Eval('moisture_min') == None, True),
|
||||
'readonly': Eval('state') == 'finished'},
|
||||
depends=['moisture_min']
|
||||
)
|
||||
)
|
||||
|
||||
graph_calibration = fields.Binary('Graphs')
|
||||
|
||||
@ -250,8 +289,7 @@ class Maintenance(Workflow, ModelSQL, ModelView):
|
||||
cls._buttons.update({
|
||||
'in_progress': {'invisible': Eval('state').in_(['draft', 'in_progress', 'finished'])},
|
||||
'finished': {'invisible': (Eval('state').in_(['finished'])) |
|
||||
((Eval('maintenance_type') == 'corrective') & (Eval('maintenance_lines') == ())) |
|
||||
(Eval('calibration_total') == ())},
|
||||
((Eval('maintenance_type') == 'corrective') & (Eval('maintenance_lines') == ()))},
|
||||
'calibrate': {'invisible': (Eval('lines_calibration') == ()) | (Eval('state').in_(['finished'])),
|
||||
'depends': ['state'],}
|
||||
})
|
||||
@ -331,9 +369,9 @@ class Maintenance(Workflow, ModelSQL, ModelView):
|
||||
next_maintenance = None
|
||||
if self.service_maintenance.estimated_agended:
|
||||
if self.propietary.client_type == "ips":
|
||||
next_maintenance = self.service_maintenance.estimated_agended + timedelta(days=365)
|
||||
else:
|
||||
next_maintenance = self.service_maintenance.estimated_agended + timedelta(days=182)
|
||||
else:
|
||||
next_maintenance = self.service_maintenance.estimated_agended + timedelta(days=365)
|
||||
return next_maintenance
|
||||
|
||||
def get_standard_deviation(samples):
|
||||
@ -467,8 +505,26 @@ class Maintenance(Workflow, ModelSQL, ModelView):
|
||||
|
||||
@fields.depends('service_maintenance')
|
||||
def on_change_service_maintenance(self):
|
||||
self.propietary = self.service_maintenance.propietary
|
||||
self.propietary_address = self.service_maintenance.propietary_address
|
||||
if self.service_maintenance:
|
||||
self.propietary = self.service_maintenance.propietary
|
||||
self.propietary_address = self.service_maintenance.propietary_address
|
||||
service = self.service_maintenance
|
||||
self.temperature_min = service.temperature_min
|
||||
self.temperature_max = service.temperature_max
|
||||
self.temperature_uom = service.temperature_uom
|
||||
self.moisture_min = service.moisture_min
|
||||
self.moisture_max = service.moisture_max
|
||||
self.moisture_uom = service.moisture_uom
|
||||
else:
|
||||
self.propietary = None
|
||||
self.propietary_address = None
|
||||
self.temperature_min = None
|
||||
self.temperature_max = None
|
||||
self.temperature_uom = None
|
||||
self.moisture_min = None
|
||||
self.moisture_max = None
|
||||
self.moisture_uom = None
|
||||
|
||||
|
||||
@fields.depends('equipment', 'patterns_equipments')
|
||||
def on_change_equipment(self):
|
||||
@ -488,7 +544,7 @@ class Maintenance(Workflow, ModelSQL, ModelView):
|
||||
@Workflow.transition('finished')
|
||||
def finished(cls, maintenances):
|
||||
for maintenance in maintenances:
|
||||
if maintenance.calibration_total == ():
|
||||
if maintenance.equipment.product.calibration and maintenance.calibration_total == ():
|
||||
raise UserError("No puede finalizar este mantenimiento sin una calibración")
|
||||
else:
|
||||
maintenance.state = 'finished'
|
||||
@ -891,9 +947,9 @@ class CreateContractInitial(ModelView, ModelSQL):
|
||||
if self.party:
|
||||
self.invoice_address = self.party.address_get(type='invoice')
|
||||
if self.party.client_type == "ips":
|
||||
self.end_date = Date.today() + timedelta(days=365)
|
||||
else:
|
||||
self.end_date = Date.today() + timedelta(days=182)
|
||||
else:
|
||||
self.end_date = Date.today() + timedelta(days=365)
|
||||
|
||||
|
||||
class CreateContract(Wizard):
|
||||
|
@ -236,18 +236,6 @@
|
||||
<field name="model">optical_equipment.maintenance,-1</field>
|
||||
<field name="action" ref="report_calibration"/>
|
||||
</record>
|
||||
<record model="ir.action.report" id="report_capacitation">
|
||||
<field name="name">Capacitation</field>
|
||||
<field name="model">optical_equipment_maintenance.service</field>
|
||||
<field name="report_name">optical_equipment_maintenance.service</field>
|
||||
<field name="report">optical_equipment/report/Capacitation.fodt</field>
|
||||
<field name="single" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="report_capacitation_keyword">
|
||||
<field name="keyword">form_print</field>
|
||||
<field name="model">optical_equipment_maintenance.service,-1</field>
|
||||
<field name="action" ref="report_capacitation"/>
|
||||
</record>
|
||||
<record model="ir.action.report" id="report_maintenance_service">
|
||||
<field name="name">Maintenance Service</field>
|
||||
<field name="model">optical_equipment.maintenance</field>
|
||||
@ -261,15 +249,15 @@
|
||||
<field name="action" ref="report_maintenance_service"/>
|
||||
</record>
|
||||
<record model="ir.action.report" id="report_maintenance_timeline">
|
||||
<field name="name">Maintenance Service</field>
|
||||
<field name="model">optical_equipment.maintenance</field>
|
||||
<field name="report_name">optical_equipment.maintenance</field>
|
||||
<field name="name">Time Line Maintenance Service</field>
|
||||
<field name="model">optical_equipment_maintenance.service</field>
|
||||
<field name="report_name">optical_equipment_maintenance.service</field>
|
||||
<field name="report">optical_equipment/report/Maintenance_Timeline.fodt</field>
|
||||
<field name="single" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="report_maintenance_timeline_keyword">
|
||||
<field name="keyword">form_print</field>
|
||||
<field name="model">optical_equipment.maintenance,-1</field>
|
||||
<field name="model">optical_equipment_maintenance.service,-1</field>
|
||||
<field name="action" ref="report_maintenance_timeline"/>
|
||||
</record>
|
||||
<menuitem parent="menu_equipment"
|
||||
|
12
move.xml
12
move.xml
@ -28,4 +28,16 @@ this repository contains the full copyright notices and license terms. -->
|
||||
<field name="model">stock.shipment.out,-1</field>
|
||||
<field name="action" ref="report_shipment_out_picking_list1"/>
|
||||
</record>
|
||||
<record model="ir.action.report" id="report_capacitation">
|
||||
<field name="name">Capacitation</field>
|
||||
<field name="model">stock.shipment.out</field>
|
||||
<field name="report_name">stock.shipment.out</field>
|
||||
<field name="report">optical_equipment/report/Capacitation.fodt</field>
|
||||
<field name="single" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="report_capacitation_keyword">
|
||||
<field name="keyword">form_print</field>
|
||||
<field name="model">stock.shipment.out,-1</field>
|
||||
<field name="action" ref="report_capacitation"/>
|
||||
</record>
|
||||
</tryton>
|
||||
|
@ -21,6 +21,18 @@
|
||||
<label name="maintenance_type"/>
|
||||
<field name="maintenance_type"/>
|
||||
<newline/>
|
||||
<label name="temperature_min"/>
|
||||
<field name="temperature_min"/>
|
||||
<label name="temperature_max"/>
|
||||
<field name="temperature_max"/>
|
||||
<label name="temperature_uom"/>
|
||||
<field name="temperature_uom"/>
|
||||
<label name="moisture_min"/>
|
||||
<field name="moisture_min"/>
|
||||
<label name="moisture_max"/>
|
||||
<field name="moisture_max"/>
|
||||
<label name="moisture_uom"/>
|
||||
<field name="moisture_uom"/>
|
||||
<notebook colspan="6">
|
||||
<page string="General" id="general">
|
||||
<label name="state_agended"/>
|
||||
|
Loading…
Reference in New Issue
Block a user