diff --git a/sf_manufacturing/wizard/sale_order_cancel.py b/sf_manufacturing/wizard/sale_order_cancel.py index c14f7620..08938c10 100644 --- a/sf_manufacturing/wizard/sale_order_cancel.py +++ b/sf_manufacturing/wizard/sale_order_cancel.py @@ -75,6 +75,12 @@ class SFSaleOrderCancelWizard(models.TransientModel): # 取消销售订单 result = self.order_id.action_cancel() + # 取消制造订单的排程单 + mo_plan_orders = self.env['sf.production.plan'].search([ + ('origin', '=', self.order_id.name)]) + if mo_plan_orders: + mo_plan_orders.write({'state': 'cancel'}) + # 取消关联的制造订单及其采购单 manufacturing_orders = self.env['mrp.production'].search([ ('origin', '=', self.order_id.name) @@ -94,12 +100,6 @@ class SFSaleOrderCancelWizard(models.TransientModel): if mo_quality_checks: mo_quality_checks.write({'quality_state': 'cancel'}) - # 取消制造订单的排程单 - mo_plan_orders = self.env['sf.production.plan'].search([ - ('origin', '=', order.name)]) - if mo_plan_orders: - mo_plan_orders.write({'state': 'cancel'}) - # 取消制造订单的子制造订单 child_mo_ids = self.env['mrp.production'].search([ ('origin', '=', mo.name) diff --git a/sf_quality/views/quality_check_view.xml b/sf_quality/views/quality_check_view.xml index 2b3a828d..9fbf1e38 100644 --- a/sf_quality/views/quality_check_view.xml +++ b/sf_quality/views/quality_check_view.xml @@ -54,7 +54,7 @@ - {'invisible': [('is_out_check', '=', True)]} + {'invisible': ['|', ('is_out_check', '=', True), ('quality_state', '!=', 'none')]} 合格 @@ -62,7 +62,7 @@ 合格 - {'invisible': [('is_out_check', '=', True)]} + {'invisible': ['|', ('is_out_check', '=', True), ('quality_state', '!=', 'none')]} 不合格