feat: add showcase manager service
This commit is contained in:
@@ -162,8 +162,6 @@ class ShowcaseManager:
|
|||||||
Raises:
|
Raises:
|
||||||
IntegrityError: если экземпляр уже был продан (защита на уровне БД)
|
IntegrityError: если экземпляр уже был продан (защита на уровне БД)
|
||||||
"""
|
"""
|
||||||
from inventory.services.sale_processor import SaleProcessor
|
|
||||||
|
|
||||||
sold_count = 0
|
sold_count = 0
|
||||||
order = order_item.order
|
order = order_item.order
|
||||||
|
|
||||||
@@ -207,21 +205,10 @@ class ShowcaseManager:
|
|||||||
|
|
||||||
# Сначала устанавливаем order_item для правильного определения цены
|
# Сначала устанавливаем order_item для правильного определения цены
|
||||||
reservation.order_item = order_item
|
reservation.order_item = order_item
|
||||||
reservation.save()
|
|
||||||
|
|
||||||
# ВАЖНО: Мы НЕ создаём продажу (Sale) здесь и НЕ меняем статус на 'converted_to_sale'.
|
# ВАЖНО: Мы НЕ создаём продажу (Sale) здесь и НЕ меняем статус на 'converted_to_sale'.
|
||||||
# Это сделает сигнал create_sale_on_order_completion автоматически.
|
# Это сделает сигнал create_sale_on_order_completion автоматически.
|
||||||
# Таким образом обеспечивается единая точка создания продаж для всех типов товаров.
|
# Таким образом обеспечивается единая точка создания продаж для всех типов товаров.
|
||||||
|
reservation.save()
|
||||||
# SaleProcessor.create_sale_from_reservation(
|
|
||||||
# reservation=reservation,
|
|
||||||
# order=order
|
|
||||||
# )
|
|
||||||
|
|
||||||
# Статус резерва остается 'reserved', чтобы сигнал его увидел
|
|
||||||
# reservation.status = 'converted_to_sale'
|
|
||||||
# reservation.converted_at = timezone.now()
|
|
||||||
# reservation.save()
|
|
||||||
|
|
||||||
sold_count += 1
|
sold_count += 1
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user