mirror of
https://github.com/grocy/grocy.git
synced 2025-08-20 04:12:59 +00:00
Fixed "Search for recipes containing this product" (fixes #1842)
This commit is contained in:
@@ -72,7 +72,8 @@ SELECT
|
||||
WHEN 'overdue' THEN 10
|
||||
WHEN 'expired' THEN 20
|
||||
END AS due_score,
|
||||
IFNULL(pcs.product_id_effective, rp.product_id) AS product_id_effective
|
||||
IFNULL(pcs.product_id_effective, rp.product_id) AS product_id_effective,
|
||||
p.name AS product_name
|
||||
FROM recipes r
|
||||
JOIN recipes_nestings_resolved rnr
|
||||
ON r.id = rnr.recipe_id
|
||||
@@ -138,7 +139,8 @@ SELECT
|
||||
WHEN 'overdue' THEN 10
|
||||
WHEN 'expired' THEN 20
|
||||
END AS due_score,
|
||||
IFNULL(pcs.product_id_effective, rp.product_id) AS product_id_effective
|
||||
IFNULL(pcs.product_id_effective, rp.product_id) AS product_id_effective,
|
||||
p.name AS product_name
|
||||
FROM recipes r
|
||||
JOIN recipes_nestings_resolved rnr
|
||||
ON r.id = rnr.recipe_id
|
||||
@@ -170,3 +172,24 @@ LEFT JOIN products_current_price pcp
|
||||
LEFT JOIN products p_effective
|
||||
ON IFNULL(pcs.product_id_effective, rp.product_id) = p_effective.id
|
||||
WHERE rp.not_check_stock_fulfillment = 1;
|
||||
|
||||
DROP VIEW recipes_resolved;
|
||||
CREATE VIEW recipes_resolved
|
||||
AS
|
||||
SELECT
|
||||
1 AS id, -- Dummy, LessQL needs an id column
|
||||
r.id AS recipe_id,
|
||||
IFNULL(MIN(rpr.need_fulfilled), 1) AS need_fulfilled,
|
||||
IFNULL(MIN(rpr.need_fulfilled_with_shopping_list), 1) AS need_fulfilled_with_shopping_list,
|
||||
IFNULL(rmpc.missing_products_count, 0) AS missing_products_count,
|
||||
IFNULL(SUM(rpr.costs), 0) AS costs,
|
||||
IFNULL(SUM(rpr.costs) / CASE WHEN IFNULL(r.desired_servings, 0) = 0 THEN 1 ELSE r.desired_servings END, 0) AS costs_per_serving,
|
||||
IFNULL(SUM(rpr.calories), 0) AS calories,
|
||||
IFNULL(SUM(rpr.due_score), 0) AS due_score,
|
||||
GROUP_CONCAT(rpr.product_name) AS product_names_comma_separated
|
||||
FROM recipes r
|
||||
LEFT JOIN recipes_pos_resolved rpr
|
||||
ON r.id = rpr.recipe_id
|
||||
LEFT JOIN recipes_missing_product_counts rmpc
|
||||
ON r.id = rmpc.recipe_id
|
||||
GROUP BY r.id;
|
||||
|
Reference in New Issue
Block a user