all cards of a trade offer are now ordered alphabetically. fixes #12

This commit is contained in:
badblocks 2025-04-08 23:00:49 -07:00
parent b5db5af185
commit 1c95ccfff7
2 changed files with 14 additions and 19 deletions

View file

@ -111,6 +111,16 @@ class TradeOffer(models.Model):
# Returns the list of want_cards (through objects) that still have available quantity.
return [item for item in self.trade_offer_want_cards.all() if item.quantity > item.qty_accepted]
@property
def have_cards_available_qs(self):
# Returns a queryset of TradeOfferHaveCard objects that still have available quantity
return self.trade_offer_have_cards.filter(quantity__gt=F("qty_accepted")).select_related("card")
@property
def want_cards_available_qs(self):
# Returns a queryset of TradeOfferWantCard objects that still have available quantity
return self.trade_offer_want_cards.filter(quantity__gt=F("qty_accepted")).select_related("card")
class TradeOfferHaveCard(models.Model):
"""
Through model for TradeOffer.have_cards.
@ -140,6 +150,7 @@ class TradeOfferHaveCard(models.Model):
class Meta:
unique_together = ("trade_offer", "card")
ordering = ['card__name']
class TradeOfferWantCard(models.Model):
"""
@ -169,6 +180,7 @@ class TradeOfferWantCard(models.Model):
class Meta:
unique_together = ("trade_offer", "card")
ordering = ['card__name']
class TradeAcceptance(models.Model):
class AcceptanceState(models.TextChoices):