1.0.12 subscribe buy routines
This commit is contained in:
@@ -37,8 +37,15 @@ def get_orders_for_user(user):
|
||||
enable=True,
|
||||
user=user,
|
||||
subscribe_for_user=None,
|
||||
# createDT__gt=datetime.now() - timedelta(hours=1)
|
||||
createDT__gt=datetime.now() - timedelta(hours=1)
|
||||
).order_by('subscribe', '-createDT').distinct('subscribe')
|
||||
|
||||
SubscribeOrder.objects.filter(
|
||||
user=user
|
||||
).exclude(
|
||||
id__in=orders.values_list('id', flat=True)
|
||||
).update(enable=False)
|
||||
|
||||
return orders
|
||||
|
||||
|
||||
|
||||
@@ -39,6 +39,32 @@ class SubscribeOrder(BaseModel):
|
||||
verbose_name = _('Заказ на подписку')
|
||||
verbose_name_plural = _('Заказы на подписки')
|
||||
|
||||
def activate_subscribe_for_user(self):
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
kwargs = {
|
||||
'user': self.user,
|
||||
'subscribe': self.subscribe,
|
||||
'last_paid_DT': datetime.now(),
|
||||
'paid_period_from_DT': datetime.now(),
|
||||
'paid_period_to_DT': datetime.now() + timedelta(hours=self.subscribe.period),
|
||||
'receive_finish_subscribe_msg': True,
|
||||
'enable': True,
|
||||
}
|
||||
subscribe_for_user = SubscribeForUser.objects.create(**kwargs)
|
||||
self.subscribe_for_user = subscribe_for_user
|
||||
self.enable = False
|
||||
self.save()
|
||||
|
||||
subscribes_for_user = SubscribeForUser.objects.filter(
|
||||
user=self.user
|
||||
).exclude(
|
||||
id=subscribe_for_user.id
|
||||
)
|
||||
subscribes_for_user.update(enable=False)
|
||||
|
||||
return self
|
||||
|
||||
def __str__(self):
|
||||
res = 'Заказ'
|
||||
if self.subscribe:
|
||||
|
||||
Reference in New Issue
Block a user