예제 #1
0
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', {})
예제 #2
0
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,})
예제 #4
0
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)
예제 #5
0
파일: views.py 프로젝트: RKH09/ecommerce
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)
예제 #6
0
파일: views.py 프로젝트: RKH09/ecommerce
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)
    '''
예제 #7
0
파일: views.py 프로젝트: RKH09/ecommerce
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)
예제 #8
0
파일: views.py 프로젝트: RKH09/ecommerce
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)