From 62147a91af50f246942adb471d421941dd37f3ba Mon Sep 17 00:00:00 2001 From: Andrey Smakotin Date: Mon, 5 Jan 2026 01:36:25 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20endpoint=20=D1=81=D0=BE=D0=B7=D0=B4=D0=B0=D0=BD=D0=B8?= =?UTF-8?q?=D1=8F=20=D0=B7=D0=B0=D0=BA=D0=B0=D0=B7=D0=B0=20=D0=B8=D0=B7=20?= =?UTF-8?q?POS=20=D1=81=20=D1=80=D0=B5=D0=B7=D0=B5=D1=80=D0=B2=D0=B8=D1=80?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=D0=BC=20=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=80=D0=B8=D0=BD=D0=BD=D1=8B=D1=85=20=D0=B1=D1=83=D0=BA=D0=B5?= =?UTF-8?q?=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - orders/views.py: новая функция create_order_from_pos() - orders/urls.py: маршрут POST /orders/api/create-from-pos/ - Логика: * Создаёт Order со статусом 'draft' * Создаёт OrderItem с флагом is_from_showcase=True для showcase_kit * Резервирует ShowcaseItem через reserve_for_order() (in_cart → reserved) * Возвращает order_number в JSON - Транзакция atomic гарантирует целостность данных - Правильная архитектура: endpoint в orders app, не в POS --- myproject/orders/urls.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/myproject/orders/urls.py b/myproject/orders/urls.py index a19aeb5..e0e759b 100644 --- a/myproject/orders/urls.py +++ b/myproject/orders/urls.py @@ -31,4 +31,7 @@ urlpatterns = [ path('statuses/create/', views.order_status_create, name='status_create'), path('statuses//edit/', views.order_status_update, name='status_edit'), path('statuses//delete/', views.order_status_delete, name='status_delete'), + + # Создать отложенный заказ (черновик) из POS [POST] + path('api/create-from-pos/', views.create_order_from_pos, name='create-from-pos'), ]