mirror of
https://github.com/ae-utbm/sith.git
synced 2025-07-09 19:40:19 +00:00
Add support for subscription typed products in eboutic
This commit is contained in:
@ -5,6 +5,7 @@ from django.conf import settings
|
||||
from accounting.models import CurrencyField
|
||||
from counter.models import Counter, Product, Customer, Selling, Refilling
|
||||
from core.models import User
|
||||
from subscription.models import Subscription, Subscriber
|
||||
|
||||
class Basket(models.Model):
|
||||
"""
|
||||
@ -92,6 +93,36 @@ class Invoice(models.Model):
|
||||
date=self.date,
|
||||
)
|
||||
new.save()
|
||||
if i.product_id == settings.SITH_PRODUCT_SUBSCRIPTION_ONE_SEMESTER:
|
||||
s = Subscriber.objects.filter(id=self.user.id).first()
|
||||
sub = Subscription(
|
||||
member=s,
|
||||
subscription_type='un-semestre',
|
||||
payment_method="EBOUTIC",
|
||||
location="EBOUTIC",
|
||||
)
|
||||
sub.subscription_start = Subscription.compute_start()
|
||||
sub.subscription_start = Subscription.compute_start(
|
||||
duration=settings.SITH_SUBSCRIPTIONS[sub.subscription_type]['duration'])
|
||||
sub.subscription_end = Subscription.compute_end(
|
||||
duration=settings.SITH_SUBSCRIPTIONS[sub.subscription_type]['duration'],
|
||||
start=sub.subscription_start)
|
||||
sub.save()
|
||||
elif i.product_id == settings.SITH_PRODUCT_SUBSCRIPTION_TWO_SEMESTERS:
|
||||
s = Subscriber.objects.filter(id=self.user.id).first()
|
||||
sub = Subscription(
|
||||
member=s,
|
||||
subscription_type='deux-semestres',
|
||||
payment_method="EBOUTIC",
|
||||
location="EBOUTIC",
|
||||
)
|
||||
sub.subscription_start = Subscription.compute_start()
|
||||
sub.subscription_start = Subscription.compute_start(
|
||||
duration=settings.SITH_SUBSCRIPTIONS[sub.subscription_type]['duration'])
|
||||
sub.subscription_end = Subscription.compute_end(
|
||||
duration=settings.SITH_SUBSCRIPTIONS[sub.subscription_type]['duration'],
|
||||
start=sub.subscription_start)
|
||||
sub.save()
|
||||
self.validated = True
|
||||
self.save()
|
||||
|
||||
|
@ -55,6 +55,8 @@ class EbouticMain(TemplateView):
|
||||
""" Add a product to the basket """
|
||||
try:
|
||||
p = Product.objects.filter(id=int(request.POST['product_id'])).first()
|
||||
if not p.buying_groups.exists():
|
||||
self.basket.add_product(p)
|
||||
for g in p.buying_groups.all():
|
||||
if request.user.is_in_group(g.name):
|
||||
self.basket.add_product(p)
|
||||
|
Reference in New Issue
Block a user