mirror of
https://github.com/grocy/grocy.git
synced 2025-04-29 01:32:38 +00:00
Allow decimal amounts in general for the shopping list
This commit is contained in:
parent
ece880ea44
commit
3b564294e3
@ -30,6 +30,7 @@
|
||||
|
||||
|
||||
### Shopping list improvements
|
||||
- Decimal amounts are now allowed (for any product, rounded by two decimal places)
|
||||
- "Add products that are below defined min. stock amount" always rounded up the missing amount to an integral number, this now allows decimal numbers
|
||||
|
||||
### Recipe improvements/fixes
|
||||
|
@ -116,19 +116,6 @@ Grocy.Components.ProductPicker.GetPicker().on('change', function(e)
|
||||
function (productDetails)
|
||||
{
|
||||
$('#amount_qu_unit').text(productDetails.quantity_unit_purchase.name);
|
||||
|
||||
if (productDetails.product.allow_partial_units_in_stock == 1)
|
||||
{
|
||||
$("#amount").attr("min", "0.01");
|
||||
$("#amount").attr("step", "0.01");
|
||||
$("#amount").parent().find(".invalid-feedback").text(__t('The amount cannot be lower than %s', 0.01.toLocaleString()));
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#amount").attr("min", "1");
|
||||
$("#amount").attr("step", "1");
|
||||
$("#amount").parent().find(".invalid-feedback").text(__t('The amount cannot be lower than %s', '1'));
|
||||
}
|
||||
|
||||
$('#amount').focus();
|
||||
Grocy.FrontendHelpers.ValidateForm('shoppinglist-form');
|
||||
@ -194,3 +181,5 @@ if (GetUriParam("amount") !== undefined)
|
||||
$("#amount").val(parseFloat(GetUriParam("amount")).toLocaleString({ minimumFractionDigits: 0, maximumFractionDigits: 4 }));
|
||||
Grocy.FrontendHelpers.ValidateForm('shoppinglist-form');
|
||||
}
|
||||
|
||||
$("#amount").parent().find(".invalid-feedback").text(__t('The amount cannot be lower than %s', 0.01.toLocaleString()));
|
||||
|
@ -38,10 +38,10 @@ class RecipesService extends BaseService
|
||||
{
|
||||
$product = $this->getDataBase()->products($recipePosition->product_id);
|
||||
|
||||
$toOrderAmount = ceil(($recipePosition->missing_amount - $recipePosition->amount_on_shopping_list) / $product->qu_factor_purchase_to_stock);
|
||||
$toOrderAmount = round(($recipePosition->missing_amount - $recipePosition->amount_on_shopping_list) / $product->qu_factor_purchase_to_stock, 2);
|
||||
if ($recipe->not_check_shoppinglist == 1)
|
||||
{
|
||||
$toOrderAmount = ceil($recipePosition->missing_amount / $product->qu_factor_purchase_to_stock);
|
||||
$toOrderAmount = round($recipePosition->missing_amount / $product->qu_factor_purchase_to_stock, 2);
|
||||
}
|
||||
|
||||
if($toOrderAmount > 0)
|
||||
|
@ -905,7 +905,7 @@ class StockService extends BaseService
|
||||
if ($productRow != null && !empty($productRow))
|
||||
{
|
||||
$newAmount = $productRow->amount - $amount;
|
||||
if ($newAmount < 1)
|
||||
if ($newAmount < 0.01)
|
||||
{
|
||||
$productRow->delete();
|
||||
}
|
||||
|
@ -51,9 +51,10 @@
|
||||
'id' => 'amount',
|
||||
'label' => 'Amount',
|
||||
'hintId' => 'amount_qu_unit',
|
||||
'min' => 0,
|
||||
'min' => 0.01,
|
||||
'step' => 0.01,
|
||||
'value' => $value,
|
||||
'invalidFeedback' => $__t('The amount cannot be lower than %s', '1')
|
||||
'invalidFeedback' => $__t('The amount cannot be lower than %s', '0.01')
|
||||
))
|
||||
|
||||
<div class="form-group">
|
||||
|
Loading…
x
Reference in New Issue
Block a user