Prevent opening more products than are unopened in stock

This commit is contained in:
Bernd Bestel
2018-11-18 13:35:21 +01:00
parent a489190e81
commit 2ff5faacc0
5 changed files with 31 additions and 6 deletions

View File

@@ -119,7 +119,7 @@ Grocy.Components.ProductPicker.GetPicker().on('change', function(e)
Grocy.Components.ProductCard.Refresh(productId);
Grocy.Api.Get('stock/get-product-details/' + productId,
function (productDetails)
function(productDetails)
{
$('#amount').attr('max', productDetails.stock_amount);
$('#amount_qu_unit').text(productDetails.quantity_unit_stock.name);
@@ -137,6 +137,15 @@ Grocy.Components.ProductPicker.GetPicker().on('change', function(e)
Grocy.FrontendHelpers.ValidateForm('consume-form');
$('#amount').focus();
}
if (productDetails.stock_amount == productDetails.stock_amount_opened)
{
$("#save-mark-as-open-button").addClass("disabled");
}
else
{
$("#save-mark-as-open-button").removeClass("disabled");
}
},
function(xhr)
{

View File

@@ -133,7 +133,7 @@ $(document).on('click', '.product-consume-button', function(e)
$(this).text(result.next_best_before_date).fadeIn(500);
});
$('#product-' + productId + '-next-best-before-date-timeago').attr('datetime', result.next_best_before_date);
}
}
toastr.success(L('Removed #1 #2 of #3 from stock', consumeAmount, productQuName, productName));
RefreshContextualTimeago();
@@ -163,6 +163,7 @@ $(document).on('click', '.product-open-button', function(e)
var productId = $(e.currentTarget).attr('data-product-id');
var productName = $(e.currentTarget).attr('data-product-name');
var productQuName = $(e.currentTarget).attr('data-product-qu-name');
var button = $(e.currentTarget);
Grocy.Api.Get('stock/open-product/' + productId + '/1',
function()
@@ -199,6 +200,11 @@ $(document).on('click', '.product-open-button', function(e)
$(this).text(L('#1 opened', result.stock_amount_opened)).fadeIn(500);
});
if (result.stock_amount == result.stock_amount_opened)
{
button.addClass("disabled");
}
toastr.success(L('Marked #1 #2 of #3 as opened', 1, productQuName, productName));
RefreshContextualTimeago();
RefreshStatistics();