def checkout_page(request): cart_obj, new_obj = Cart.objects.new_or_get(request) user = request.user status = False if pay.objects.filter(user=user, STATUS='TXN_SUCCESS'): trns = pay.objects.filter(user=user, STATUS='TXN_SUCCESS')[0] status = True if request.user.is_authenticated: if request.method == "POST": name = request.POST.get('name', '') phone = request.POST.get('phone', '') email = request.POST.get('email', '') address = request.POST.get( 'address1', '') + " " + request.POST.get('address2', '') city = request.POST.get('city', '') state = request.POST.get('state', '') zip_code = request.POST.get('zip_code', '') amount = cart_obj.total order = Order(name=name, phone=phone, email=email, address=address, city=city, state=state, zip_code=zip_code) order.save() # Request paytm to transfer the amount to your account after payment by user param_dict = { 'MID': 'QNsvNs85056236851568', 'ORDER_ID': str(order.order_id), 'TXN_AMOUNT': str(amount), 'CUST_ID': email, 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': 'WEBSTAGING', 'CHANNEL_ID': 'WEB', 'CALLBACK_URL': 'http://127.0.0.1:8000/handlerequest', } param_dict['CHECKSUMHASH'] = Checksum.generate_checksum( param_dict, MERCHANT_KEY) return render(request, 'paytm.html', { 'param_dict': param_dict, 'user': user }) return render(request, 'checkout.html', { 'cart': cart_obj, 'status': status }) else: return redirect('user:user_login')
def test_order(self): order = Order() order.id = 1 order.create_order_no() self.assertTrue(re.match(r'^\d+T\d+$', order.order_no))