Make it possible to provide the purchase price also as a total price (closes #390)

This commit is contained in:
Bernd Bestel
2019-09-27 13:50:16 +02:00
parent 9527305311
commit 765f908966
4 changed files with 31 additions and 2 deletions

View File

@@ -5,6 +5,7 @@
- After product actions (consume/purchase/etc.) on the stock overview page on a sub product, now also the parent product (row) is refreshed - After product actions (consume/purchase/etc.) on the stock overview page on a sub product, now also the parent product (row) is refreshed
- It's now possible to accumulate min. stock amounts on parent product level (new option per product, means the sub product will never be "missing" then, only the parent product) - It's now possible to accumulate min. stock amounts on parent product level (new option per product, means the sub product will never be "missing" then, only the parent product)
- When adding a product to the shopping list from the new context/more menu from the stock overview page and if the product is already on the shopping list, the amount of that entry will be updated acccordingly instead of adding a new (double) shopping list item - When adding a product to the shopping list from the new context/more menu from the stock overview page and if the product is already on the shopping list, the amount of that entry will be updated acccordingly instead of adding a new (double) shopping list item
- On the purchase page there is now an option to select that the price is the total price (for the whole amount) - below the price field, defaults to "Unit price" (as it was until now), when set to "Total price", the entered price will be divided by the amount before posting
### Recipe improvements/fixes ### Recipe improvements/fixes
- Fixed a problem regarding quantity unit conversion handling for recipe ingredients of products with no unit relations, but only a different purchase/stock quantity unit - Fixed a problem regarding quantity unit conversion handling for recipe ingredients of products with no unit relations, but only a different purchase/stock quantity unit

View File

@@ -1528,3 +1528,12 @@ msgstr ""
msgid "Are you sure to remove this conversion?" msgid "Are you sure to remove this conversion?"
msgstr "" msgstr ""
msgid "Unit price"
msgstr ""
msgid "Total price"
msgstr ""
msgid "in %s and based on the purchase quantity unit"
msgstr ""

View File

@@ -14,6 +14,16 @@
if (!jsonForm.price.toString().isEmpty()) if (!jsonForm.price.toString().isEmpty())
{ {
price = parseFloat(jsonForm.price).toFixed(2); price = parseFloat(jsonForm.price).toFixed(2);
if ($("input[name='price-type']:checked").val() == "total-price")
{
price = price / amount;
}
}
if (!Grocy.FeatureFlags.GROCY_FEATURE_FLAG_STOCK_PRICE_TRACKING)
{
price = 0;
} }
var jsonData = {}; var jsonData = {};

View File

@@ -57,10 +57,19 @@
'min' => 0, 'min' => 0,
'step' => 0.0001, 'step' => 0.0001,
'value' => '', 'value' => '',
'hint' => $__t('in %s per purchase quantity unit', GROCY_CURRENCY), 'hint' => $__t('in %s and based on the purchase quantity unit', GROCY_CURRENCY),
'invalidFeedback' => $__t('The price cannot be lower than %s', '0'), 'invalidFeedback' => $__t('The price cannot be lower than %s', '0'),
'isRequired' => false 'isRequired' => false,
'additionalGroupCssClasses' => 'mb-1'
)) ))
<div class="form-check form-check-inline mb-3">
<input class="form-check-input" type="radio" name="price-type" id="price-type-unit-price" value="unit-price" checked>
<label class="form-check-label" for="price-type-unit-price">{{ $__t('Unit price') }}</label>
</div>
<div class="form-check form-check-inline mb-3">
<input class="form-check-input" type="radio" name="price-type" id="price-type-total-price" value="total-price">
<label class="form-check-label" for="price-type-total-price">{{ $__t('Total price') }}</label>
</div>
@else @else
<input type="hidden" name="price" id="price" value="0"> <input type="hidden" name="price" id="price" value="0">
@endif @endif