Add order respondes

This commit is contained in:
2022-10-03 01:41:53 +03:00
parent 9a1b0f7d5a
commit 6f70716f0a
12 changed files with 258 additions and 50 deletions

View File

@@ -251,3 +251,26 @@ class OrderImage(models.Model):
return f"{self.id}: {self.order}"
class OrderRespond(models.Model):
create_time = models.DateTimeField(default=datetime.now, editable=False, verbose_name="Время отклика")
user = models.ForeignKey(SiteUser, on_delete=models.CASCADE, related_name="respond_user", verbose_name="Пользователь")
order = models.ForeignKey(Order, on_delete=models.CASCADE, related_name="respond_order", verbose_name="Заказ")
class Meta:
constraints = [
models.UniqueConstraint(
fields=['user', 'order'], name='unique_order_respond_user_order'
)
]
def __str__(self):
return f"{self.order}: {self.user}"
def save(self, *args, **kwargs):
if Order.objects.get(id=self.order.id) == self.user.id:
raise Exception("User can't respond to self order")
self.full_clean()
super().save(*args, **kwargs)