1
0
forked from erp-dev/erp

feat: big

This commit is contained in:
2026-07-01 11:51:13 +08:00
parent 7c9b77afb0
commit 5170700234
28 changed files with 933 additions and 37 deletions

View File

@@ -23,6 +23,9 @@ from .tasks import (
create_purchase_return_order_stock_entries,
create_sales_return_order_stock_entries,
)
from .notifications import enqueue_business_order_speech
class BalanceService:
@staticmethod
def adjust_supplier_balance(
@@ -317,6 +320,7 @@ def create_purchase_order(
models.PurchaseOrderItem.objects.bulk_create(bulk_objects)
purchase_order.refresh_from_db()
enqueue_business_order_speech(order=purchase_order, order_label='采购单', action_label='创建')
return purchase_order
@@ -462,6 +466,7 @@ def create_sales_order(
models.SalesOrderItem.objects.bulk_create(bulk_objects)
sales_order.refresh_from_db()
enqueue_business_order_speech(order=sales_order, order_label='销售单', action_label='创建')
return sales_order
@@ -613,6 +618,7 @@ def create_purchase_return_order(
models.PurchaseReturnOrderItem.objects.bulk_create(bulk_objects)
return_order.refresh_from_db()
enqueue_business_order_speech(order=return_order, order_label='采购退货单', action_label='创建')
return return_order
@@ -766,6 +772,7 @@ def create_sales_return_order(
models.SalesReturnOrderItem.objects.bulk_create(bulk_objects)
return_order.refresh_from_db()
enqueue_business_order_speech(order=return_order, order_label='销售退货单', action_label='创建')
return return_order
@@ -883,6 +890,7 @@ def create_payment_order(
discount_amount=normalized_discount,
)
payment_order.refresh_from_db()
enqueue_business_order_speech(order=payment_order, order_label='付款单', action_label='创建')
return payment_order
@@ -921,6 +929,7 @@ def create_receipt_order(
discount_amount=normalized_discount,
)
receipt_order.refresh_from_db()
enqueue_business_order_speech(order=receipt_order, order_label='收款单', action_label='创建')
return receipt_order
@@ -1687,6 +1696,7 @@ def _cancel_order_impl(
locked.status = cancelled_status
locked.save(update_fields=['status', 'updated_at'])
locked.refresh_from_db(fields=['status', 'updated_at'])
enqueue_business_order_speech(order=locked, order_label=error_label, action_label='作废')
return locked