Compare commits
	
		
			3 Commits
		
	
	
		
			6baee544c9
			...
			630a0435a2
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 630a0435a2 | |||
| 61cf7696a5 | |||
| 3d9ad49020 | 
| @ -58,6 +58,23 @@ FROM garfield.inventory_items | ||||
|   ) m USING (item_id) | ||||
| ORDER BY inventory_items.name; | ||||
| 
 | ||||
| -- How many *other* active inventory lines exist with the same barcode in the same location that are newer? | ||||
| CREATE TEMPORARY VIEW more_recent_inventory_lines_with_same_barcode AS | ||||
| SELECT | ||||
|   a.item_id, | ||||
|   -- It's important not to count(*) here because item_id is NULL | ||||
|   -- when no other inventory lines exist. | ||||
|   count(b.item_id) AS other_lines_count | ||||
| FROM garfield.inventory_items AS a | ||||
| LEFT JOIN garfield.inventory_items AS b | ||||
|        ON a.item_barcode = b.item_barcode | ||||
|       AND a.item_id != b.item_id | ||||
|       AND a.location = b.location | ||||
|       AND b.available | ||||
|       AND b.bought > a.bought | ||||
| GROUP BY a.item_id; | ||||
| 
 | ||||
| -- Get an array of how often items were sold over the last 14 days | ||||
| CREATE TEMPORARY VIEW inventory_last_n_days_sales AS | ||||
| WITH | ||||
| last_n_days AS ( | ||||
|  | ||||
| @ -1,6 +1,7 @@ | ||||
| SELECT | ||||
|   * | ||||
| FROM all_inventory_item_overview | ||||
| LEFT JOIN more_recent_inventory_lines_with_same_barcode USING (item_id) | ||||
| LEFT JOIN inventory_last_n_days_sales USING (item_id) | ||||
| WHERE (%(location_id)s IS NULL OR location = %(location_id)s) | ||||
|   AND available | ||||
|  | ||||
| @ -26,6 +26,7 @@ | ||||
| {% block content %} | ||||
| <table> | ||||
|   <tr> | ||||
|     <th>Stat</th> | ||||
|     <th>ID</th> | ||||
|     <th>Graph</th> | ||||
|     <th>Barcode</th> | ||||
| @ -41,6 +42,10 @@ | ||||
|   </tr> | ||||
| {% for item in items %} | ||||
|   <tr> | ||||
|     <td> | ||||
|       {% if item.units_left == 0 %}<span title="Leerer aktiver Inventareintrag">🅾️</span>{% endif %} | ||||
|       {% if item.other_lines_count != 0 %}<span title="{% if item.other_lines_count == 1 %}Neuerer Eintrag mit demselben Barcode ist aktiv{% else %}{{ item.other_lines_count }} Einträge mit demselben Barcode sind aktiv{% endif %}">🔄</span>{% endif %} | ||||
|     </td> | ||||
|     <td><a href="/inventory/item/{{ item.item_id }}">{{ item.item_id }}</a></td> | ||||
|     <td>{{ consumption_graph_svg(item.last_n_days_sales) }}</td> | ||||
|     <td><code>{{ item.item_barcode }}</code></td> | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user