diff --git a/sf_machine_connect/views/compensation.xml b/sf_machine_connect/views/compensation.xml index 016f3821..d3b14535 100644 --- a/sf_machine_connect/views/compensation.xml +++ b/sf_machine_connect/views/compensation.xml @@ -5,39 +5,45 @@ mrp.workorder - - - - - + + + + + + - - - - -
-
- - - - - - - - - - - - - - - - -
-
+ +
-
+
+
+ + +
+
+ +
diff --git a/sf_manufacturing/models/mrp_workorder.py b/sf_manufacturing/models/mrp_workorder.py index b5ed8334..8cc7b1f9 100644 --- a/sf_manufacturing/models/mrp_workorder.py +++ b/sf_manufacturing/models/mrp_workorder.py @@ -1090,8 +1090,15 @@ class ResMrpWorkOrder(models.Model): r = r.json() result = json.loads(r['result']) if result['status'] == 1: - self.write({'is_send_program_again': True}) - self.production_id.write({'work_state': '编程中', 'programming_state': '编程中'}) + productions = self.env['mrp.production'].search( + [('programming_no', '=', self.production_id.programming_no), ('programming_state', '=', '已编程')]) + if productions: + workorder = productions.workorder_ids.filtered( + lambda ap: ap.routing_type in ['装夹预调', 'CNC加工'] and ap.state not in ['done', 'cancel', + 'progress']) + if workorder: + workorder.write({'is_send_program_again': True}) + productions.write({'work_state': '编程中', 'programming_state': '编程中'}) else: raise UserError(result['message']) except Exception as e: diff --git a/sf_manufacturing/views/mrp_production_addional_change.xml b/sf_manufacturing/views/mrp_production_addional_change.xml index 55dbbe33..e1d0d28c 100644 --- a/sf_manufacturing/views/mrp_production_addional_change.xml +++ b/sf_manufacturing/views/mrp_production_addional_change.xml @@ -62,16 +62,17 @@ - - - progress,pending_cam,pending_processing,pending_era_cam,completed,done + + + + progress,pending_cam,pending_processing,pending_era_cam,completed,done - + - + @@ -281,7 +282,7 @@