add test for createneworderitems
This commit is contained in:
parent
8063e7bec9
commit
0c758749e0
2 changed files with 99 additions and 4 deletions
|
@ -19,12 +19,17 @@ final readonly class CreateNewOrderItems
|
|||
public function __invoke(Order $order): void
|
||||
{
|
||||
new ArrayCollection($this->drinkTypeRepository->findWanted())->forAll(
|
||||
fn (DrinkType $drinkType) => $order
|
||||
->addOrderItem(
|
||||
function (int $index, DrinkType $drinkType) use ($order) {
|
||||
$quantity = $drinkType->getWantedStock() - $drinkType->getCurrentStock();
|
||||
if ($quantity > 0) {
|
||||
$order->addOrderItem(
|
||||
new OrderItem()
|
||||
->setDrinkType($drinkType)
|
||||
->setQuantity($drinkType->getWantedStock() - $drinkType->getCurrentStock())
|
||||
),
|
||||
->setQuantity($quantity)
|
||||
);
|
||||
}
|
||||
return true; // Required for forAll to continue iterating
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue