fredym7

Untitled

Oct 6th, 2021
525
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.37 KB | None | 0 0
  1. @csrf_exempt
  2. def payment_return(request):
  3.  
  4.    
  5.  
  6.     if request.method == 'POST':
  7.  
  8.         pid = request.POST.get('id')
  9.         status = request.POST.get('status')
  10.         pidtrack = request.POST.get('track_id')
  11.         order_id = request.POST.get('order_id')
  12.         amount = request.POST.get('amount')
  13.         card = request.POST.get('card_no')
  14.         date = request.POST.get('date')
  15.  
  16.         if Payment.objects.filter(order_id=order_id, payment_id=pid, amount=amount, status=1).count() == 1:
  17.  
  18.             idpay_payment = payment_init()
  19.  
  20.             payment = Payment.objects.get(payment_id=pid, amount=amount)
  21.             payment.status = status
  22.             payment.date = str(date)
  23.             payment.card_number = card
  24.             payment.idpay_track_id = pidtrack
  25.             payment.save()
  26.  
  27.             if str(status) == '10':
  28.                 result = idpay_payment.verify(pid, payment.order_id)
  29.  
  30.                 if 'status' in result:
  31.  
  32.                     payment.status = result['status']
  33.                     payment.bank_track_id = result['payment']['track_id']
  34.                     payment.save()
  35.  
  36.                     return render(request, 'accounts/profile.html', {'txt': result['message']})
  37.  
  38.                 else:
  39.                     txt = result['message']
  40.  
  41.             else:
  42.                 txt = "Error Code : " + str(status) + "   |   " + "Description : " + idpay_payment.get_status(status)
  43.  
  44.         else:
  45.             txt = "Order Not Found"
  46.  
  47.     else:
  48.         txt = "Bad Request"
  49.  
  50.  
  51.     return render(request, 'error.html', {'txt': txt})
  52.  
  53.  
  54. def payment_check(request, pk):
  55.  
  56.     payment = Payment.objects.get(pk=pk)
  57.  
  58.     idpay_payment = payment_init()
  59.     result = idpay_payment.inquiry(payment.payment_id, payment.order_id)
  60.  
  61.     if 'status' in result:
  62.  
  63.         payment.status = result['status']
  64.         payment.idpay_track_id = result['track_id']
  65.         payment.bank_track_id = result['payment']['track_id']
  66.         payment.card_number = result['payment']['card_no']
  67.         payment.date = str(result['date'])
  68.         payment.save()
  69.  
  70.     return render(request, 'accounts/profile.html', {'txt': result['message']})
  71.  
  72.  
  73. def requirement(request):
  74.     txt = "pip install idpay"
  75.  
  76.     return render(request, 'error.html', {'txt': txt})
  77.  
  78.  
  79. def about_me(request):
  80.     txt = 'IDPay'
  81.  
  82.     return render(request, 'error.html', {'txt': txt})
  83.  
  84.  
Advertisement
Add Comment
Please, Sign In to add comment