|
|
|
|
@ -13,6 +13,9 @@ from rest_framework.response import Response |
|
|
|
|
from rest_framework.views import APIView |
|
|
|
|
from yandex_money.models import Payment |
|
|
|
|
from django.conf import settings |
|
|
|
|
from django.core.mail import EmailMultiAlternatives |
|
|
|
|
from django.template.loader import get_template |
|
|
|
|
from django.template import Context |
|
|
|
|
|
|
|
|
|
from courses.models import Course |
|
|
|
|
from courses.api import CourseParamsApi |
|
|
|
|
@ -154,20 +157,26 @@ class InvoiceDetailView(APIView): |
|
|
|
|
) |
|
|
|
|
invoice.yandex_pay = yandex_pay |
|
|
|
|
|
|
|
|
|
msg = EmailMessage( |
|
|
|
|
'Выставлен новый счёт.', |
|
|
|
|
'''Менеджер %s выставил счёт пользователю %s на курс "%s".''' |
|
|
|
|
% ( |
|
|
|
|
invoice.bill.opener.get_full_name(), |
|
|
|
|
invoice.bill.user.email, |
|
|
|
|
Course.objects.get(token=invoice.bill.course_token).title, |
|
|
|
|
), |
|
|
|
|
'robo@skillbox.ru', |
|
|
|
|
[invoice.bill.opener.email], |
|
|
|
|
bcc=['dmitry.dolya@skillbox.ru'], |
|
|
|
|
) |
|
|
|
|
plaintext = get_template('mail/sales/back_set_bill.txt') |
|
|
|
|
html = get_template('mail/sales/back_set_bill.txt') |
|
|
|
|
|
|
|
|
|
context = Context({ |
|
|
|
|
'user_email': invoice.bill.user.email, |
|
|
|
|
'opener_full_name': invoice.bill.opener.get_full_name(), |
|
|
|
|
'course_title': Course.objects.get(token=invoice.bill.course_token).title, |
|
|
|
|
'date': str(invoice.date), |
|
|
|
|
'price': invoice.price, |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
subject, from_email, to = 'Выставлен новый счёт', 'robo@skillbox.ru', 'invoice.bill.opener.email' |
|
|
|
|
|
|
|
|
|
text_content = plaintext.render(context) |
|
|
|
|
html_content = html.render(context) |
|
|
|
|
|
|
|
|
|
msg = EmailMultiAlternatives(subject, text_content, from_email, [to]) |
|
|
|
|
msg.attach_alternative(html_content, "text/html") |
|
|
|
|
msg.send() |
|
|
|
|
|
|
|
|
|
invoice.save() |
|
|
|
|
|
|
|
|
|
return Response(InvoiceSerializer(invoice).data, status=200) |
|
|
|
|
|