не работает код для подарочного сертификата

remotes/origin/hotfix/gift-cert-fix
gzbender 7 years ago
parent bfa1085b39
commit 9c2f508b47
  1. 3
      apps/payment/models.py
  2. 6
      apps/payment/views.py
  3. 4
      apps/user/templates/user/bonus-history.html

@ -253,8 +253,9 @@ class Payment(PolymorphicModel):
UserBonus.objects.create(user=self.user, amount=UserBonus.AMOUNT_PAID_ONE_MORE, is_service=True, UserBonus.objects.create(user=self.user, amount=UserBonus.AMOUNT_PAID_ONE_MORE, is_service=True,
action_name=UserBonus.ACTION_PAID_ONE_MORE) action_name=UserBonus.ACTION_PAID_ONE_MORE)
# Если юзер реферал и нет платежа, где применялась скидка # Если юзер реферал и нет платежа, где применялась скидка
# (после первой покупки реферала начисляются бонусы ему и пригласившему рефереру)
if hasattr(self.user, 'referral') and not self.user.referral.payment: if hasattr(self.user, 'referral') and not self.user.referral.payment:
# Платеж - как сигнал, что скидка применилась # Платеж - как сигнал, что была покупка и бонусы отправлены
self.user.referral.payment = self self.user.referral.payment = self
self.user.referral.save() self.user.referral.save()
# Отправляем кэшбэк # Отправляем кэшбэк

@ -78,7 +78,7 @@ class CourseBuyView(TemplateView):
access_expire=access_expire, access_expire=access_expire,
roistat_visit=roistat_visit, roistat_visit=roistat_visit,
) )
if use_bonuses: if use_bonuses and request.user.bonus:
if request.user.bonus >= course_payment.amount: if request.user.bonus >= course_payment.amount:
bonus = UserBonus.objects.create(amount= -course_payment.amount, user=request.user, payment=course_payment) bonus = UserBonus.objects.create(amount= -course_payment.amount, user=request.user, payment=course_payment)
course_payment.amount = 0 course_payment.amount = 0
@ -166,7 +166,7 @@ class SchoolBuyView(TemplateView):
date_start=date_start, date_start=date_start,
date_end=Payment.add_months(date_start), date_end=Payment.add_months(date_start),
) )
if use_bonuses: if use_bonuses and request.user.bonus:
if request.user.bonus >= school_payment.amount: if request.user.bonus >= school_payment.amount:
bonus = UserBonus.objects.create(amount= -school_payment.amount, user=request.user, payment=school_payment) bonus = UserBonus.objects.create(amount= -school_payment.amount, user=request.user, payment=school_payment)
school_payment.amount = 0 school_payment.amount = 0
@ -388,7 +388,7 @@ class GiftCertificateGetView(TemplateView):
ugs = get_object_or_404(UserGiftCertificate, pk=short_url.decode_url(slug)) ugs = get_object_or_404(UserGiftCertificate, pk=short_url.decode_url(slug))
except: except:
raise Http404() raise Http404()
if request.user.bonuses.filter(payment=ugs.payment).exists(): if request.user.bonuses.filter(payment=ugs.payment, referral__isnull=True).exists():
raise Http404() raise Http404()
bonuses = UserBonus.objects.create(user=request.user, amount=ugs.gift_certificate.price, bonuses = UserBonus.objects.create(user=request.user, amount=ugs.gift_certificate.price,
payment=ugs.payment) payment=ugs.payment)

@ -59,7 +59,7 @@
<div>2</div> <div>2</div>
<div> <div>
<div class="bonuses-table__title">Оплата второго месяца или курса</div> <div class="bonuses-table__title">Оплата второго месяца или курса</div>
Получайте бонусы при оплате последующий месяцев обучения или курсов. Чем большевы с нами, чем больше Лиликов вы получаете. Получайте бонусы при оплате последующих месяцев обучения или курсов. Чем дольше вы с нами, тем больше лиликов получаете.
</div> </div>
<div>+{{ amount_paid_one_more }} LIL</div> <div>+{{ amount_paid_one_more }} LIL</div>
<div><a class="btn btn_stroke" href="{% url 'courses' %}">ВЫБРАТЬ КУРС</a></div> <div><a class="btn btn_stroke" href="{% url 'courses' %}">ВЫБРАТЬ КУРС</a></div>
@ -69,7 +69,7 @@
<div>3</div> <div>3</div>
<div> <div>
<div class="bonuses-table__title">Видео-отзыв о Lil School</div> <div class="bonuses-table__title">Видео-отзыв о Lil School</div>
Выкладывайте свои видео-обзоры и видео-отзывы в Инстаграм с тегом @Lil.School #LilSchool и высылаете отчет на почту school@lil.city Выкладывайте свои видео-обзоры и видео-отзывы в Инстаграм с тегом #lil_отзыв и высылайте отчет нам на почту school@lil.city
</div> </div>
<div>+{{ amount_have_review }} LIL</div> <div>+{{ amount_have_review }} LIL</div>
<div><a class="btn btn_stroke" target="_blank" href="https://youtu.be/QrlR5sL_eGI">ПОСМОТРЕТЬ ПРИМЕР</a></div> <div><a class="btn btn_stroke" target="_blank" href="https://youtu.be/QrlR5sL_eGI">ПОСМОТРЕТЬ ПРИМЕР</a></div>

Loading…
Cancel
Save