def lambda_handler(event, context): AWS_PASS, AWS_KEY = get() DYNAMODB_REGION = 'us-west-2' dynamodb = boto3.resource('dynamodb', aws_secret_access_key=AWS_PASS, aws_access_key_id=AWS_KEY, region_name=DYNAMODB_REGION) table = dynamodb.Table('request_table') menu_id = event['menu_id'] try: table.update_item( Key={'menu_id': menu_id}, UpdateExpression="SET selection = list_append(selection, :i)", ExpressionAttributeValues={ ':i': ['Vegetable'], }, ReturnValues="UPDATED_NEW") return (200, "OK") except Exception, e: return e, '400'
def lambda_handler(event, context): AWS_KEY, AWS_PASS = get() DYNAMODB_REGION = 'us-west-2' dynamodb = boto3.resource('dynamodb', aws_secret_access_key=AWS_PASS, aws_access_key_id=AWS_KEY, region_name=DYNAMODB_REGION) TABLE_NAME = 'request_table' table = dynamodb.Table(TABLE_NAME) client = boto3.client('dynamodb') store_hours = {} for item in event["store_hours"]: it = dict() it["S"] = event["store_hours"][item] store_hours[item] = it try: client.put_item(TableName="request_table", Item={ "menu_id": { "S": event["menu_id"] }, "store_name": { "S": event["store_name"] }, "selection": { "L": format_data(event["selection"], "S") }, "size": { "L": format_data(event["size"], "S") }, "price": { "L": format_data(event["price"], "N") }, "store_hours": { "M": store_hours }, "sequence": { "L": [{ "S": "selection" }, { "S": "size" }] } }) except Exception, e: return 400, e
def lambda_handler(event, context): AWS_PASS, AWS_KEY = get() DYNAMODB_REGION = 'us-west-2' dynamodb = boto3.resource('dynamodb', aws_secret_access_key=AWS_PASS, aws_access_key_id=AWS_KEY, region_name=DYNAMODB_REGION) table = dynamodb.Table('request_table') menu_id = event['menu_id'] try: response = table.delete_item(Key={'menu_id': menu_id}) return 200, "OK" except: return '400'
def lambda_handler(event, context): AWS_PASS, AWS_KEY = get() DYNAMODB_REGION = 'us-west-2' dynamodb = boto3.resource('dynamodb', aws_secret_access_key=AWS_PASS, aws_access_key_id=AWS_KEY, region_name=DYNAMODB_REGION) table = dynamodb.Table('request_table') response = table.scan() data = response['Items'] menu_id = event['menu_id'] for item in data: if item["menu_id"] == menu_id: return item return '400'
def lambda_handler(event, context): AWS_KEY, AWS_PASS = get() DYNAMODB_REGION = 'us-west-2' dynamodb = boto3.resource('dynamodb', aws_secret_access_key=AWS_PASS, aws_access_key_id=AWS_KEY, region_name=DYNAMODB_REGION) table = dynamodb.Table('request_table') menu_id = event['menu_id'] order_id = event['order_id'] customer_name = event['customer_name'] customer_email = event['customer_email'] client = boto3.client("dynamodb") try: table.put_item( Item={ "order_id": order_id, "menu_id": menu_id, "customer_name": customer_name, "customer_email": customer_email, "order_status": "selecting", "order": { "selection": "null", "size": "null", "costs": "null", "order_time": "null" } }) msg = "{Message: Hi " + customer_name + ",please choose one of these selection: 1. Cheese, 2. Pepperoni, 3.Vegetable.}" return 200, "OK", msg except Exception, e: return 400, e
def lambda_handler(event, context): AWS_KEY, AWS_PASS = get() DYNAMODB_REGION = 'us-west-2' pizza_type_map = {"1": "Cheese", "2": "Pepperoni", "3": "Vegetable"} pizza_size_map = {"1": "Slide", "2": "Small", "3": "Medium", "4": "Large", "5": "X-Large"} pizza_prize_map = {"Slide": "3.50", "Small": "7.0", "Medium": "10.0", "Large": "15.00", "X-Large": "20.00"} dynamodb = boto3.resource('dynamodb', aws_secret_access_key=AWS_PASS, aws_access_key_id=AWS_KEY, region_name=DYNAMODB_REGION ) table = dynamodb.Table('user_order_table') order_id = event['order_id'] # 'uuid' user_selection = event['input'] response = table.scan() data = response['Items'] for item in data: if item['order_id'] == order_id: res = item try: if res['order_status'] == 'selecting': table.update_item( Key={'order_id': order_id }, UpdateExpression="SET order_status = :val1", ExpressionAttributeValues={ ':val1': 'selecting_type', } ) pizza_type = pizza_type_map[user_selection] table.update_item( Key={'order_id': order_id }, UpdateExpression="SET selection = :val1", ExpressionAttributeValues={ ':val1': pizza_type, } ) msg = "{Message: Which size do you want? 1. Slide, 2. Small, 3. Medium, 4. Large, 5. X-Large " return 200, "OK", msg if res['order_status'] == 'selecting_type': table.update_item( Key={'order_id': order_id }, UpdateExpression="SET order_status = :val1", ExpressionAttributeValues={ ':val1': 'selecting_size', } ) pizza_size = pizza_size_map[user_selection] table.update_item( Key={'order_id': order_id }, UpdateExpression="SET size = :val1", ExpressionAttributeValues={ ':val1': pizza_size, } ) price = pizza_prize_map[pizza_size] table.update_item( Key={'order_id': order_id }, UpdateExpression="SET costs = :val1", ExpressionAttributeValues={ ':val1': price, } ) msg = "{Message: Your order costs " + price + "$ We will email you when the order is ready. Thank you!" return 200, "OK", msg if res['order_status'] == 'selecting_size': table.update_item( Key={'order_id': order_id }, UpdateExpression="SET order_status = :val1", ExpressionAttributeValues={ ':val1': 'processing', } ) out = table.get_item( Key={ 'order_id': order_id } ) return 200, "OK", out except Exception, e: return 400, e