Exemplo n.º 1
0
def get_warehouse_settings(session: helpers.extend.session,
                           user: hug.directives.user, response, id: int):
    """Gets a warehouse"""
    warehouse = helpers.get(
        "warehouse", session,
        queries.with_viewer_role(queries.user_warehouse(session, user, id)))
    return helpers.response.from_json(warehouse.settings)
Exemplo n.º 2
0
def list_articles(session: helpers.extend.session, user: hug.directives.user, response, warehouse_id: int=None):
    """ Lists warehouse locations """
    if warehouse_id is not None:
        return helpers.do_in_warehouse("article",
            queries.with_viewer_role(queries.user_warehouse(session, user, warehouse_id)),
            lambda warehouse: session.query(Article).filter_by(warehouse=warehouse).all())
    else:
        return helpers.response.error("no_location_or_warehouse_specified", falcon.HTTP_400)
Exemplo n.º 3
0
def list_references(session: helpers.extend.session,
                    user: hug.directives.user,
                    response,
                    warehouse_id: int,
                    name=None):
    """ Lists warehouse references """
    def filter(warehouse):
        query = session.query(Reference).filter_by(warehouse=warehouse)
        if name:
            query = query.filter_by(name=name)
        return query.all()

    return helpers.do_in_warehouse(
        "reference",
        queries.with_viewer_role(
            queries.user_warehouse(session, user, warehouse_id)), filter)
Exemplo n.º 4
0
def get_article(session: helpers.extend.session, user: hug.directives.user, response, id: int=None):
    """Gets a article"""
    return helpers.get("article", session, queries.with_viewer_role(queries.user_article(session, user, id)))
Exemplo n.º 5
0
def get_reference(session: helpers.extend.session, user: hug.directives.user,
                  response, id: int):
    """Gets a reference"""
    return helpers.get(
        "reference", session,
        queries.with_viewer_role(queries.user_reference(session, user, id)))
Exemplo n.º 6
0
def get_location(session: helpers.extend.session, user: hug.directives.user,
                 response, id: int):
    """Gets a location"""
    return helpers.get(
        "location", session,
        queries.with_viewer_role(queries.user_location(session, user, id)))
Exemplo n.º 7
0
def get_category(session: helpers.extend.session, user: hug.directives.user,
                 response, id: int):
    """Gets a category"""
    return helpers.get(
        "category", session,
        queries.with_viewer_role(queries.user_category(session, user, id)))
Exemplo n.º 8
0
def list_warehouses(session: helpers.extend.session, user: hug.directives.user,
                    response):
    """ Lists user warehouses """
    return queries.with_viewer_role(queries.user_warehouses(session,
                                                            user)).all()