gold eggs backend
Some checks failed
Build and Push to Docker Hub / build-test-push (push) Failing after 1m55s

This commit is contained in:
2026-04-15 08:59:36 +02:00
commit ab73d05ecc
359 changed files with 14415 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
from django.db.models.signals import post_save
from django.dispatch import receiver
from core.apps.eggs.models.order import Order
@receiver(post_save, sender=Order)
def update_order_status(sender, instance, created, **kwargs):
if created:
if instance.courier_id is None:
Order.objects.filter(id=instance.id).update(status="pending")
elif instance.courier_id is not None and instance.status == "pending":
Order.objects.filter(id=instance.id).update(status="delivery")
else:
if instance.courier_id is not None and instance.status == "pending":
Order.objects.filter(id=instance.id).update(status="delivery")
if instance.status == "success":
order_items = instance.order_items.all()
for item in order_items:
if item.courier_product_id:
if item.courier_product_id.count < item.count:
print(item.courier_product_id.count, item.count)
raise ValueError(
"Count cannot be greater than courier product count"
)
item.courier_product_id.count -= item.count
print(item.courier_product_id.count, item.count)
item.courier_product_id.save()
if (
instance.price == instance.price_paid
and instance.status == "success"
):
Order.objects.filter(id=instance.id).update(status="done")