diff --git a/apps/mtm/services.py b/apps/mtm/services.py index b8d483a6..fd28993d 100644 --- a/apps/mtm/services.py +++ b/apps/mtm/services.py @@ -151,10 +151,14 @@ def bind_routepack(ticket: Ticket, transition, new_ticket_data: dict): raise ParseError('重复创建工单') if not Route.objects.filter(routepack=routepack).exists(): raise ParseError('缺少步骤') - first_route = Route.objects.filter(routepack=routepack).order_by('sort', 'process__sort', 'create_time').first() + r_qs = Route.objects.filter(routepack=routepack).order_by('sort', 'process__sort', 'create_time') + first_route = r_qs.first() + last_route = r_qs.last() if first_route.batch_bind: first_route.batch_bind = False first_route.save(update_fields=['batch_bind']) + if last_route.material_out != routepack.material: + raise ParseError('最后一步产出与工艺包不一致') ticket_data = ticket.ticket_data ticket_data.update({ 't_model': 'routepack',