diff --git a/sf_manufacturing/models/mrp_workorder.py b/sf_manufacturing/models/mrp_workorder.py index cb9a3da7..a169ae45 100644 --- a/sf_manufacturing/models/mrp_workorder.py +++ b/sf_manufacturing/models/mrp_workorder.py @@ -1063,12 +1063,15 @@ class ResMrpWorkOrder(models.Model): workorder.state = 'pending' continue # ================= 如果制造订单刀具状态为[无效刀、缺刀] 或者 制造订单状态为[返工]========================== - if workorder.production_id.tool_state in ['1', '2'] or workorder.production_id.state == 'rework': - workorder.state = 'waiting' + if (workorder.production_id.tool_state in ['1', '2'] or workorder.production_id.state == 'rework' + or workorder.production_id.schedule_state != '已排' + or workorder.production_id.reservation_state != 'assigned'): + if workorder.state != 'waiting': + workorder.state = 'waiting' continue if workorder.production_id.programming_state == '已编程': workorder.state = 'ready' - else: + elif workorder.state != 'waiting': workorder.state = 'waiting' # re_work = self.env['mrp.workorder'].search([('production_id', '=', workorder.production_id.id), # ('processing_panel', '=', workorder.processing_panel),