Skip to content

Commit a503d3d

Browse files
Merge pull request #58 from zans-laksa/1793-backorders
Cart Backorders Items
2 parents 78ff538 + 90c9bd4 commit a503d3d

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

src/Model/Resolver/SaveCartItem.php

+3-2
Original file line numberDiff line numberDiff line change
@@ -451,9 +451,10 @@ protected function checkItemQty(CartItemInterface $cartItem, $qty): void
451451
return;
452452
}
453453

454+
$allowedBackorder = $stockItem->getBackorders();
454455
$fitsInStock = $qty <= $stockItem->getQty();
455456

456-
if (!$fitsInStock) {
457+
if (!$fitsInStock && !$allowedBackorder) {
457458
throw new GraphQlInputException(new Phrase('Provided quantity exceeds stock limits'));
458459
}
459460

@@ -486,7 +487,7 @@ protected function checkItemQty(CartItemInterface $cartItem, $qty): void
486487

487488
$qtyLeftInStock = $qtyWithReservation - $stockItemConfiguration->getMinQty();
488489

489-
$isInStock = bccomp((string) $qtyLeftInStock, (string) $qty, 4) >= 0;
490+
$isInStock = bccomp((string) $qtyLeftInStock, (string) $qty, 4) >= 0 || $allowedBackorder;
490491
$isEnoughQty = (bool)$stockItemData[GetStockItemDataInterface::IS_SALABLE] && $isInStock;
491492

492493
if (!$isEnoughQty) {

0 commit comments

Comments
 (0)