add new features
This commit is contained in:
18
core/apps/orders/migrations/0023_alter_party_orders.py
Normal file
18
core/apps/orders/migrations/0023_alter_party_orders.py
Normal file
@@ -0,0 +1,18 @@
|
||||
# Generated by Django 5.2.4 on 2025-08-25 10:14
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('orders', '0022_alter_party_number'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='party',
|
||||
name='orders',
|
||||
field=models.ManyToManyField(blank=True, related_name='parties', to='orders.order'),
|
||||
),
|
||||
]
|
||||
@@ -28,7 +28,7 @@ class Party(BaseModel):
|
||||
)
|
||||
|
||||
number = models.PositiveIntegerField(default=0)
|
||||
orders = models.ManyToManyField(Order, related_name='parties', null=True, blank=True)
|
||||
orders = models.ManyToManyField(Order, related_name='parties', blank=True)
|
||||
mediator = models.ForeignKey(User, on_delete=models.CASCADE, related_name='parties')
|
||||
# dates
|
||||
delivery_date = models.DateField()
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
from django.db import transaction
|
||||
|
||||
from rest_framework import serializers
|
||||
|
||||
# orders
|
||||
from core.apps.orders.models import Order
|
||||
from core.apps.orders.tasks.order import create_inventory
|
||||
# products
|
||||
from core.apps.products.models import Product, Unity
|
||||
from core.apps.products.serializers.product import ProductListSerializer
|
||||
@@ -80,6 +81,7 @@ class MultipleOrderCreateSerializer(serializers.Serializer):
|
||||
date=common_date,
|
||||
employee=self.context.get('user'),
|
||||
))
|
||||
create_inventory.delay(resource['wherehouse'],resource['quantity'],resource)
|
||||
|
||||
created_orders = Order.objects.bulk_create(orders)
|
||||
return created_orders
|
||||
|
||||
14
core/apps/orders/tasks/order.py
Normal file
14
core/apps/orders/tasks/order.py
Normal file
@@ -0,0 +1,14 @@
|
||||
from celery import shared_task
|
||||
|
||||
from core.apps.wherehouse.models.inventory import Inventory
|
||||
|
||||
|
||||
@shared_task
|
||||
def create_inventory(wherehouse, quantity, product, unity, price):
|
||||
Inventory.objects.create(
|
||||
wherehouse__id=wherehouse,
|
||||
quantity=quantity,
|
||||
product__id=product,
|
||||
unity__id=unity,
|
||||
price=price
|
||||
)
|
||||
Reference in New Issue
Block a user