From 1855e3ae679029a510c70a50d0e38e2687c5a6ce Mon Sep 17 00:00:00 2001 From: caoqianming Date: Thu, 29 Aug 2024 10:51:44 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20bind=5Froutepack=20=E6=97=B6=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C=E4=BA=A7=E5=87=BA=E6=98=AF=E5=90=A6=E4=B8=80=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/mtm/services.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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',