КРИТИЧНО: При создании Sale использовалось неправильное поле!
Проблема:
- При проведении заказа Sale создавался с reservation.quantity
- Это количество в ЕДИНИЦАХ ПРОДАЖИ, а не в базовых!
- Пример: 1 ветка списывала 1 банч вместо 0.05 банча
Решение:
- Строка 410: sale_quantity = reservation.quantity_base (для товаров)
- Строка 368: quantity=reservation.quantity_base (для комплектов)
- Fallback на .quantity для обратной совместимости
Теперь:
- Sale.quantity всегда в базовых единицах
- FIFO списание корректно
- StockBatch уменьшается на правильное количество