Exemplo n.º 1
0
    def quick_order(self, item, qty):
        cart = Cart.objects.create(session_id=self.request.session.session_key)
        item = Item(cart=cart, product=item, qty=int(qty), price=item.price)
        item.save()
        cart.save()

        return cart
Exemplo n.º 2
0
 def _create_item_in_database(self,
                              cart,
                              product,
                              quantity=1,
                              unit_price=Decimal("100")):
     item = Item()
     item.cart = cart
     item.product = product
     item.quantity = quantity
     item.unit_price = unit_price
     item.save()
     return item
Exemplo n.º 3
0
    def add_item(self, item, qty):
        try:
            item = Item.objects.get(cart=self.cart, product=item)
            item.qty = int(qty)
            item.save()
        except Item.DoesNotExist:
            item = Item(cart=self.cart,
                        product=item,
                        qty=int(qty),
                        price=item.price)
            item.save()

        return item
Exemplo n.º 4
0
def add_to_cart(request, product_id, quantity):
    print('getting to cart"s add to cart')
    user_cart = Cart.objects.get(user=request.user)
    product = Product.objects.get(id=product_id)
    itemsMatching = Item.objects.filter(product=product,
                                        cart=user_cart,
                                        unit_price=product.price_current)
    this_item = itemsMatching.first()
    if this_item is None:
        item = Item(product=product,
                    cart=user_cart,
                    quantity=quantity,
                    unit_price=product.price_current)
        item.save()
    else:
        print('ok')
        new_q = this_item.quantity + quantity
        itemsMatching.update(quantity=new_q)
Exemplo n.º 5
0
def add_item_cart_view(request):
    prod_id = request.data.get('id', None)
    dat = CartSerializer(request.user.cart)

    if prod_id is not None:
        for item in request.user.cart.items.all():
            if item.product.id == prod_id:
                item.quantity += 1
                item.save()
                cart = CartSerializer(request.user.cart)
                return Response(cart.data)
        new_prod = Product.objects.filter(id=prod_id).first()
        new_item = Item(product=new_prod, cart=request.user.cart)
        new_item.save()
        cart = CartSerializer(request.user.cart)
        return Response(cart.data)

    return Response({'message': 'Succes'})
Exemplo n.º 6
0
    def post(self, request):
        cart = Cart()
        cart.save()
        item = Item()
        item.cart = cart
        item.quantity = int(request.POST.get("quantity", 1))
        item.product_id = int(request.POST["product_id"])
        item.save()

        order = Order()
        order.cart_id = cart.id
        order.address = "Уточнить у клиента"
        order.phone = request.POST.get('phone')
        order.name = request.POST.get('name')
        order.comment = "Заказ в один клик"
        if request.user.is_authenticated():
            order.customer = request.user
        order.save()

        cart_service = CartService(request, cart)

        params = {
            "phone": unicode(request.POST["phone"]),
            "name": unicode(request.POST["name"]),
            "customer": request.user,
            "comment": order.comment,
            "orderno": order.id,
            "orderdt": order.checkout_date,
            "orderaddr": order.address,
            "ordercart": cart_service,
        }

        send_notification("order_notice", params)
        response = HttpResponse(json.dumps({
            "order_id": order.id,
            "ok": 1
        }),
                                content_type="application/json")
        return response