Ejemplo n.º 1
0
def update_item(request):
    response = HttpResponse()

    if request.method == "POST":
        item_name = request.POST['name']
        item_amount = int(request.POST['amount'])
        item_initamount = request.POST['initial_amount']
        item_fridge_id = request.POST['fridge_id']
        item_upc = request.POST['upc']

        fridge_obj = Fridge.objects.get(id=item_fridge_id)

        # if UPC code and Item pair already match add to
        # current amount
        if len(Item.objects.filter(fridge__id=item_fridge_id).filter(name=item_name)) == 0:
            item_to_save = Item(name=item_name, amount=item_amount, initial_amount=item_initamount, fridge=fridge_obj, upc=item_upc)
        else:
            item_to_save = Item.objects.get(name=item_name)
            if item_to_save.amount >= 0:
                if item_upc == "999999999":
                    item_to_save.amount = item_amount
                else:
                    item_to_save.amount += item_amount
            else:
                item_to_save.amount = item_amount
            item_to_save.initial_amount = item_amount

        item_to_save.save()

        posted_item = Item.objects.filter(fridge_id=item_fridge_id).filter(name=item_name)
        serializers.serialize("json", posted_item, stream=response)

    return response