Ejemplo n.º 1
0
def make_reservation(request):
    cart = Cart(request)
    user = User.objects.get(username=request.user)
    customer = Customer.objects.get(user=user)

    #예약하기 위해서는 수량을 체크해야됨
    #주문할려는 상품의 갯수가 현재 잔고보다 많은 경우 주문이 안되고 에러메세지를 출력해야됨
    for inventory in cart:
        if inventory['inventory'].rentalproduct.stock < inventory['quantity']:
            return HttpResponse('[Error] 예약수량이 기존상품보다 많습니다')

    for inventory in cart:
        stock = inventory['inventory'].rentalproduct.stock - inventory[
            'quantity']
        inventory['inventory'].rentalproduct.stock = stock
        inventory['inventory'].rentalproduct.save()

        Reservation.objects.create(customer=customer,
                                   inventory=inventory['inventory'],
                                   in_date=timezone.now(),
                                   out_date=timezone.now(),
                                   status=0,
                                   stock=inventory['quantity'])

        #주문이 완료되면 장바구니에서 삭제한다.
        cart.remove(inventory['inventory'])

    return HttpResponseRedirect(reverse('account:mypage'))
Ejemplo n.º 2
0
def api_remove_from_cart(request):
    data = json.loads(request.body)
    jsonresponse = {'success': True}

    product_id = str(data['product_id'])

    cart = Cart(request)

    cart.remove(product_id)

    return JsonResponse(jsonresponse)