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