Beispiel #1
0
def get_client_recipes(client_id):
    client_recipes_schema = models.RecipeSchema(many=True)
    recipes = db.session.query(models.Recipe) \
        .join(models.client_recipes) \
        .join(models.Client) \
        .filter(models.Client.id == client_id, models.Client.id == models.client_recipes.c.client_id).all()
    return client_recipes_schema.dump(recipes).data
Beispiel #2
0
def get_client_recipe(client_id, recipe_id):
    recipe_schema = models.RecipeSchema()
    # recipe = models.Recipe.query.filter(models.Client.id == client_id, models.Recipe.id == recipe_id).one()
    recipe = db.session.query(models.Recipe) \
        .join(models.client_recipes) \
        .join(models.Client) \
        .filter(models.Client.id == client_id, models.Client.id == models.client_recipes.c.client_id,
                models.client_recipes.c.recipe_id == recipe_id).one()
    return recipe_schema.dump(recipe).data
Beispiel #3
0
def create_recipe(name, description=None, style=None, type=None):
    recipe = models.Recipe()
    recipe.name = name or None
    recipe.description = description or None
    recipe.style = style or None
    recipe.type = type or None
    db.session.add(recipe)
    db.session.commit()

    recipe_schema = models.RecipeSchema()
    recipe_tuple = collections.namedtuple('RecipeData', ['id', 'data'])
    result = recipe_tuple(id=recipe.id, data=recipe_schema.dump(recipe).data)
    return result
Beispiel #4
0
def edit_recipe(recipe_id, recipe_name, description=None, style=None, type=None):
    recipe = models.Recipe.query.filter(models.Recipe.id == recipe_id).one()
    recipe.name = recipe_name or recipe.name
    recipe.description = description or recipe.description
    recipe.style = style or recipe.style
    recipe.type = type or recipe.type

    db.session.commit()

    recipe_schema = models.RecipeSchema()
    recipe_tuple = collections.namedtuple('RecipeData', ['id', 'data'])
    result = recipe_tuple(id=recipe.id, data=recipe_schema.dump(recipe).data)
    return result
Beispiel #5
0
def create_client_recipe(client_id, recipe_name, description=None, style=None, type=None):
    client = models.Client.query.filter(models.Client.id == client_id).one()
    recipe = models.Recipe()
    recipe.name = recipe_name
    recipe.description = description
    recipe.style = style
    recipe.type = type
    client.add_recipe(recipe)

    db.session.commit()

    recipe_schema = models.RecipeSchema()
    recipe_tuple = collections.namedtuple('RecipeData', ['id', 'data'])
    result = recipe_tuple(id=recipe.id, data=recipe_schema.dump(recipe).data)
    return result
Beispiel #6
0
def get_recipes():
    recipes_schema = models.RecipeSchema(many=True)
    recipes = models.Recipe.query.all()
    return recipes_schema.dump(recipes).data
Beispiel #7
0
def get_recipe(recipe_id):
    recipe_schema = models.RecipeSchema()
    recipe = models.Recipe.query.filter(models.Recipe.id == recipe_id).one()
    print(recipe)
    return recipe_schema.dump(recipe).data
Beispiel #8
0
def get_menu_recipes(menu_id):
    client_recipes_schema = models.RecipeSchema(many=True)
    recipes = db.session.query(models.Recipe) \
        .join(models.MenuRecipe) \
        .filter(models.MenuRecipe.menu_id == menu_id).all()
    return client_recipes_schema.dump(recipes).data
Beispiel #9
0
def get_menu_recipe(menu_id, recipe_id):
    recipe_schema = models.RecipeSchema()
    recipe = db.session.query(models.Recipe) \
        .join(models.MenuRecipe) \
        .filter(models.MenuRecipe.menu_id == menu_id, models.MenuRecipe.recipe_id == models.Recipe.id).one()
    return recipe_schema.dump(recipe).data