def index(request): # if this is a POST request we need to process the form data user = request.user existing_order = get_user_pending_order(request) bill_amount = existing_order.get_cart_total() up = Profile.objects.filter(user=user).update(reg_paymethod='1') if user.college == '2' and not user.reg_amount: bill_amount = bill_amount + 500 Profile.objects.filter(user=user).update(reg_paymethod='3') response = api.payment_request_create( amount=str(bill_amount), purpose='Samyak workshop registration', send_email=False, email=user.email, buyer_name=user.username, phone='', redirect_url=request.build_absolute_uri(reverse("payments:list"))) print(response) pid = response['payment_request']['id'] bill = response['payment_request']['amount'] pur = response['payment_request']['purpose'] stat = response['payment_request']['status'] settings.USER = user instamojo.objects.create(user=user, payment_id=pid, amount=bill, purpose=pur, status=stat) return HttpResponseRedirect(response['payment_request']['longurl']) # if a GET (or any other method) we'll create a blank form return render(request, 'pay.html', {})
def payment(request, **kwargs): user = request.user settings.USER = user MERCHANT_KEY = settings.PAYTM_MERCHANT_KEY MERCHANT_ID = settings.PAYTM_MERCHANT_ID CALLBACK_URL = settings.HOST_URL + settings.PAYTM_CALLBACK_URL # Generating unique temporary ids order_id = Checksum.__id_generator__() existing_order = get_user_pending_order(request) bill_amount = existing_order.get_cart_total() up=Profile.objects.filter(user=settings.USER).update(reg_paymethod='1') if user.college=='2' and not user.reg_amount: bill_amount=bill_amount+500 user.profile.reg_payment=True Profile.objects.filter(user=user).update(reg_paymethod='3') if bill_amount: data_dict = { 'MID': MERCHANT_ID, 'ORDER_ID': order_id, 'TXN_AMOUNT': bill_amount, 'CUST_ID': user.email, 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': settings.PAYTM_WEBSITE, 'CHANNEL_ID': 'WEB', 'CALLBACK_URL': CALLBACK_URL, } param_dict = data_dict param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(data_dict, MERCHANT_KEY) return render(request, "payment.html", {'paytmdict': param_dict, 'user': user}) return HttpResponse("Bill Amount Could not find. ?bill_amount=10")
def payment_online_cod(request): customers = bank_customer.objects.all() admin_bank = get_object_or_404(bank_customer, customer_name='Admin') if request.method=="POST": form=enter_payment_details(request.POST or None) if form.is_valid(): cus_name = form.cleaned_data['customer_name'] bank_name = form.cleaned_data['Bank'] Card_no = form.cleaned_data['card_no'] ctype = form.cleaned_data['card_type'] cvv_bc = form.cleaned_data['card_cvv'] instance = bank_customer.objects.filter(Bank=bank_name, customer_name=cus_name, card_no=Card_no, card_type=ctype, card_cvv=cvv_bc).first() if instance: transId = generate_order_id() current_order = get_user_pending_order(request) new_payment = OnlinePayment.objects.create(transaction_id=transId,amount_paid=current_order.get_cart_total(),customer=instance) instance.bank_balance = instance.bank_balance - current_order.get_cart_total() admin_bank.bank_balance = admin_bank.bank_balance + current_order.get_cart_total() instance.save() admin_bank.save() current_order.is_ordered = True return redirect(reverse('shopping_cart:purchase_success', kwargs={'payment_mode':'Online-Payment'})) else: form = enter_payment_details() return render(request,'payment/payment_details.html',{'form': form,'customers' : customers,})
def home_page(request): qs = Products.objects.filter(featured=True).order_by('-id')[:6] exclusive = Products.objects.filter(exclusive=True).order_by('-id')[:6] banner_image = bannerImage.objects.all() order_count = Order.get_cart_total gallery = Gallery.objects.all().order_by('-id')[:15] username = request.user.username if request.user.is_authenticated: existing_order = get_user_pending_order(request) order_count = Order.objects.filter(owner=request.user.id, is_ordered=False) object_list = Products.objects.all() filtered_orders = Order.objects.filter(owner=request.user.profile, is_ordered=False) current_order_products = [] filtered_wishlist = Wishlist.objects.filter(owner=request.user.profile, is_ordered=False) wishlist_order_products = [] if filtered_orders.exists(): user_order = filtered_orders[0] user_order_items = user_order.items.all() current_order_products = [ product.product for product in user_order_items ] if filtered_wishlist.exists(): user_orders = filtered_wishlist[0] user_order_item = user_orders.items.all() wishlist_order_products = [ product.product for product in user_order_item ] context = { 'order': existing_order, 'feature': qs, 'exc': exclusive, 'count': order_count, 'username': username, 'gallery': gallery, 'banner': banner_image, 'count': order_count, 'current_order_products': current_order_products, 'wishlist_order_products': wishlist_order_products, } else: context = { 'feature': qs, 'exc': exclusive, 'username': username, 'gallery': gallery, 'banner': banner_image, } return render(request, "home_page.html", context)
def my_profile(request): user_profile = get_object_or_404(Profile, user=request.user) my_user_profile = Profile.objects.filter(user=request.user).first() my_orders = Order.objects.filter(is_ordered=True, owner=my_user_profile) existing_order = get_user_pending_order(request) my_address = Delivery.objects.filter( delivery=True, owner=user_profile).order_by('-id')[:1] username = request.user.username context = { 'my_orders': my_orders, 'address': my_address, 'username': username, 'order': existing_order, } return render(request, "profile.html", context)
def search_list(request): feat = Products.objects.filter(featured=True).order_by('?')[:4] q = request.GET.get('q', "None") title = q lookups = Q(title__icontains=q) | Q(tags__name__icontains=q) qs = Products.objects.filter(lookups).distinct().order_by('-id') tags = Tags.objects.all().order_by('-id')[:15] if request.user.is_authenticated: existing_order = get_user_pending_order(request) filtered_orders = Order.objects.filter(owner=request.user.profile, is_ordered=False) current_order_products = [] filtered_wishlist = Wishlist.objects.filter(owner=request.user.profile, is_ordered=False) wishlist_order_products = [] if filtered_orders.exists(): user_order = filtered_orders[0] user_order_items = user_order.items.all() current_order_products = [ product.product for product in user_order_items ] if filtered_wishlist.exists(): user_orders = filtered_wishlist[0] user_order_item = user_orders.items.all() wishlist_order_products = [ product.product for product in user_order_item ] paginator = Paginator(qs, 20) page = request.GET.get('page') lists = paginator.get_page(page) context = { 'query': q, 'item_list': lists, 'tags': tags, 'order': existing_order, 'current_order_products': current_order_products, 'wishlist_order_products': wishlist_order_products, 'feat': feat, 'title': title, } else: paginator = Paginator(qs, 20) page = request.GET.get('page') lists = paginator.get_page(page) context = { 'item_list': lists, 'tags': tags, 'order': existing_order, 'current_order_products': current_order_products, 'wishlist_order_products': wishlist_order_products, 'feat': feat, 'title': title, } else: paginator = Paginator(qs, 20) page = request.GET.get('page') lists = paginator.get_page(page) context = { 'query': q, 'item_list': lists, 'tags': tags, 'feat': feat, 'title': title, } return render(request, "search.html", context) '''
def accessories_list(request): title = "Accessories" feat = Products.objects.filter(featured=True).order_by('?')[:4] qs = Products.objects.filter(accessories=True).order_by('-id') tags = Tags.objects.all().order_by('-id') if request.user.is_authenticated: existing_order = get_user_pending_order(request) filtered_orders = Order.objects.filter(owner=request.user.profile, is_ordered=False) current_order_products = [] filtered_wishlist = Wishlist.objects.filter(owner=request.user.profile, is_ordered=False) wishlist_order_products = [] if filtered_orders.exists(): user_order = filtered_orders[0] user_order_items = user_order.items.all() current_order_products = [ product.product for product in user_order_items ] if filtered_wishlist.exists(): user_orders = filtered_wishlist[0] user_order_item = user_orders.items.all() wishlist_order_products = [ product.product for product in user_order_item ] paginator = Paginator(qs, 20) page = request.GET.get('page') lists = paginator.get_page(page) context = { 'item_list': lists, 'tags': tags, 'order': existing_order, 'current_order_products': current_order_products, 'wishlist_order_products': wishlist_order_products, 'feat': feat, 'title': title, } else: paginator = Paginator(qs, 20) page = request.GET.get('page') lists = paginator.get_page(page) context = { 'item_list': lists, 'tags': tags, 'order': existing_order, 'current_order_products': current_order_products, 'wishlist_order_products': wishlist_order_products, 'feat': feat, 'title': title, } else: paginator = Paginator(qs, 20) page = request.GET.get('page') lists = paginator.get_page(page) context = { 'item_list': lists, 'tags': tags, 'feat': feat, 'title': title, } return render(request, "products.html", context)
def category_list(request): q = request.GET.get('q', "None") if q == '1': title = "Sarees" elif q == '2': title = "Lehenga" elif q == '3': title = "Kurti" elif q == '4': title = "Ethnic Gown" elif q == '5': title = "Two Piece Suit" elif q == '6': title = "Top & Tees" elif q == '7': title = "Gowns" elif q == '8': title = "Dresses" elif q == '9': title = "Prom Dresses" elif q == '10': title = "Crop Top & Skirt" elif q == '11': title = "Drape Style" elif q == '12': title = "Kurti Plazzo" elif q == '13': title = "Three Piece Set" else: title = "None" search = title feat = Products.objects.filter(featured=True).order_by('?')[:4] qs = Products.objects.filter(category__id__iexact=q).order_by('-id') tags = Tags.objects.all().order_by('-id') if request.user.is_authenticated: existing_order = get_user_pending_order(request) filtered_orders = Order.objects.filter(owner=request.user.profile, is_ordered=False) current_order_products = [] filtered_wishlist = Wishlist.objects.filter(owner=request.user.profile, is_ordered=False) wishlist_order_products = [] if filtered_orders.exists(): user_order = filtered_orders[0] user_order_items = user_order.items.all() current_order_products = [ product.product for product in user_order_items ] if filtered_wishlist.exists(): user_orders = filtered_wishlist[0] user_order_item = user_orders.items.all() wishlist_order_products = [ product.product for product in user_order_item ] paginator = Paginator(qs, 20) page = request.GET.get('page') lists = paginator.get_page(page) context = { 'query': q, 'item_list': lists, 'tags': tags, 'order': existing_order, 'current_order_products': current_order_products, 'wishlist_order_products': wishlist_order_products, 'feat': feat, 'title': title, } else: paginator = Paginator(qs, 20) page = request.GET.get('page') lists = paginator.get_page(page) context = { 'item_list': lists, 'tags': tags, 'order': existing_order, 'current_order_products': current_order_products, 'wishlist_order_products': wishlist_order_products, 'feat': feat, 'title': title, } else: paginator = Paginator(qs, 20) page = request.GET.get('page') lists = paginator.get_page(page) context = { 'query': q, 'item_list': lists, 'tags': tags, 'feat': feat, 'title': title, } return render(request, "category.html", context)