Commit Graph

402 Commits

Author SHA1 Message Date
Edward Betts
7bbcec91aa
Correct spelling (#1420) 2021-03-31 22:12:51 +02:00
Bernd Bestel
f5eff8ab49
Include due_type = "Expiration date" products in /stock/volatile API endpoint (fixes #1372) 2021-02-21 18:18:34 +01:00
Bernd Bestel
bfa3347a20
Fixed that editing stock entries was not possible (fixes #1268) 2021-01-12 18:04:20 +01:00
Bernd Bestel
8c0ff04caa
Fixed consume stock amount check for product substitution (fixes #1240) 2021-01-01 13:27:57 +01:00
Marc Ole Bulling
7e8f460dad
Added /system/time API call (#1223)
* Inital structure for /system/time API call

* Parse arguments for offset

* Correctly parsing parameters

* Fixed implimentation, added to openapi.json

* Modified DOC

* Added Sqlite3 time to output

* Fixed error with negative offset

* Review

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-12-28 19:39:24 +01:00
Bernd Bestel
2e3c237648
Fixed zero decimals handling (fixes #1213) 2020-12-23 19:56:37 +01:00
Bernd Bestel
a333ccbb78
Optimizes demo data 2020-12-22 10:12:37 +01:00
Bernd Bestel
431a2ab9f7
Added new Userfield type "Link (with title)" (closes #790) 2020-12-21 17:57:48 +01:00
Bernd Bestel
8f1ce607f7
Implemented user pictures (closes #1158) 2020-12-20 22:08:50 +01:00
Bernd Bestel
c9b5e14473
Make it possible to merge products (closes #243) 2020-12-20 20:58:22 +01:00
Bernd Bestel
df7653f4e5
Optimized barcode concatenation handling 2020-12-20 16:00:14 +01:00
Bernd Bestel
a5326aa95c
Improve API stock action endpoint response (closes #769) 2020-12-20 14:43:07 +01:00
Bernd Bestel
268b8e87d7
Make it possible to hide chores/batteries (closes #1069) 2020-12-20 10:19:44 +01:00
Bernd Bestel
250b308d5d
Support -1 for "Default due days after freezing" (closes #846) 2020-12-19 17:32:47 +01:00
Bernd Bestel
5421dfb6b2
Make the chore assignment type "Random" more random (closes #674) 2020-12-19 17:15:18 +01:00
Bernd Bestel
eb4a748da3
Consume opened products first (closes #1183) 2020-12-19 10:28:35 +01:00
Robert Resch
07ff28da39
Add row group customization (#1189)
* Add row group customization

* fix rowGroup state loading

* activate rowGroup for all datatables

* add reset button

* reload page done on success callback

* Review

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-12-16 18:18:03 +01:00
Bernd Bestel
25f5f98b75
Fixed undoing a consume transaction of an opened item added it back to stock unopened (fixes #1191) 2020-12-16 17:44:51 +01:00
Bernd Bestel
59aad1c180
Added REGEXP operator for API query filter (closes #1174) 2020-12-12 10:44:27 +01:00
Bernd Bestel
d3883ba93a
Reorganized API exposed entities 2020-12-12 10:10:21 +01:00
Bernd Bestel
4b1766ead0
Return default user setting if not configured for API endpoint /user/settings/{settingKey} (fixes #1169) 2020-12-10 18:02:24 +01:00
Bernd Bestel
cf34df5e3f
Squashed commit
Fixed some localization strings
Reviewed/optimized product deletion handling
Add option to hide products from the stock overview page (closes #906)
Prefill default_due_days also on the inventory page (closes #591)
Added DataTables accent chinese-string plugin (closes #872)
Show costs and calories per recipe ingredient (closes #1072)
Fixed user permission saving (fixes #1099)
User permissions should not have an effect for demo mode (closes #972)
Handle QU conversion when consuming a substituation (child) product (fixes #1118)
Consume/open any child product when the parent product is not in stock (closes #899)
Added a retry camera barcode scanning button to product picker workflow (closes #736)
2020-12-07 19:48:33 +01:00
Bernd Bestel
166748788b
Added an include_sub_products parameter to the API endpoint /stock/products/{productId}/locations 2020-11-19 18:37:16 +01:00
Bernd Bestel
211239a5d3
Fixed /stock/products/{productId}/entries endpoint query parameter include_sub_products did not work (however) 2020-11-19 18:28:16 +01:00
Bernd Bestel
631831e1e4
Use custom demo DB path suffix also for storage (references #395) 2020-11-19 12:24:26 +01:00
Bernd Bestel
f9d566c55c
Support custom DB path suffixes for demo mode (closes #395) 2020-11-18 19:42:05 +01:00
Bernd Bestel
5634abed82
Use transactions for database migrations 2020-11-17 20:22:38 +01:00
Bernd Bestel
6270f39688
Make Userfields reorderable (closes #1134) 2020-11-17 20:12:45 +01:00
Bernd Bestel
887526c727
Squashed commit
Fixed number input min/max amount handling
Only (auto) save valid user inputs
More filters on the stock journal pages
Save the last price per used barcode and preselect that as a total price on purchase if not empty (closes #1131)
Don't apply conversions for only_check_single_unit_in_stock ingredients (fixes #1120)
Render shopping list userfields (closes #1052)
Fixed Focus when adding included recipes (closes #1019)
Order all base objects with NOCASE (closes #1086)
2020-11-17 19:11:02 +01:00
Bernd Bestel
7b4edf3147
Adapt shopping list add expired products for #851 2020-11-15 22:38:21 +01:00
Bernd Bestel
b393998601
Distinguish expiry/best before dates (closes #851) 2020-11-15 19:53:44 +01:00
Bernd Bestel
28276191cc
Don't allow tare weight handling enabled products to be opened (closes #770) 2020-11-14 22:51:06 +01:00
Bernd Bestel
b0b3322266
Also relate the shopping list amount to QU stock 2020-11-13 17:30:57 +01:00
Bernd Bestel
ab68a51ba7
Recipe edit page fixes 2020-11-13 15:46:44 +01:00
Bernd Bestel
68eeb07e5f
Test/review/rework (and hopefully finalized) new price handling 2020-11-10 18:11:33 +01:00
Bernd Bestel
0134535a5e
Fix/workaround for undfined constant GROCY_LOCALE 2020-11-08 21:37:43 +01:00
Bernd Bestel
d82fd09fba
UI test/review 2020-11-08 15:09:10 +01:00
kriddles
cb3978cdbd
AddProduct Fix (#1110) 2020-10-31 16:24:49 +01:00
kriddles
9bbcdafab9
Add purchased date to inventory (#1102)
* Add purchased date to inventory

* Clarify stock settings label

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-10-29 17:04:34 +01:00
kriddles
fb17c57dd3
inventory fix for quFactorPurchaseToStock - defaults to product details (#1081) 2020-10-26 10:10:10 +01:00
kriddles
46e8123477
Allow price up to 4 decimals instead of 2 (#1077)
* Allow price to be 4 decimals

* remove logging

* Finalize custom decimal places by user setting

* Typo

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-10-20 20:08:54 +02:00
Bernd Bestel
94214b867a
More authentication refactoring to also provide "plugable" credentials handling (references #921, needed for #305) 2020-10-19 18:38:12 +02:00
Bernd Bestel
ccd2caa44c
Fixed GetProductIdFromBarcode returned wrong id & use default qu_factor_purchase_to_stock when not provided when adding products to stock (fixes #1068) 2020-10-18 14:09:54 +02:00
fipwmaqzufheoxq92ebc
a85998dd40
Improvements (#1049)
* Fixes #1035: Check available amount after filtering by stock_entry_id

* Fixes #1036: Remove stock-related buttons/options from Shopping-list  if FEATURE_FLAG_STOCK is disabled

* Fixes #1010: Repair recipe-picture upload.

* Fixes #958: Disable auto-reload of equipments-page.

* Fix uncaught exception in locationpicker.js

* Fixes #761 and #762: Add "Remove exact amount" for products with tare weight handling and use it for recipe-consumption.

* Fixes #1048: Repair product-group-filter on "Master Data"/Products

* Renamed variable

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-10-14 17:48:37 +02:00
Bernd Bestel
a66a4d0c22
Fix missing property warnings (references #1025) 2020-10-12 17:50:33 +02:00
SourceFactory.at
617b25bda8
added button to add expired products to shoppinglist (#1026)
* added button to add expired products to shoppinglist

* Localizations are managed via Transifex

Revert "added button to add expired products to shoppinglist"

This reverts commit ad1ab5d6a0.

* Revert unnecessary change

* Reuse existing function (GetExpiringProducts) to get expired products

Co-authored-by: Mario Klug <mario.klug@sourcefactory.at>
Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-10-04 15:20:34 +02:00
Bernd Bestel
4b5b7bcb19
Applied formatting rules for by #1000 changed files 2020-09-14 11:20:29 +02:00
fipwmaqzufheoxq92ebc
5056ca9397
Some bug fixes. (#1000)
* Fix #997. Remove datetimepicker if FEATURE_FLAG_STOCK_BEST_BEFORE_DATE is not set.

* datetimepicker: Fix that SetValue did not set the value if "shortcut-checkbox" (e.g. "never expires") was checked.

* Use parent div as clickable area for checkboxes in dropdowns

* Fix nightmode-enable

* Fix possibly undefined variables in CalendarService.php

* Fix undefined variable in GenericEntityApiController.php

* Fix "Trying to access property barcodes on non-object" in productpicker

* Fix undefined "hintId" in shoppinglocationpicker

* Fix undefined variables in locationpicker.blade.php
2020-09-14 11:15:11 +02:00
fipwmaqzufheoxq92ebc
0454c128f0
Stock-Journal: API, Summary, Done By (#989)
* Stockjournal: Add "Done by"

* Add API for Stock-Journal

* Add "Journal-Summary"

* Use ALTER TABLE

* Moved the "Jounral summary" button to the stock journal page

* Changed icon & context menu position for new stock journal summary page

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-09-06 13:18:51 +02:00
Bernd Bestel
836bcc82e5
Applied PHP-CS-Fixer rules 2020-09-01 21:29:47 +02:00
fipwmaqzufheoxq92ebc
32a4f81f62
Filtering of API-Results (#985)
* Add FilteredApiResponse

* Use FilteredApiResponse for Generic-Entity-Search

* Use FilteredApiResponse for Recipe-Fullfillment

* Use FilteredApiResponse for GetUsers

* Use FilteredApiResponse for current Tasks

* Use FilteredApiResponse for ProductStockEntries & ProductStockLocations

* Use FilteredApiResponse for current chores

* Use FilteredApiResponse for batteries-current

* Fix missing highlighting of "< X days"

* Keep to use existing views

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-09-01 19:59:40 +02:00
Bernd Bestel
d4c5da2173
Applied PHP formatting rules 2020-08-31 20:40:31 +02:00
fipwmaqzufheoxq92ebc
07beee93a9
Add user-field-type "file" (#977)
* Add user-field-type "file"

* Add userfield-type "picture"

* Also limit image height on userfieldsform

* Prevent empty userfields (cause warnings in tables after deleting a file)

* Show files in dialogs

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-08-31 20:07:46 +02:00
fipwmaqzufheoxq92ebc
6f8ad9b76e
Locales: use http-accept-language or cookie (#976)
* Locales: use http-accept-language or "language"-cookie

* Add user-setting "locale"

Rename CULTURE to DEFAULT_LOCALE

* Use LocaleMiddleware also in dev mode

* CORS: don't require authentication on OPTIONS

* Use a standard user-settings-control and start a new generic user settings page, not a separate page for the locale setting

* Fixed (broken by myself) link-return handling

* Clarify language settings

* Removed unneeded files

* Better user settings icon

* Added localization hints

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-08-31 19:11:51 +02:00
fipwmaqzufheoxq92ebc
17094f56eb
Run database-Migrations in right order (#973) 2020-08-29 19:15:02 +02:00
Bernd Bestel
3b0d29bed0
Applied EditorConfig settings to all files 2020-08-29 16:41:27 +02:00
kriddles
22ca427ca9
Include location and shopping_location_id when opening products (#965) 2020-08-29 12:26:36 +02:00
fipwmaqzufheoxq92ebc
b7d1b21f1d
[WIP] Implemented basic permissions (#960)
* Add permissions to Database & add "User"-classes

* Add UI & API for Permissions, protect "User"-(Api)-Controller with new permissions.

* Add some permissions.

* Add permission localization

* Add error handling.

* Error pages: only redirect on 404

* ExceptionController: return JSON-Response on api-routes

* Rename PRODUCT_ADD to PRODUCT_PURCHASE

* Move translation to new file

* Fix checkboxes stay selected on reload.

* Remove configurable User-implementation

* Remove MASTER_DATA_READ

* Disable buttons the user isn't allowed to use.

* Add default permissions for new users

* When migration to permissions, everyone starts as ADMIN

* Permission-Localization: add to transifex & LocalizationService

* Review

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-08-29 12:05:32 +02:00
Bernd Bestel
4058925f40
Handle edited stock entries in GetProductPriceHistory (fixes #913) 2020-08-25 19:09:47 +02:00
Bernd Bestel
3b564294e3
Allow decimal amounts in general for the shopping list 2020-08-24 20:25:50 +02:00
Bernd Bestel
ece880ea44
Don't round up missing amounts and allow decimal numbers (fixes #758) 2020-08-24 20:16:21 +02:00
Bernd Bestel
95ca6f6354
Display "Track date only"-chores as all-day events on the calendar (fixes #941) 2020-08-24 18:27:40 +02:00
Bernd Bestel
fdb419fe55
Fixed errors while populating demo data 2020-08-22 17:59:42 +02:00
fipwmaqzufheoxq92ebc
923e027a4b
Some bug fixes. (#959)
* Fixes #956. Return 404 for missing objects in GenericEntityApiController.php

* Fixes #936 and #943. Include Products that expire today in /stock/volatile and "Expiring soon"-sum on stockoverview

* Fixes #881. Remove items of deleted shopping lists.

* Fixes #875. Prevent infinite nested recipes.

* Review

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-08-22 09:58:25 +02:00
fipwmaqzufheoxq92ebc
d60d981fd1
Refactor Authentication and add proxy-authentication (#921)
* Refactor Authentication-Middlewares

* Add Proxy-Authentication

* Disable "Logout" & "Manage Users" when using ProxyAuth

* Review

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-08-19 19:23:13 +02:00
fipwmaqzufheoxq92ebc
e7af74f550
use last Chore-Log when determining the next assigned person (#933) 2020-08-18 19:34:19 +02:00
fipwmaqzufheoxq92ebc
42dc55625a
Improve Performance (#927)
* Stock-Overview: Reduce amount of database queries and FindObjectInArray()-calls

* Speed-up stock_current by improving products_resolved and creating indices.

* Review

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-08-18 19:23:37 +02:00
kriddles
e8845fe2e8
Qu factor purchase to stock & Product Barcode Details (#801)
* Puchase add qu_factor_to_stock

* qu_factor_purchase_to_stock for stock edit

* product barcodes with QU and Stores

* remove product barcode tags

* migrations/0103 add value and factor_puchase_amount to stock_current and stock_current_location_content

* Remove unused method

* StockService#GetProductDetails: include stock_value

* productcard: include stock_value

* Add Purchase Factor to Stock Overview

* update demo data with stock qu_factor_purchase_to_stock

* recipes_pos_resolved update

* avg_price and oldest_price in product details

* add average price to product card

* hint for recipe costs not included if not in stock

* Round value and factor_purchas_amount. Include currency for stock value

* Add factor_purchase_amount to product card stock amount

* Allow editing qu_factor_purchase_to_stock for stock entries

* fix update qu_factor_purchase_to_stock for Transfers

* Add barcode to existing product update to add to product_barcodes table

* Add barcode to new product workflow update to add to product_barcodes table

* *** Price now saved as 1 QU to stock in stock tables ***

* remove column product barcode and use product_barcodes

* Allow products to be deactivated instead of deleted

* Embedded barcode and qu-conversion with page reload on change

* Save current product barcode into new product_barcodes table

* Embedded popup for product group add/edit

* barcode scanner added to product barcodes input

* Edit product qu_stock is unavailable after first purchase

* StockOverview: Filters break when columns are reordered so for now just disable colReorder

* view stockoverview.blade: display product_group column

* Review

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-08-17 21:47:33 +02:00
Zack Arnett
29b4672346
Link to respective page on Calendar Event Click (#784)
* Link to Page on calendar event click

* Undo my Prettier Changes.. Oops
2020-04-22 18:03:05 +02:00
Bernd Bestel
1686fcca8e
Fixed that product-opened-actions had no transaction_id in stock_log (fixes #732) 2020-04-13 17:04:59 +02:00
Bernd Bestel
1fc802c30e
Typo/duplicated function (references #718) 2020-04-13 10:41:37 +02:00
Bernd Bestel
42e6a8ef94
Added new API endpoints to get all user and config settings (closes #718) 2020-04-13 10:35:20 +02:00
Bernd Bestel
b62d3b02e6
Only add not empty translation strings to POT in DEV mode 2020-04-12 20:31:30 +02:00
Bernd Bestel
86ef36d76a
Don't ignore the decimal part when editing a stock entry (fixes #616) 2020-04-12 15:22:36 +02:00
Bernd Bestel
615de378ba
Don't load demo_data strings in production setups 2020-04-12 14:22:18 +02:00
James Addison
4f8ef2859e
Fixup: paths for localization file existence checks (#710) 2020-04-09 08:29:44 +02:00
Bernd Bestel
4072dfd26f
Use default strings if any of the minor translation files is not available 2020-04-05 08:40:42 +02:00
kriddles
2fee4b45ff
set default store for product, purchase set last store purchased if available or use product default (#672) 2020-03-27 19:27:40 +01:00
Bernd Bestel
d7738aa1ec
Added some demo data to showcase the new price tracking per store feature (references #658) 2020-03-25 20:56:33 +01:00
Bernd Bestel
c3d4be352d
Fix product card chart rendering error when there is no shopping location (references #658) 2020-03-25 19:49:10 +01:00
Immae
a45317aea1
Add shopping location for price tracking (#658) 2020-03-25 19:34:56 +01:00
Bernd Bestel
f440604007
Fixed Location Content Sheet product ordering (fixes #590) 2020-03-06 20:56:11 +01:00
Bernd Bestel
e2bb3a7d00
Changelog & little changes for #592 2020-03-06 20:46:27 +01:00
DarienFord
b0ddc026f8
Added chore name when getting list of all chores. (#592) 2020-03-06 20:43:38 +01:00
zebardy
1a5f3ce926
Convert services to singletons and use lazy loading to improve performance (#479)
* use singletons to reduce need to recreate the same objects

* unable to make the constructor private

* comment out debug printing to log file

* correct typo of treating self() as a var instead of a function

* utilise Localisation service as a singleton

* fix errent line that should have been commented

* remove phpinfo

* correct mistake in stock controller

* try storing app in apcu

* serialise inside the app closures

* get timings for db-changed-time

* get timings for db-changed-time

* store localisation service in apcu

* stor translations in apcu instead of localisation service (due to database connection)

* correct syntax error

* forgot to uncomment instance map

* correct indentation and variable out of scope

* more timings for app execution time

* try apc caching for views

* correct scope for Pot variable

* remove additional fopen

* correct timings for app build time

* correct timings for app object build time

* correct timings for app route build time

* get timings for routing timings

* get more in depth timings for routing loading

* fix more in depth timings for routing loading

* start investigating session auth middleware creation

* start investigating session auth middleware creation

* start investigating Login controller time

* start investigating Login controller time

* in depth look at Logincontroller timings

* comment out debug printing

* lazily obtain valus for page rendering

* correct syntax error

* correct scope of variable

* correct visibiity of methds inherited from BaseController

* missing use for Userfieldsservice

* lazy loading of open api spec

* lazy loading of users service

* lazy loading of batteries service

* lazy loading of services in controllers

* lazy loading of services in services

* correct mistake

* fix userservice

* fix userservice

* fix userfieldservice

* fix chores service

* fix calendar service

* remove Dockerfile used for development

* Remove docker compose file used for development

* Clean up app.php

* remove last diff

* Clean up base controller

* Clean up controllers

* lean up middleware

* Clean up and tuen all services into singletons

* remove debug from routes.php

* remove acpu from localisation

* Complete removal of acpu from localisation

* fixes for things broken

* More fixes following merge

* Fix for start up bug. Re factoring singleton code had brroken due to scope of clas var.

* fix bug where getUsersService is declared twice

* bug fixes following merge

* bug fixes following merge

* bug fixes following merge

* bug fixes following merge

* bug fixes following merge

* Fix all the not working things...

* Deleted off-topic files

* Deleted off-topic files

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-03-01 17:47:47 +01:00
Bernd Bestel
97095d6e68
Typo... 2020-02-09 17:33:02 +01:00
Bernd Bestel
785dd30724
Fixed that the wrong FEATURE_FLAG was used (references #552) 2020-02-09 17:28:49 +01:00
Bernd Bestel
1953a26d7f
Changelog and small changes for #552) 2020-02-09 17:27:46 +01:00
kriddles
13f99ad5f2
CalendarService reflect config options for GetEvents (#552) 2020-02-09 17:22:54 +01:00
Bernd Bestel
5d83ec7967
Typo 2020-01-27 22:17:19 +01:00
Bernd Bestel
e84c7063d3
Consume any subproduct when consuming a recipe ingredient which is not in stock (fixes #446) 2020-01-27 22:14:11 +01:00
Bernd Bestel
71a57c9dcb
Implement "Free products" (closes #426) 2020-01-26 20:01:30 +01:00
kriddles
ac1be1e90f 450 updates (#518)
* prevent seeing undefinde if no recipes

* disable weekRecipeConsume if weekCosts are zero

* reword title

* Add meal plan notes and products to Calendar
2020-01-26 08:50:44 +01:00
Bernd Bestel
fd5a72264d
Meal plan recipe and notes also fit into one table (references #477) 2020-01-23 21:57:47 +01:00
Bernd Bestel
99d4b05a3c
Make purchased date on /stockedit editable / Dirty workaround for 2 datetimepickers on the same page (references #506) 2020-01-23 18:58:05 +01:00
kriddles
3baffcfe7b typo (#511) 2020-01-23 09:34:17 +01:00
Bernd Bestel
6300a8fd09
Typo... 2020-01-22 22:36:01 +01:00
Bernd Bestel
ec2551d263
Little refinements for #507 2020-01-22 21:17:04 +01:00
kriddles
ef9f28d154 421 (#507)
* refactor to be stock/entry/{entryId}

* Allow recipeform add productworkflow

* on document ready stockdetail filter based on ProductPicker

* openDate fixes for undo

* RefreshStockDetailRow refresh location-id
2020-01-22 21:08:49 +01:00
Bernd Bestel
0816359867
Some refinements for #501 2020-01-21 20:45:34 +01:00
kriddles
3a36bdaf45 recipes can create products (#501) 2020-01-21 20:20:26 +01:00
Bernd Bestel
c22496ca7c
Fixed /stockedit opened checkbox (references #506) 2020-01-21 20:04:33 +01:00
Bernd Bestel
d0036e8034
Tried to simplify #503 (also references #487) 2020-01-19 09:52:23 +01:00
Grégory SACRE
61a45c030f Feature request : api/stock can return detailed products #487 (#503)
The response of the call '/api/stock' now returns a new attribute
('product') which contains the details of the related product.
2020-01-19 09:14:07 +01:00
kriddles
2a608c41e9 Stock detail updates (#493)
* Fix spelling

* stockdetail refresh with location name

* Stock updates

* change stock_row_id to id

* fix stockdetail refresh rows after clicking undo

* fix stockdetail consume spoiled
2020-01-17 17:54:34 +01:00
Bernd Bestel
8e26bd2c31
Allow partial units during inventory (fixes #459) 2020-01-03 13:55:14 +01:00
kriddles
6c7420ea08 Stock Service Updates (#421)
* viewjs consume: implement location and update stock specific

* Transfer Products

* services StockService#GetProductStockEntriesByLocation: add method

* services StockService#AddProduct: check for stock and locations

* services StockService: include location_id

* services StockService#LocationExists: add method

* services StockService#UndoBooking: fix based on stockRow

* Reimplement StockServer->TransferProduct (one loop for the whole action to preserve stock_id)

* Ensure that the location_id is never NULL in the stock and stock_log table (checked by an INSERT trigger, sets the products default location if empty)

* Only consider stock amount at the given location on consume, if supplied

* Restore more/old display text for "specific stock entry"

* Don't allow transfering tare weight enabled products

* Various small changes (code style, missing OpenAPI endpoint, remove location_id null checking)

* Updated translations strings

* Added transaction_id and correlation_id to stock_log entries to group them together

* ProductCard - location to default location label change

* Also undo correlated bookings on undo

* Added API endpoints for listing and undoing transactions and use them on purchase/consume/inventory/stockoverview

* Initial Stock detail page

* Allow Undo for Tranfers

* Price step to .01

* Some localization string changes & fixes
2019-12-19 19:48:36 +01:00
Bernd Bestel
21b9c1a8aa
Always use the proper URL for meal plan links in iCal calendar export (references #417) 2019-10-12 10:22:17 +02:00
kriddles
c6ae8cc348 Calendar descriptions (iCal export) (#417)
* controllers CalendarApiController: setDescription for events

* services CalendarService: include link to mealplan in calendar descriptions
2019-10-12 10:16:06 +02:00
Bernd Bestel
ba6bfa6a2c
Added a chore period type "yearly" (closes #407) 2019-10-04 11:24:51 +02:00
Bernd Bestel
e59a35c6d1
Also refresh the parent product on sub product actions on the stock overview page (closes #394) 2019-09-27 08:30:08 +02:00
Bernd Bestel
cf3217ada4
Fixed expired products count on stock overview page (fixes #392) 2019-09-26 16:42:59 +02:00
Bernd Bestel
5351828e79
Reuse existing shopping list items when adding products from the stock overview page (closes #375) 2019-09-24 18:27:50 +02:00
Marc Ole Bulling
f444d3e095 Fixed API call AddProductToShoppingList (#376)
$productId->id was undefined, therefore all items added to the shopping list with the API call had a null entry for "product_id"
2019-09-24 15:50:35 +02:00
Bernd Bestel
53c56cc1cb
Include meal plan recipes in the calendar (closes #368) 2019-09-24 09:40:56 +02:00
Bernd Bestel
66571f662f
Hotfix (will be included in v2.5.0 release): Don't break image loading when php-gd extension is not installed 2019-09-22 14:48:50 +02:00
Bernd Bestel
d16f3c2daf
Optimized demo instance localization & data handling 2019-09-22 08:21:15 +02:00
Bernd Bestel
d8360993cc
Internal change that the demo instances (stable and pre-release) can be served through a single instance for all localizations (references #241) 2019-09-21 15:07:29 +02:00
Bernd Bestel
e4437f5db1
Fixed that "Spoil rate" and "Average shelf life" on the product card was wrong in most cases 2019-09-21 13:30:44 +02:00
Bernd Bestel
c228126c3a
Added a new field calories for products (closes #268) 2019-09-20 20:06:24 +02:00
Bernd Bestel
292b652437
Updated localizations & improved some special and demo translation string data handling 2019-09-20 16:26:50 +02:00
Bernd Bestel
35a409f462
Fixed/refined some things regarding purchase/consume/inventory of products with enabled tare weight handling 2019-09-19 21:10:36 +02:00
Bernd Bestel
a4d479d047
Also consider opened products for minimum stock amounts (optionally, but by default) (closes #353) 2019-09-19 18:11:03 +02:00
Bernd Bestel
5e9a7fb7ca
Implemented browser barcode scanning (closes #102) 2019-09-19 12:48:02 +02:00
Bernd Bestel
ca470ed4ee
Fixed version display in prerelease mode 2019-09-18 17:27:47 +02:00
Bernd Bestel
096fb7a116
Implement custom entities / objects (closes #242) 2019-09-18 16:18:15 +02:00
Bernd Bestel
918f84f568
Lazy load all images to increase page load times (references #275) 2019-09-18 13:59:37 +02:00
Bernd Bestel
d209c0bd22
Automatically downscale pictures to reduce page loading times (closes #275) 2019-09-18 11:04:59 +02:00
Bernd Bestel
3df44697bf
Implemented the option to automatically consume a product on tracking a chore execution (closes #279) 2019-09-18 10:02:52 +02:00
Bernd Bestel
0fa0138972
Implemented new Userfield type "Link" (references #258) 2019-09-17 19:33:06 +02:00
Bernd Bestel
0c27157db6
Implemented new Userfield type "Select list" (closes #325) 2019-09-17 19:11:06 +02:00
Bernd Bestel
bbd5ce1dc4
Typo... 2019-09-17 17:54:09 +02:00
Bernd Bestel
0771d58fe7
Fixed that /api/system/db-changed-time always returned the current time 2019-09-17 17:49:58 +02:00
Bernd Bestel
b5761ae544
Show to whom the chore execution is assigned in calendar events (references #253) 2019-09-17 16:28:11 +02:00
Bernd Bestel
74f9470769
Implemented that chores can be assigned to users (closes #253) 2019-09-17 13:13:26 +02:00
Bernd Bestel
a799f2b43f
Finished qu unit conversion handling (closes #177) 2019-09-16 09:35:20 +02:00
Bernd Bestel
a0a0e104b0
Implemented product variations (closes #196) 2019-09-14 17:34:36 +02:00
Bernd Bestel
a4454f825a
Fixes/changes for pull request #349 2019-08-31 14:08:15 +02:00
Marc Ole Bulling
d4eb767f1b Add API call for adding products to shoppinglist 2019-08-30 09:21:11 +02:00
Forceu
411aad2398
Set stock amount to 0 instead of null if product not in stock
Without this the API returns null instead of 0 when queried for product stock amount
2019-08-13 12:20:14 +02:00
Bernd Bestel
28716ed96c
First draft for printable location content sheets (references #341) 2019-08-10 16:34:29 +02:00
Bernd Bestel
cc1c6a6442
Little changes for pull request #338 2019-08-10 08:33:30 +02:00
Marc Ole Bulling
1e33975a96 Use default best before date when adding product through API 2019-08-04 20:58:11 +02:00
Forceu
1a23eaabf1
Add API call to remove an item from the shopping list by productid
This adds an API call, so a shopping list item can easily be removed

Please note: This is UNTESTED, as I was unable to run the current grocy master commit on my server.
2019-08-04 20:31:47 +02:00
Bernd Bestel
87976b86d9
Also display price data from inventory corrections, not only purchases (fixes #303) 2019-07-07 09:25:13 +02:00
Bernd Bestel
b4d2e2a20a
Added the possibility to undo a task (closes #252) 2019-07-06 20:34:01 +02:00
Bernd Bestel
1eb1aa8b11
Added a "consume this recipe"-button to the meal plan (and also a button to consume all recipes for a whole week) (closes #283) 2019-07-06 20:02:40 +02:00
Bernd Bestel
b1adaa24cf
Fix session problem on 32 bit systems when using "stay logged in permanently" (fixes #278) 2019-06-08 16:47:45 +02:00
Bernd Bestel
9f2481a6a8
Fixed an issue when a plural translation is empty/null (can be the case for quantity units, fixes #259) 2019-06-08 16:32:23 +02:00
Bernd Bestel
d412b81eae
Hotfix (will be included in v2.4.0 release): Fixed a potential problem when the plural form of a translation (e. g. plural forms for user defined quantity units) is NULL 2019-05-10 21:22:53 +02:00
Bernd Bestel
338c6c0a9d
Added a new userfield type "preset-list" (closes #239) 2019-05-07 21:24:59 +02:00
Bernd Bestel
8504eb9b38
Finished first version of meal planning (for now closes #146) 2019-05-07 19:48:14 +02:00
Bernd Bestel
3f53919ddd
Also allow placeholders for plural translations (references #161) 2019-05-07 19:42:35 +02:00
Bernd Bestel
57233dba1a
Added first basic version of meal planning (references #146) 2019-05-06 19:38:47 +02:00
Bernd Bestel
9ef55f1f01
Make it possible to track a chore execution without the time part, only the day 2019-05-04 16:13:05 +02:00
Bernd Bestel
970e5edfa3
Fixed an issue with translations string without an placeholder (references #161) 2019-05-04 15:13:01 +02:00
Bernd Bestel
bcae9f9292
Added price field on inventory page (for added products) (references #225) 2019-05-03 22:11:20 +02:00
Bernd Bestel
7fc4992b3a
Fixed API response for /api/stock/products/{productId}/inventory when the new amount equals the current stock amount (references #224) 2019-05-03 18:37:02 +02:00
Bernd Bestel
4912dd56d1
Finished migration to use gettext (this now closes #161) 2019-05-02 20:20:18 +02:00
Bernd Bestel
9b2dba2397
Migrated (hopefully) all translations to PO/Gettext (references #161) 2019-05-01 20:19:18 +02:00
Bernd Bestel
40b5afe926
Backup current state of LocalizationService.php (references #161)
This will serve as a permanent backup for the migration algorithm used to migrate all current translation files to PO/Gettext
2019-05-01 20:04:06 +02:00
Bernd Bestel
fc11da3c3f
Started working on user-defined-fields for all entities (references #176) 2019-04-22 22:16:35 +02:00
Bernd Bestel
77f3b80540
Implemented daily/weekly/monthly recurrence patterns for chores (closes #151) 2019-04-22 14:01:31 +02:00
Bernd Bestel
d72fe69a17
Show more info in product card (closes #173) 2019-04-22 10:11:58 +02:00
Bernd Bestel
162adeb359
Improve API related changes regarding multiple shopping lists (references #190) 2019-04-22 08:21:57 +02:00
Bernd Bestel
cdd02efcc6
Implemented multiple/named shopping lists (closes #190) 2019-04-20 17:04:40 +02:00
Bernd Bestel
b6e80580ed
Make it possible to provide a different location for added product during inventory (closes #183) 2019-04-05 21:26:44 +02:00
Bernd Bestel
12082b52ab
Fixed differences in highlighting for expiring/expired items in header vs table on stock overview page (fixes #198) 2019-04-05 18:41:21 +02:00
Bernd Bestel
1b26a6277b
Make demo product locations a little bit more realistic 2019-03-10 16:18:24 +01:00
Bernd Bestel
9d02fbc13c
Again some changes for the new product-by-barcode API method (references #171) 2019-03-10 14:53:06 +01:00
Bernd Bestel
61f582554f
Return a proper API response when booking amount for consume/open is > current stock amount (references #170) 2019-03-10 13:50:28 +01:00
Bernd Bestel
75241fc61f
Just some changes for the new product-by-barcode API method (references #171) 2019-03-10 13:43:58 +01:00
Matej Drobnič
3f4a5cc0d6 Add fetch by barcode API method 2019-03-10 12:20:31 +01:00
Bernd Bestel
6de4b120b3
Include changelog as markdown files and show it in the about dialog 2019-03-09 15:54:16 +01:00
Bernd Bestel
2d8ad24887
Implemented that included recipes can have a serving amount (closes #163 and references #127) 2019-03-05 23:45:04 +01:00
Bernd Bestel
816eb03147 Added a "recipe gallery" view (closes #147) 2019-03-05 17:59:33 +01:00
Bernd Bestel
8504429f5f Implemented tare weight handling (closes #132) 2019-03-05 17:51:50 +01:00
Bernd Bestel
90291fdbca Added possibility to export the calendar in iCal format (closes #141) 2019-03-04 17:44:48 +01:00
Bernd Bestel
77b0bc675c Varios small UI changes / improve UI consistency 2019-03-04 17:43:12 +01:00
Bernd Bestel
8020f92d6b
Track on consume for which recipe it was (closes #64 and references #64) 2019-03-03 18:20:06 +01:00
Bernd Bestel
bb5daa5f8b
Display total cost of recipes based on last purchase prices (closes #128) 2019-03-03 16:33:48 +01:00
Bernd Bestel
8c11d0f15d
Add an option per recipe to not check against the shopping list when adding missing recipe ingredients, only against stock (closes #154) 2019-03-03 15:23:39 +01:00
Bernd Bestel
e9ef7ea6d8
Allow recipe ingredients to be ignored when putting them on the shopping list (closes #125) 2019-03-03 14:49:46 +01:00
Bernd Bestel
b89643ddb1
Allow different locations per product in stock (closes #124)
Kind of basic for now, a different location can be set on purchase, the filters on the stock overview page handles different locations
2019-03-01 20:25:01 +01:00
Bernd Bestel
01e9e3f5ce
Move about dialog into separate view and add API endpoint for system info 2019-02-09 13:41:40 +01:00
Bernd Bestel
dfc05e0bec
Allow optional partial units of products in stock (closes #123) 2019-01-26 14:17:02 +01:00
Bernd Bestel
eec3515b6d
Don't use a second hidden amount field for shopping list entries which were added by "Add missing products to shopping list" (fixes #149) 2019-01-26 13:09:01 +01:00
Bernd Bestel
0d145bbf1e
Respect QU purchase factor when adding or comparing recipe ingredients to shopping list entries (fixes #131) 2019-01-05 21:11:36 +01:00
Bernd Bestel
8041dd9c26
Support single quotes in demo data 2018-11-24 20:39:17 +01:00
Bernd Bestel
306d0f7da6
Add "one click shopping list to stock workflow" (closes #110) 2018-11-21 19:08:36 +01:00
Bernd Bestel
2ff5faacc0
Prevent opening more products than are unopened in stock 2018-11-18 13:35:21 +01:00
Bernd Bestel
a489190e81
Add some opened products to demo 2018-11-18 13:21:57 +01:00
Bernd Bestel
a403bb687a
Show amount of opened products on stock overview page and in product card 2018-11-18 13:17:36 +01:00
Bernd Bestel
c71e46191f
Optimized stock logic 2018-11-18 12:34:05 +01:00
Bernd Bestel
10ea9c44fd
Make it possible to mark a product as opened (closes #86) 2018-11-17 19:39:37 +01:00
Bernd Bestel
816ca6460f
Make it possible to pick a specific stock item on consume (closes #62) 2018-11-17 17:51:35 +01:00
Bernd Bestel
83985e9f21
Migrate translations to use Transifex 2018-11-03 14:29:14 +01:00
Bernd Bestel
364f6b2051
Add journal and undo UI for stock bookings, chore executions and battery charge cycles (closes #63, closes #97) 2018-10-27 17:26:00 +02:00
Bernd Bestel
fe83e2fa6f
Created API endpoints to undo battery charge cycles and chore executions (references #63) 2018-10-27 10:55:30 +02:00
Bernd Bestel
da98efa833
Finalize nested recipes / group recipe positions feature (closes #77) 2018-10-27 10:37:31 +02:00