def post(self, request): address = request.POST.get('address') phone = request.POST.get('phone') customer = request.session.get('customer') cart = request.session.get('cart') products = Product.get_products_by_id(list(cart.keys())) if customer: for product in products: order = Order(customer=Customer(id=customer), product=product, brandname=product.brandname, variety=product.variety, weight=product.weight, price=product.price, address=address, phone=phone, quantity=cart.get(str(product.id))) order.save(); request.session['cart'] = {} return redirect('cart') else: return redirect('login')
def post(self, request): # print(request.POST) address = request.POST.get('address') phone = request.POST.get('phone') customer = request.session.get('customer_id') print(address, phone, customer) cart = request.session.get('cart') products_on_cart = list(cart.keys()) products = Product.get_cart_product(products_on_cart) print(cart, products) for product in products: product = product price = product.price quantity = cart.get(str(product.id)) print(customer) order = Order(customer=Customer(id=customer), product=product, price=price, quantity=quantity, address=address, phone=phone) order.palceOrder() #empty card after saving or palcing the order request.session['cart'] = {} # order.save() can be used as it is used in placeorder() method. return redirect('cartpage')
def post(self, request): customer = request.session.get('customer') if not customer: messages.warning( request, f'You to have login to check out, please login now.') return redirect('login') else: address = request.POST.get('address') phone = request.POST.get('phone') cart = request.session.get('cart') products = Product.get_products_by_id(list(cart.keys())) for product in products: order = Order(customer=Customer(id=customer), product=product, price=product.price, quantity=cart.get(str(product.id)), address=address, phone=phone) request.session['cart'] = {} order.placeOrder() messages.success( request, f'Thank you for purchasing!!! Please click on Orders tab to view your orders.' ) return redirect('cart')
def post(self, request): address = request.POST.get('address') phone = request.POST.get('phone') GrandTotal = int(request.POST.get('GrandTotal')) customer = request.session.get('customer') cart = request.session.get('cart') products = Product.get_products_by_id(list(cart.keys())) error_message = None error_message = self.validateCustomer(address,phone) if not error_message: orderID = random.randint(0,9999) for product in products: order = Order(customer=Customer(id=customer), product=product, price=product.price, address=address, phone=phone, grandtotal=GrandTotal, orderId=orderID, quantity=cart.get(str(product.id))) order.save() request.session['cart'] = {} messages.success(request,"Order placed successfully!") return redirect('orders') else: messages.warning(request,error_message) return redirect('cart')
def post(self, request): addressline1 = request.POST.get('addressline1') addressline2 = request.POST.get('addressline2') phone = request.POST.get('phone') customer = request.session.get('customer') cart = request.session.get('cart') city = request.session.get('city') pincode = request.session.get('pincode') state = request.session.get('state') products = Product.get_products_by_id(list(cart.keys())) print(addressline1, addressline2, city, state, pincode, phone, customer, cart, products) for product in products: print(cart.get(str(product.id))) order = Order(customer=Customer(id=customer), product=product, price=product.price, city=city, state=state, address1=addressline1, address2=addressline2, pincode=pincode, phone=phone, quantity=cart.get(str(product.id))) order.save() request.session['cart'] = {} return redirect('cart')
def post(self,request): options = request.POST.get('option') search = request.POST.get('search') if options == "date": orders = Order.get_orders_by_date(search) elif options == "orderID": orders = Order.get_allorders_by_orderid(search) elif search == "": orders = Order.get_allorders() a = [] for o in orders: a.append(o.orderId) orderId = set(a) filteredObject = [] for val in orderId: filteredObject.append(Order.get_allorders_by_order_id(val)) data = {} data['orders'] = orders data['orderIds'] = orderId data['filteredObjects'] = set(filteredObject) return render(request , 'allorders.html' , data)
def post(self , request): address = request.POST.get('address') phone = request.POST.get('phone') customer = request.session.get('customer') cart = request.session.get('cart') products = Product.get_products_by_id(list(cart.keys())) for product in products: order = Order(customer = Customer(id=customer) , product = product , price = product.price , address = address , phone = phone , quantity = cart.get(str(product.id))) order.save() request.session['cart'] = {} return redirect('addcart')
def get(self, request): if request.session.get('customer') != 'service_provider': customer = request.session.get('customer') orders = Order.get_orders_by_customer(customer) elif request.session.get('customer') == 'service_provider': service_provider = request.session.get('service_provider') print(service_provider) orders = Order.get_orders_by_service_provider(service_provider) # print(orders) return render(request, 'orders.html', {'orders': orders})
def get(self, request): cart = request.session.get('cart') if not cart: request.session['cart'] = {} customer = request.session.get('customer') orders = Order.get_orders_by_customer(customer) return render(request, 'orders.html', {'orders': orders})
def get(self, request): customer = request.session.get('customer') orders = Order.get_order_by_customer(customer) print(orders) orders = orders.reverse() return render(request, 'orders.html', {'orders': orders})
def post(self, request): phone = request.POST.get('phone') customer = request.session.get('customer') cart = request.session.get('cart') products = Product.get_products_by_id(list(cart.keys())) print(phone, customer, cart, products) for product in products: order = Order(customer=Customer(id=customer), product=product, price=product.price, phone=phone, rental_time=cart.get(str(product.id))) order.save() request.session['cart'] = {} return redirect('cart')
def post(self, request): address = request.POST.get('address') phone = request.POST.get('phone') name = request.POST.get('name') zipcode = request.POST.get('zipcode') customer = request.session.get('customer') cart = request.session.get('cart') customer = request.session.get('customer') invoices = Invoice.get_invoice_by_customer(customer) products = Product.get_products_by_id(list(cart.keys())) print(address, phone, customer, cart, products) for product in products: print(cart.get(str(product.id))) order = Order(customer=Customer(id=customer), product=product, price=price_totalp(product, cart), address=address, phone=phone, name=name, zipcode=zipcode, quantity=cart.get(str(product.id))) order.save() customer = request.session.get('customer') invoices = Invoice.get_invoice_by_customer(customer) invoices.delete() for product in products: print(cart.get(str(product.id))) invoice = Invoice(customer=Customer(id=customer), product=product, price=price_totalp(product, cart), finalprice = price_total(product , cart), toalprice = total_cart_price(products , cart), gst = gstprice(products , cart), address=address, phone=phone, name=name, zipcode=zipcode, quantity=cart.get(str(product.id))) invoice.save() request.session['cart'] = {} return redirect('invoice')
def get(self, request): customer = request.user orders = Order.get_orders_by_customer(customer) orderidmerge = Orderidmerge.get_orderid_by_customer(customer) return render(request, 'orders.html', { 'orders': orders, 'orderidmerge': orderidmerge })
def post(self, request): address = request.POST.get('address') phone = request.POST.get('phone') uid = request.session.get('uid') cart = request.session.get('cart') products = Product.get_products_by_ids(list(cart.keys())) for product in products: order = Order(product_id=product.id, user_id=uid, address=address, phone=phone, quantity=cart.get(str(product.id)), price=product.price) order.create_order() request.session['cart'] = {} return redirect('cart')
def post(self, request): # print(request.POST) address = request.POST.get('address') phone = request.POST.get('phone') customer = request.session.get('customer') cart = request.session.get('cart') products = Product.get_product_by_id(list(cart.keys())) print(address, phone, customer, cart, products) for product in products: order = Order(customer=Customer(id=customer), product=product, price=product.price, quantity=cart.get(str(product.id)), address=address, phone=phone) print(order.placeOrder()) request.session['cart'] = {} return redirect('cart')
def post(self, request): address = request.POST.get("address") phone = request.POST.get("phone") customer = request.session.get("customer_id") cart = request.session.get("cart") products = Product.get_images_by_id(list(cart.keys())) print(address, phone, customer, cart, products) for product in products: order = Order(customer=Customer(id=customer), productname=product, price=product.price, quantity=cart.get(str(product.id)), phone=phone, address=address) # print(order.placeOrder()) order.save() request.session["cart"] = {} return redirect("cart")
def get(self, request): customer = request.session.get('customer') orders = Order.get_orders_by_customer(customer) return render(request, 'orders.html', {'orders': orders})
def get(self, request): customers = request.session.get('customer') orders = Order.get_orders_byID(customers) customer_id = request.session.get('customer') customers = customer.get_customer_byID(customer_id) data = {} data['username'] = customers data['orders'] = orders return render(request, 'orders.html', data)
def post(self, request): address = request.POST.get('address') phone = request.POST.get('phone') customer = request.session.get('customer') cart = request.session.get('cart') products = Product.get_products_by_id(list(cart.keys())) print(address, phone, customer, cart, products) for product in products: print(cart.get(str(product.id))) order = Order(customer=Customer(id=customer), product=product, price=product.price, address=address, phone=phone, quantity=cart.get(str(product.id))) order.save() request.session['cart'] = {} messages.success(request, '¡GRACIAS POR TU COMPRA! UN REPARTIDOR HA SIDO ASIGNADO A TU PEDIDO.') return redirect('cart')
def post(self, request): address = request.POST.get('address') phone = request.POST.get('phone') customer = request.session.get('customer') cart = request.session.get('cart') # products= Product.get_products_by_id(list(cart.keys())) a = list(cart.keys()) products = Product.objects.filter(id__in=a) print(address, phone, customer, products) for product in products: order = Order(category=Category(id=customer), product=product, price=product.price, address=address, phone=phone, quantity=cart.get(str(product.id))) print(order) order.save() return redirect('cart')
def post(self, request): address = request.POST.get('address') phone = request.POST.get('phone') customer = request.session.get('customer') cart = request.session.get('cart') products = Product.get_products_by_id(list(cart.keys())) print(address, phone, customer, cart, products) if customer: for p in products: order = Order(product=p, customer=Customer(id=customer), price=p.price, address=address, phone=phone, quantity=cart.get(str(p.id))) order.place_order() request.session['cart'] = {} return redirect('cart') else: return redirect('login')
def post(self, request): address = request.POST.get('address') phone = request.POST.get('phone') customer = request.session.get('customer') cart = request.session.get('cart') products = Product.get_products_by_id(list(cart.keys())) # print(address, phone, customer, cart, products) # iteration over products to save each order having a particular product object for product in products: order = Order(address=address, phone=phone, customer=Customer(id=customer), product=product, quantity=cart.get(str(product.id)), price=product.price) order.placeOrder() # for clearing cart after placing the orders request.session['cart'] = {} return redirect('cart')
def post(self, request, *args, **kwargs): orderId = request.POST.get("orderId") orders = Order.get_allorders_by_orderid(orderId) get_Single_Order = Order.get_allorders_by_order_id(orderId) template = get_template('invoice.html') context = { "orderId": orderId, "orders": orders, "singleOrder": get_Single_Order } html = template.render(context) pdf = render_to_pdf('invoice.html', context) if pdf: response = HttpResponse(pdf, content_type='application/pdf') filename = "Invoice_%s" % (orderId) content = "inline; filename='%s'" % (filename) download = request.GET.get("download") if download: content = "attachment; filename='%s'" % (filename) response['Content-Disposition'] = content return response return HttpResponse("Not found")
def get(self, request): customer = request.session.get('customer') orders = Order.get_orders_by_customer(customer) a = [] for o in orders: a.append(o.orderId) orderId = list(dict.fromkeys(a)) filteredObject = [] for val in orderId: filteredObject.append(Order.get_allorders_by_order_id(val)) data = {} data['orders'] = orders data['orderIds'] = orderId data['filteredObjects'] = set(filteredObject) return render(request, 'orders.html', data)
def post(self,request): address = request.POST.get('address') phone = request.POST.get('phone') customer = request.session.get('customer_id') cart = request.session.get('cart') products = Product.get_products_by_id(list(cart.keys())) # print(address, phone, customer,cart,products) for product in products: #create order object order = Order( customer = Customer(id=customer), product = product, price = product.price, phone = phone, address = address, quantity = cart.get(str(product.id)) ) #order save order.placeOrder() #cart clear request.session['cart'] ={} return redirect('cart')
def post(self, request): order_date = request.POST.get('order_date') radio_btn = request.POST.get('radio_btn') customer = request.session.get('customer') cart = request.session.get('cart') products = Product.get_products_by_id(list(cart.keys())) print(order_date, radio_btn, customer, cart, products) for product in products: print(cart.get(str(product.id))) completion_date = datetime.now() + timedelta( days=product.complition_time) order = Order(customer=Customer(id=customer), product=product, service_provider=product.service_provider, price=product.price, Service_date=order_date, Time_slots=radio_btn, complition_date=completion_date, quantity=cart.get(str(product.id))) order.save() request.session['cart'] = {} return redirect('cart')
def get(self , request): orders = Order.get_allorders() a = [] for o in orders: a.append(o.orderId) orderId = set(a) filteredObject = [] for val in orderId: filteredObject.append(Order.get_allorders_by_order_id(val)) data = {} data['orders'] = orders data['orderIds'] = orderId data['filteredObjects'] = set(filteredObject) return render(request , 'allorders.html' , data)
def post(self, request): firstname = request.POST.get('firstname') lastname = request.POST.get('lastname') phone = request.POST.get('phone') payment = request.POST.get('payment') address = request.POST.get('address') zipcode = request.POST.get('zipcode') city = request.POST.get('city') state = request.POST.get('state') country = request.POST.get('country') location = request.POST.get('location') customer = request.session.get('customer') cart = request.session.get('cart') product = Product.get_product_by_id(list(cart.keys())) for product in product: order = Order(customer=Customer(id=customer), product=product, price=product.price, firstname=firstname, lastname=lastname, phone=phone, payment=payment, address=address, zipcode=zipcode, city=city, state=state, country=country, location=location, quantity=cart.get(str(product.id))) order.placeOrder() customer = request.session.get('customer') orders = Order.get_orders_by_customer(customer) order = request.session.get('order') ids = list(request.session.get('cart').keys()) products = Product.get_product_by_id(ids) cart = request.session['cart'] customer = Order( firstname=firstname, lastname=lastname, phone=phone, payment=payment, address=address, zipcode=zipcode, city=city, state=state, country=country, location=location, ) error_message = None error_message = self.validateCustomer(customer) value = { 'firstname': firstname, 'lastname': lastname, 'phone': phone, 'payment': payment, 'address': address, 'zipcode': zipcode, 'city': city, 'state': state, 'location': location, 'country': country, } if (not error_message): context = { 'name': firstname + lastname, 'phone': phone, 'payment': payment, 'address': address, 'zipcode': zipcode, 'city': city, 'state': state, 'location': location, 'orders': orders, 'products': products, 'cart': cart, } template = render_to_string( '../../store/templates/ordersmail.html', context) id = request.session.get('customer') mail = Customer.objects.get(id=int(id)).email print(mail) email = EmailMultiAlternatives( 'Thank You For The Order ', template, settings.EMAIL_HOST_USER, [mail], ) email.attach_alternative(template, "text/html") email.send() request.session['cart'] = {} return redirect('orders') else: country = geocoder.description_for_number( phonenumbers.parse(customer.phone), "en") data = { 'error': error_message, 'values': value, 'country': country } return render(request, 'checkout.html', data)
def post(self, request): payment = request.POST.get('payment') fullname = request.POST.get('fullname') mobilenumber = request.POST.get('mobilenumber') pincode = request.POST.get('pincode') flat = request.POST.get('flat') area = request.POST.get('area') landmark = request.POST.get('landmark') city = request.POST.get('city') state = request.POST.get('state') # validation values = { 'payment': payment, 'fullname': fullname, 'mobilenumber': mobilenumber, 'pincode': pincode, 'flat': flat, 'area': area, 'landmark': landmark, 'city': city, 'state': state } error_message = None if (not payment): error_message = "Select Payment Options !!!" elif (not state): error_message = "Select State Required !!!" customer = request.user cart = request.session.get('cart') products = Product.get_products_by_id(list(cart.keys())) customer_obj = customer order_id_list = [] amount = 0 transactionid = uuid.uuid1().hex if not error_message: for product in products: order = Order(customer=customer, product=product, price=product.price, quantity=cart.get(str(product.id))) order.placeOrder() order_id_list.append(order.id) amount = amount + order.price * order.quantity if payment == "online": orderidmerge = Orderidmerge(customer=customer, transactionid=transactionid, orderid=order_id_list, amount=amount, payment="online") else: orderidmerge = Orderidmerge(customer=customer, transactionid=transactionid, orderid=order_id_list, amount=amount, payment="cod") orderidmerge.save() shippingaddress = Shippingaddress( order=Orderidmerge(id=orderidmerge.id), fullname=fullname, mobilenumber=mobilenumber, pincode=pincode, flat=flat, area=area, landmark=landmark, city=city, state=state) shippingaddress.save() if payment == "online": param_dict = { 'MID': 'LgWYcs58579287008550', 'ORDER_ID': str(orderidmerge.transactionid), 'TXN_AMOUNT': str(amount), 'CUST_ID': str(customer_obj.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}) else: cart_obj = Cart.get_cart_by_customer(customer) cart_obj.delete() request.session['cart'] = {} response_dict = { 'RESPCODE': "01", 'ORDERID': orderidmerge.transactionid, } return render(request, 'paymentstatus.html', {'response': response_dict}) else: data = {'error': error_message, 'values': values} return render(request, 'checkout.html', data)
def get(self, request): customer = request.session.get('customer') orders = Order.get_customer_orders(customer) print(customer, orders) return render(request, './order.html', {'orders': orders})