[IMP] mrp_operations_extension: nuevas funcionalidades en workorders.

Closes #750 #812 - Se han realizado solo algunos puntos del issue ya que algunos de ellos se han solucionado en las nuevas actualizaciones
	- nueva vista calendario, según fechas previstas
	- permitir modificar la fecha planificada de una OF si no está iniciada
	- cambiar la fecha prevista de una OF cuando se cambia la fecha prevista de una OT si esta es menor que la de su OF
This commit is contained in:
agaldona
2015-09-21 12:52:24 +02:00
committed by Pedro M. Baeza
parent 5a792ed54c
commit 94a476c090
2 changed files with 42 additions and 0 deletions

View File

@@ -10,6 +10,9 @@ class MrpProduction(models.Model):
_inherit = 'mrp.production'
workcenter_lines = fields.One2many(readonly=False)
date_planned = fields.Datetime(states={'draft': [('readonly', False)],
'confirmed': [('readonly', False)],
'ready': [('readonly', False)]})
def _get_minor_sequence_operation(self, operations):
return min(operations, key=lambda x: x.sequence)
@@ -119,6 +122,31 @@ class MrpProductionWorkcenterLine(models.Model):
def force_assign(self):
self.move_lines.force_assign()
@api.multi
def _load_mo_date_planned(self, production, date_planned):
if date_planned < production.date_planned:
production.write({'date_planned': date_planned})
@api.model
def create(self, vals):
production_obj = self.env['mrp.production']
dp = vals.get('date_planned', False)
production_id = vals.get('production_id', False)
if dp and production_id:
production = production_obj.browse(production_id)
self._load_mo_date_planned(production, dp)
return super(MrpProductionWorkcenterLine, self).create(vals)
@api.multi
def write(self, vals, update=False):
if vals.get('date_planned', False):
dp = vals.get('date_planned')
self._load_mo_date_planned(self.production_id, dp)
update = True
res = super(MrpProductionWorkcenterLine, self).write(vals,
update=update)
return res
def check_minor_sequence_operations(self):
seq = self.sequence
for operation in self.production_id.workcenter_lines:

View File

@@ -225,5 +225,19 @@
</field>
</field>
</record>
<record id="workcenter_line_future_calendar" model="ir.ui.view">
<field name="name">mrp.production.workcenter.line.future.calendar</field>
<field name="model">mrp.production.workcenter.line</field>
<field name="priority" eval="10"/>
<field name="arch" type="xml">
<calendar color="production_id" date_stop="date_planned_end" date_start="date_planned" string="Operations">
<field name="workcenter_id"/>
<field name="production_id"/>
<field name="product"/>
</calendar>
</field>
</record>
</data>
</openerp>