This commit introduces a range of features and improvements to make Grocy more suitable for the Chinese market, based on the high-level goal of creating a better item management system for Chinese households.
The key changes include:
1. **New 'Last Used' Report:** A new stock report has been added to show products that have not been used for a long time. This feature is inspired by the 'Danshari' (断舍离) philosophy of decluttering and helps you identify and reduce waste. This includes a new controller method, a route, a Blade view, and the necessary JavaScript for the interactive data table.
2. **Chinese Units of Measurement:** A database migration has been added to include common Chinese units of measurement, such as 克 (gram), 斤 (jin), 公斤 (kilogram), and others. This makes inventory and recipe management more intuitive for you. Conversion factors between related units are also included.
3. **Improved Chinese Localization:** The Chinese (zh_CN) localization file has been significantly updated by filling in a large number of previously missing translations. This provides a more complete and professional experience for you. New translations for the 'Last Used' report have also been added.
4. **Future Work Planning:** A `TODO.md` file has been created to track the next steps for this project, specifically noting the need to research and integrate a barcode lookup API that is more suitable for Chinese products.
Make it possible to actively not-check a mandatory checkbox Userfield (closes#2601)
Pluralize the "opened" localization string (closes#2280)
Added a trendline to the price history chart (closes#2237)
Various minor style/code refinements
Fixed recipe ingredient costs/calories calculation when having different QUs and when only_check_single_unit_in_stock is set (fixes#2529)
Added a new column "Product picture" on /products (closes#2640)
Fixed partly opening stock entries stock_id handling (fixes#2391)