Feature Request: Allow consuming an open package to trigger opening a fresh package
I have a suggestion that I think would simplify the workflow when consuming the last of a package. Take milk for example. I set it to treat open bottles as out of stock, so I can maintain a certain level of unopened bottles in stock.
My idea is similar to #2781 , but I think would work better when you aren't tracking consumption below the level of the units you are purchasing (as in bottles, boxes, etc), and just marking products as consumed when the bottle, etc is finished.
My current workflow when I finish a bottle of milk is to mark it as consumed, then mark the new bottle as open, which requires two steps, the consumption step and the opening step.
If I use the Consume tab I could perform either the Consumption step, or select Mark as opened to open a bottle , but once I click either button, the dialog resets and I would have to search for the product again to perform the other step.
My idea is to allow both to happen at the same time. This could involve selecting x units to consume, and y units to open, and then clicking Ok to do both at the same time. It could also involve having a tickbox to prevent the product selected being wiped when clicking Ok or mark as opened, so I can go on to do the other step with minimum effort. I suspect this version would be easier to implement.
Another approach would be for there to be an option at the product level to default to preserving open units when I consume one. That would mean that whenever one of that product is consumed, if the product consumed is open, then the same number of unopened units of that product are opened.
A third approach would be to enable this at the parent product level, so if I have Milk1 and Milk2 with parent Milk, then when I consume an open bottle of Milk1, if the preservation of open units is set for Milk, then the system would automatically open whichever of Milk1 or Milk2 I have available. I think in this version it would make sense for the amount newly opened to correspond to the quick open amount, so if Milk1 is a four pint bottle (quick open amount of 4 pints), but Milk2 is a 2 pint bottle, then if I consume Milk1, then 2 pints of Milk2 (if that is available) is opened. It could instead just trigger a quick open on the parent when one of the open child products is consumed, but that wouldn't necessarily be what is wanted.
I think the first approach is probably the simplest as it would just involve changing the interface. The second would hopefully be relatively simple as it just involves a single product, whereas the third would be more complicated as it would involve parent and child products, and if you aren't opening the exact same product type it might be easier just to open the new bottle manually.
Source: grocy/grocy