예제 #1
0
def emailReceipt():
    """
        DESCRIPTION:
            This route is for emailing the order receipt to user
        
        REQUEST TYPE: POST

        PARAMETERS:
            orderID: order ID to generate receipt for
			email: email address tp send the email to.

        RETURNS:
            success/error message

    """
    values = request.get_json(silent=True)
    print(values)

    #get detailed order to generate receipt for
    orders = Mongo_Client.GetOrdersWithDetails(values["orderId"])
    menus = Mongo_Client.GetAllMenu()

    if orders is not None and menus is not None:
        #generate receipt
        receipt = ReceiptGenerator.generateInvoice(orders, menus)
        print("Receipt generated")
        #send email
        if Mailer.send_mail(values["email"], receipt):
            print("Mail sent")
            return json.dumps({"success": True})
        else:
            print("error sending mail")
            return json.dumps({"error": "Error sending email!"})
    else:
        return json.dumps({"error": "Database Error!"})
예제 #2
0
def getAllMenu():
    """
        DESCRIPTION:
            This route is for getting all the menus in the database
        
        REQUEST TYPE: GET

        PARAMETERS:
            None

        RETURNS:
            list of all menus in the database

    """
    #only authorized personnel can do this
    menus = Mongo_Client.GetAllMenu()
    if menus is not None:
        return json_util.dumps({"success": True, "menus": menus})
    else:
        return json.dumps({"error": "Database Error!"})