Order creation API: Do not consume expired carts

This commit is contained in:
Raphael Michel
2019-08-12 15:57:40 +02:00
parent 9d6ff20191
commit bc9d8f5bd8
2 changed files with 32 additions and 1 deletions

View File

@@ -657,7 +657,9 @@ class OrderCreateSerializer(I18nAwareModelSerializer):
delete_cps = []
quota_avail_cache = {}
if consume_carts:
for cp in CartPosition.objects.filter(event=self.context['event'], cart_id__in=consume_carts):
for cp in CartPosition.objects.filter(
event=self.context['event'], cart_id__in=consume_carts, expires__gt=now()
):
quotas = (cp.variation.quotas.filter(subevent=cp.subevent)
if cp.variation else cp.item.quotas.filter(subevent=cp.subevent))
for quota in quotas: