gold eggs backend
Some checks failed
Build and Push to Docker Hub / build-test-push (push) Failing after 1m55s
Some checks failed
Build and Push to Docker Hub / build-test-push (push) Failing after 1m55s
This commit is contained in:
52
core/apps/eggs/models/group.py
Normal file
52
core/apps/eggs/models/group.py
Normal file
@@ -0,0 +1,52 @@
|
||||
"""
|
||||
Groups model
|
||||
"""
|
||||
|
||||
from django.core.validators import MinValueValidator
|
||||
from django.db import models
|
||||
|
||||
from core.apps.eggs.models import party
|
||||
from core.apps.eggs.models import product
|
||||
from core.http.models import base
|
||||
|
||||
|
||||
class Group(base.AbstractBaseModel):
|
||||
product_id = models.ForeignKey(
|
||||
to=product.Product, on_delete=models.CASCADE, related_name="groups"
|
||||
)
|
||||
party_id = models.ForeignKey(
|
||||
to=party.Party,
|
||||
on_delete=models.CASCADE,
|
||||
related_name="groups",
|
||||
blank=True,
|
||||
null=True,
|
||||
)
|
||||
entry_price = models.DecimalField(max_digits=30, decimal_places=2)
|
||||
unit_price = models.DecimalField(max_digits=30, decimal_places=2)
|
||||
wholesale_price = models.DecimalField(max_digits=30, decimal_places=2)
|
||||
quantity = models.IntegerField(
|
||||
validators=[MinValueValidator(0)], default=0
|
||||
)
|
||||
broken_eggs = models.IntegerField(
|
||||
validators=[MinValueValidator(0)], default=0
|
||||
)
|
||||
date = models.DateTimeField(auto_now=True)
|
||||
name = models.CharField(max_length=255, blank=True, null=True)
|
||||
|
||||
def clean(self):
|
||||
if self.quantity < 0:
|
||||
raise ValueError("Quantity can't be negative")
|
||||
|
||||
# def save(self, *args, **kwargs):
|
||||
# self.party_id.count += self.quantity
|
||||
# self.party_id.price += self.entry_price * self.quantity
|
||||
# self.party_id.save()
|
||||
# super().save(*args, **kwargs)
|
||||
|
||||
def __str__(self) -> str:
|
||||
return f"{self.product_id}, Quantity - {self.quantity}"
|
||||
|
||||
class Meta:
|
||||
verbose_name = "Group"
|
||||
verbose_name_plural = "Groups"
|
||||
db_table = "group"
|
||||
Reference in New Issue
Block a user