示例#1
0
 def handleUpdateGroceryListItem(self):
     db = GroceryDB()
     parsedBody = self.getParsedBody()
     ingredientID = -1
     listID = -1
     originalQuantityType = ""
     if parsedBody.get("ingredient_id") != None:
         ingredientID = parsedBody["ingredient_id"][0]
     if parsedBody.get("list_id") != None:
         listID = parsedBody["list_id"][0]
     if parsedBody.get("original_quantity_type") != None:
         originalQuantityType = parsedBody["original_quantity_type"][0]
     if not db.groceryListItemExists(listID, ingredientID,
                                     originalQuantityType):
         self.handle404("Grocery list item does not exist.")
     else:
         groceryListItem = db.getGroceryListItem(listID, ingredientID,
                                                 originalQuantityType)
         quantity = groceryListItem["quantity"]
         newQuantityType = groceryListItem["quantity_type"]
         grabbed = groceryListItem["grabbed"]
         quantityUpdate = parsedBody.get("quantity") != None
         quantityTypeUpdate = parsedBody.get("new_quantity_type") != None
         if quantityUpdate:
             tempQuantity = parsedBody["quantity"][0]
             if isValidQuantityString(tempQuantity):
                 quantity = parseQuantityString(tempQuantity)
         if quantityTypeUpdate:
             newQuantityType = parsedBody["new_quantity_type"][0].strip()
         if quantityUpdate or quantityTypeUpdate:
             item = db.updateGroceryListItem(listID, ingredientID, quantity,
                                             originalQuantityType,
                                             newQuantityType)
             self.handle201JSONResponse(item)
         if parsedBody.get("grabbed") != None:
             grabbed = parsedBody["grabbed"][0]
             db.setGroceryListItemGrabbed(grabbed, listID, ingredientID,
                                          originalQuantityType)
             self.handle201("Grocery list item grabbed set.")
示例#2
0
 def handleDeleteGroceryListItem(self, queryString):
     db = GroceryDB()
     parsedQs = parse_qs(queryString)
     parsedBody = self.getParsedBody()
     ingredientID = -1
     listID = -1
     quantityType = ""
     if parsedBody.get("ingredient_id") != None:
         ingredientID = parsedBody["ingredient_id"][0]
     if parsedBody.get("list_id") != None:
         listID = parsedBody["list_id"][0]
     if parsedBody.get("quantity_type") != None:
         quantityType = parsedBody["quantity_type"][0]
     if parsedQs.get("ingredient_id") != None:
         ingredientID = parsedQs["ingredient_id"][0]
     if parsedQs.get("list_id") != None:
         listID = parsedQs["list_id"][0]
     if parsedQs.get("quantity_type") != None:
         quantityType = parsedQs["quantity_type"][0]
     if not db.groceryListItemExists(listID, ingredientID, quantityType):
         self.handle404("Grocery list item does not exist.")
     else:
         db.deleteGroceryListItem(listID, ingredientID, quantityType)
         self.handle200("Grocery list item successfully deleted.")