diff --git a/ucloud_pay.py b/ucloud_pay.py index 5439e64..fe80245 100644 --- a/ucloud_pay.py +++ b/ucloud_pay.py @@ -320,10 +320,33 @@ class ProductOrder(Resource): logging.error(str(key_error)) return {"message": "Missing or wrong parameters"}, 400 + +class OrderList(Resource): + @staticmethod + def get(): + data = request.json + try: + otp_response = check_otp(data["name"], data["realm"], + data["token"]) + if otp_response != 200: + return {"message": "Wrong Credentials"}, 403 + + orders = client.get_prefix("/v1/user/{}/orders".format(data['email']), value_in_json=True) + order_dict = {} + for p in orders: + order_dict[p.key] = p.value + logging.debug("Orders = {}".format(order_dict)) + return order_dict, 200 + + except KeyError as kerr: + logging.error(str(kerr)) + + api.add_resource(ListProducts, "/product/list") api.add_resource(AddProduct, "/product/add") api.add_resource(ProductOrder, "/product/order") api.add_resource(UserRegisterPayment, "/user/register_payment") +api.add_resource(OrderList, "/order/list") if __name__ == '__main__':