Skip to content

Commit fe6936e

Browse files
authored
Merge pull request #93 from golony6449/feature/golony/payment
티켓 생성 로직 추가
2 parents 812c529 + 755fe52 commit fe6936e

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

payment/views.py

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1+
import datetime
2+
13
from django.db import transaction
24
from rest_framework.decorators import api_view
35
from rest_framework.response import Response
46
from rest_framework.views import APIView
57

68
from payment import enum
7-
from ticket.models import TicketType
9+
from ticket.models import TicketType, Ticket
810
from payment.logic import generate_payment_key
911
from payment.models import Payment, PaymentHistory
1012

@@ -23,6 +25,9 @@ def post(self, request):
2325
if settings.DEBUG is False and request.META.get("REMOTE_ADDR") not in portone_ips:
2426
raise ValueError("Not Allowed IP")
2527

28+
if request.data["status"] != "paid":
29+
raise ValueError("결제 승인건 이외의 요청")
30+
2631
payment_key = request.data["merchant_uid"]
2732

2833
target_payment = Payment.objects.get(payment_key=payment_key)
@@ -36,8 +41,12 @@ def post(self, request):
3641
)
3742
payment_history.save()
3843

39-
if request.data["status"] != "paid":
40-
raise ValueError("결제 승인건 이외의 요청")
44+
ticket = Ticket.objects.create(
45+
ticket_type=target_payment.ticket_type,
46+
bought_at=datetime.datetime.now(),
47+
user=target_payment.user,
48+
)
49+
ticket.save()
4150

4251
dto = {
4352
"msg": "ok",

0 commit comments

Comments
 (0)