LIL-680 Подарочные сертификаты

remotes/origin/feature/LIL-711
gzbender 7 years ago
parent d65a6568ab
commit 261191562b
  1. 8
      apps/payment/models.py
  2. 11
      apps/payment/views.py
  3. 1
      project/urls.py

@ -292,3 +292,11 @@ class UserBonus(models.Model):
class Meta:
ordering = ('created_at',)
class GiftCertificate(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='bonuses')
recipient = models.EmailField()
amount = models.DecimalField(max_digits=8, decimal_places=2, default=0, editable=False)
payment = models.ForeignKey(Payment, on_delete=models.SET_NULL, null=True)
bonus_sended = models.ForeignKey(UserBonus, blank=True, null=True)

@ -14,7 +14,7 @@ from django.contrib import messages
from django.contrib.auth.decorators import login_required
from django.http import HttpResponse
from django.shortcuts import redirect, get_object_or_404
from django.views.generic import View, TemplateView
from django.views.generic import View, TemplateView, DetailView
from django.views.decorators.csrf import csrf_exempt
from django.urls import reverse_lazy
from django.utils.decorators import method_decorator
@ -27,7 +27,7 @@ from apps.course.models import Course
from apps.school.models import SchoolSchedule
from apps.payment.tasks import transaction_to_mixpanel, product_payment_to_mixpanel, transaction_to_roistat
from .models import AuthorBalance, CoursePayment, SchoolPayment, Payment, UserBonus
from .models import AuthorBalance, CoursePayment, SchoolPayment, Payment, UserBonus, GiftCertificate
logger = logging.getLogger('django')
@ -297,3 +297,10 @@ class PaymentwallCallbackView(View):
else:
raise DisallowedPingbackHost
return HttpResponse(status=403)
class GiftCertificateGetView(DetailView):
model = GiftCertificate
def get(self):
pass

@ -91,6 +91,7 @@ urlpatterns = [
path('contest/<str:slug>/', ContestView.as_view(), name='contest'),
path('contest-work/<int:pk>/', ContestWorkView.as_view(), name='contest_work'),
path('contest-work/<int:contest_work_id>/comment', contest_work_comment, name='contest_work_comment'),
path('gift/<str:slug>/get', ContestView.as_view(), name='contest'),
]

Loading…
Cancel
Save