1
0
forked from erp-dev/erp

fix: quantity when converting to sales_order

This commit is contained in:
2026-02-02 18:45:29 +08:00
parent 9c07d7d85a
commit 1c630606c8
3 changed files with 22 additions and 7 deletions

View File

@@ -9,6 +9,7 @@ from django.core.exceptions import ValidationError
from django.utils import timezone
from basic_info import models as basic_info_models
from stock import models as stock_models
from . import models
from . import services as business_services
@@ -437,11 +438,23 @@ def convert_pre_sales_order_to_sales_order(
if not consume_ids:
raise ValueError(f'明细 {item.id} 缺少配货库存明细')
quantity_from_details: Decimal | None = None
if consume_ids:
details_by_id = stock_models.StockChangeDetail.objects.filter(
id__in=consume_ids,
merchant=merchant,
).in_bulk()
if details_by_id:
total = Decimal('0')
for detail in details_by_id.values():
total += detail.quantity
quantity_from_details = total
items_payload.append(
{
'product_id': item.product_id,
'price': '0',
'quantity': str(item.quantity),
'quantity': str(quantity_from_details or item.quantity),
'unit': item.unit or None,
'color': item.color,
'spec': item.spec,