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')]}
不合格