예제 #1
0
def create_order(total_price, ctx: AuthContext, if_match: int):
    try:
        schema = order_store_schema(OrderSaga().create(total_price, ctx,
                                                       if_match))
        return json_response(data=schema)
    except StoreValidation as e:
        raise BadRequest(message=str(e))
예제 #2
0
def auth():
    token = request.headers.get('Authorization')
    if token is None:
        raise BadRequest(message='Authorization token not found')
    try:
        headers = AuthStory().execute(token)
        return json_response(headers=headers)
    except Exception as e:
        raise NotAuthorized(message=str(e))
예제 #3
0
def health():
    return json_response(data=health_schema())
예제 #4
0
def create_order(total_price, ctx: AuthContext, if_match: int):
    try:
        return json_response(
            data=OrderStoreStory().execute(total_price, ctx, if_match))
    except StoreValidation as e:
        raise BadRequest(message=str(e))
예제 #5
0
def get_orders(ctx: AuthContext):
    return json_response(data=GetOrdersStory().execute(ctx))
예제 #6
0
def home():
    return json_response(data={'hostname': app.config['HOSTNAME']})
예제 #7
0
def login(phone: int, pin: int):
    try:
        return json_response(UserLoginStory().execute(phone, pin))
    except StoreValidation as e:
        raise BadRequest(message=str(e))
예제 #8
0
def get_confirmation(phone: int):
    try:
        GetConfirmationStory().execute(phone)
        return json_response()
    except StoreValidation as e:
        raise BadRequest(message=str(e))
예제 #9
0
def register(**kwargs):
    try:
        return json_response(data=UserStoreStory().execute(**kwargs))
    except StoreValidation as e:
        raise BadRequest(message=str(e))
예제 #10
0
def update(ctx: AuthContext, first_name, last_name):
    try:
        return json_response(
            data=UserUpdateByCtxStory().execute(ctx, first_name, last_name))
    except StoreValidation as e:
        raise BadRequest(message=str(e))
예제 #11
0
def update(ctx: AuthContext):
    return json_response(data=ctx_profile_schema(ctx))
예제 #12
0
def get_orders(order_id: int):
    return json_response(data=GetOrderPaymentStory().execute(order_id))
예제 #13
0
def get_store(order_id: int):
    return json_response(data=GetOrderStoreStory().execute(order_id))