Beispiel #1
0
def add_to_cart(request, goods_id):
    # if request.user.is_authenticated() == False:
    #     return HttpResponse(json.dumps({'state': 'NOT LOGIN'}))
    goods = Goods.objects.get(id=goods_id)
    goods_order = GoodsOrder()
    goods_order.goods_id = goods_id

    # goods_order.customer_id = request.user.id
    goods_order.customer_id = 1  # for test
    goods_order.shop_id = 1  # for test

    goods_order.goods_price = goods.price
    # goods_order.add_time = datetime.now()
    goods_order.goods_states = 'PA'
    goods_order.save()

    return HttpResponse(json.dumps({'state': 'SUCCESS'}))
Beispiel #2
0
def addtoCart(request):
    goodsId = request.POST['goodsId']
    goods_size = request.POST['goods_size']
    goods_material = request.POST['goods_material']
    goods_handle = request.POST['goods_handle']
    goods_inscribed = request.POST['goods_inscribed']
    goods_number = request.POST['goods_number']
    #import pdb
    #pdb.set_trace()
    # 从会话中获取购物车
    cart = request.session.get("cart", None)
    # 已经登录 则把商品放入数据库中 否则添加到会话当中
    if request.user.is_authenticated():
        user = request.user
        customer = Customer.objects.get(user=user)
        if customer is None:
            return HttpResponse(json.dumps({"state": "FAILED"}))
        # 会话中没有购物车信息
        if not cart:
            goodsList = []
            goodsList.append(goodsId)
        # 会话中存在购物车信息,直接从会话中获取
        else:
            goodsList = cart
            # 清空购物车
            request.session["cart"] = []
            # 获得之前的购物车信息,添加当前的货物信息
            goodsList.append(goodsId)
        '''for goodsId in goodsList:
            goods = Goods.objects.get(id=goodsId)
            # 先查询这个客户是否有这个商品的订单消息
            order = GoodsOrder.objects.filter(customer=customer, goods=goods,
                                              goods_states='CA')
            # 没有则添加这个订单
            if len(order) == 0:
                goodOrder = GoodsOrder(goods=goods, customer=customer, goods_price=goods.price, goods_number=1,
                                       goods_states='CA', add_time=datetime.now(), shop_id=1)
                goodOrder.save()
                cartlist = getCart(customer)
                #第一次添加:这里报错
                #cart.append(goodsId)

                return HttpResponse(json.dumps({"state": "SUCCESS"}))
            # 原本就有这单,那么需要把数量加一
            else:
                order[0].goods_number += 1
                order[0].add_time = datetime.now()
                print datetime.now()
                order[0].save()
                cartlist = getCart(customer)
                result = ""
                for item in cartlist:
                    # print(json.dumps({"a":"1","b":"2"}))
                    str = (
                        json.dumps({"name": item.goods.name, "price": item.goods_price, "number": item.goods_number}))
                    result += str'''
        goods = Goods.objects.get(id=goodsId)
        goodOrder = GoodsOrder(goods=goods, customer=customer, goods_price=goods.price, goods_number=goods_number, goods_states='CA', add_time=datetime.now(), shop_id=1,goods_size=goods_size,goods_material = goods_material,goods_handle = goods_handle,goods_inscribed = goods_inscribed)
        goodOrder.save()
        return HttpResponse(json.dumps({'state': "SUCCESS"}))
    # 没有登录
    else:
        if not cart:
            cart = []
        cart.append(goodsId)
        print(cart)
        request.session["cart"] = cart
        return HttpResponse(json.dumps({"state": "SUCCESS"}))