1、返工优化

This commit is contained in:
yuxianghui
2024-11-26 18:01:02 +08:00
parent afa5ad36f2
commit d3b61f320f
2 changed files with 14 additions and 10 deletions

View File

@@ -1137,13 +1137,13 @@ class MrpProduction(models.Model):
if self.programming_state in ['已编程']:
cloud_programming = self._cron_get_programming_state()
result_ids = self.detection_result_ids.filtered(lambda dr: dr.handle_result == '待处理')
work_ids = []
work_id_list = []
if result_ids:
for result_id in result_ids:
work_ids.append(self.workorder_ids.filtered(
lambda wk: (wk.name == result_id.routing_type
and wk.processing_panel == result_id.processing_panel
and wk.state == 'done')).id)
work_id_list = [self.workorder_ids.filtered(
lambda wk: (wk.name == result_id.routing_type and wk.processing_panel == result_id.processing_panel
and wk.state == 'done')).id
for result_id in result_ids]
return {
'name': _('返工'),
'type': 'ir.actions.act_window',
@@ -1152,7 +1152,8 @@ class MrpProduction(models.Model):
'target': 'new',
'context': {
'default_production_id': self.id,
'default_workorder_ids': work_ids,
'default_workorder_ids': self.workorder_ids.filtered(lambda wk: wk.state == 'done').ids,
'default_hidden_workorder_ids': ','.join(map(str, work_id_list)) if work_id_list != [] else '',
'default_reprogramming_num': cloud_programming['reprogramming_num'],
'default_programming_state': cloud_programming['programming_state'],
'default_is_reprogramming': True if cloud_programming['programming_state'] in ['已下发'] else False

View File

@@ -51,9 +51,12 @@ class ReworkWizard(models.TransientModel):
'test_report': self.workorder_id.detection_report})]})
self.workorder_id.button_finish()
else:
if self.workorder_ids:
rework_workorder_ids = self.production_id.workorder_ids.filtered(
lambda ap: ap.id in self.workorder_ids.ids)
if self.hidden_workorder_ids:
hidden_workorder_list = self.hidden_workorder_ids.split(',')
rework_workorder_ids = self.workorder_ids.filtered(lambda w: str(w.id) in hidden_workorder_list)
else:
raise ValidationError('请选择返工工单!!!')
if rework_workorder_ids:
clamp_workorder_ids = None
if rework_workorder_ids:
# 限制