1
0
forked from erp-dev/erp

feat: added pre sales order and pre purchase order models and crud

This commit is contained in:
2026-01-31 23:26:01 +08:00
parent a093174913
commit f643b643b7
12 changed files with 1008 additions and 24 deletions

View File

@@ -1,4 +1,5 @@
from django.test import TestCase
from django.contrib.auth import get_user_model
from basic_info import models as basic_models
from business import models as business_models
@@ -19,12 +20,17 @@ class PreSalesOrderServiceTestCase(TestCase):
self.operator,
) = create_sales_fixtures()
self.user = get_user_model().objects.create_user(username='sales-user', password='pass')
self.operator.sys_user = self.user
self.operator.save(update_fields=['sys_user'])
def test_create_pre_sales_order_success(self):
pre_sales_order = pre_order_services.create_pre_sales_order(
merchant=self.merchant,
customer_id=self.customer.id,
warehouse_id=self.warehouse_relaxed.id,
created_by=self.operator,
created_by=self.user,
operator=self.operator,
kind=business_models.SalesOrderKindEnum.WHOLESALE,
items=[
{
@@ -41,7 +47,8 @@ class PreSalesOrderServiceTestCase(TestCase):
self.assertEqual(pre_sales_order.merchant_id, self.merchant.id)
self.assertEqual(pre_sales_order.customer_id, self.customer.id)
self.assertEqual(pre_sales_order.warehouse_id, self.warehouse_relaxed.id)
self.assertEqual(pre_sales_order.created_by_id, self.operator.id)
self.assertEqual(pre_sales_order.created_by_id, self.user.id)
self.assertEqual(pre_sales_order.operator_id, self.operator.id)
self.assertEqual(pre_sales_order.items.count(), 1)
item = pre_sales_order.items.first()
@@ -65,7 +72,8 @@ class PreSalesOrderServiceTestCase(TestCase):
merchant=self.merchant,
customer_id=other_customer.id,
warehouse_id=self.warehouse_relaxed.id,
created_by=self.operator,
created_by=self.user,
operator=self.operator,
items=[{'product_id': self.product.id, 'quantity': '1', 'unit': ''}],
)
@@ -74,7 +82,8 @@ class PreSalesOrderServiceTestCase(TestCase):
merchant=self.merchant,
customer_id=self.customer.id,
warehouse_id=self.warehouse_relaxed.id,
created_by=self.operator,
created_by=self.user,
operator=self.operator,
items=[{'product_id': self.product.id, 'quantity': '10', 'unit': ''}],
)
@@ -103,7 +112,8 @@ class PreSalesOrderServiceTestCase(TestCase):
merchant=self.merchant,
customer_id=self.customer.id,
warehouse_id=self.warehouse_relaxed.id,
created_by=self.operator,
created_by=self.user,
operator=self.operator,
items=[{'product_id': self.product.id, 'quantity': '10', 'unit': ''}],
)
order_id = pre_sales_order.id