| 
23 | 23 | use Bavix\Wallet\Services\BasketServiceInterface;  | 
24 | 24 | use Bavix\Wallet\Services\CastServiceInterface;  | 
25 | 25 | use Bavix\Wallet\Services\ConsistencyServiceInterface;  | 
 | 26 | +use Bavix\Wallet\Services\EagerLoaderServiceInterface;  | 
26 | 27 | use Bavix\Wallet\Services\PrepareServiceInterface;  | 
27 | 28 | use Bavix\Wallet\Services\PurchaseServiceInterface;  | 
28 | 29 | use Bavix\Wallet\Services\TransferServiceInterface;  | 
@@ -55,6 +56,7 @@ public function payFreeCart(CartInterface $cart): array  | 
55 | 56 |             $basketDto = $cart->getBasketDto();  | 
56 | 57 |             $basketService = app(BasketServiceInterface::class);  | 
57 | 58 |             $availabilityAssembler = app(AvailabilityDtoAssemblerInterface::class);  | 
 | 59 | +            app(EagerLoaderServiceInterface::class)->loadWalletsByBasket($basketDto);  | 
58 | 60 |             if (!$basketService->availability($availabilityAssembler->create($this, $basketDto, false))) {  | 
59 | 61 |                 throw new ProductEnded(  | 
60 | 62 |                     app(TranslatorServiceInterface::class)->get('wallet::errors.product_stock'),  | 
@@ -111,6 +113,7 @@ public function payCart(CartInterface $cart, bool $force = false): array  | 
111 | 113 |             $basketDto = $cart->getBasketDto();  | 
112 | 114 |             $basketService = app(BasketServiceInterface::class);  | 
113 | 115 |             $availabilityAssembler = app(AvailabilityDtoAssemblerInterface::class);  | 
 | 116 | +            app(EagerLoaderServiceInterface::class)->loadWalletsByBasket($basketDto);  | 
114 | 117 |             if (!$basketService->availability($availabilityAssembler->create($this, $basketDto, $force))) {  | 
115 | 118 |                 throw new ProductEnded(  | 
116 | 119 |                     app(TranslatorServiceInterface::class)->get('wallet::errors.product_stock'),  | 
@@ -188,6 +191,7 @@ public function refundCart(CartInterface $cart, bool $force = false, bool $gifts  | 
188 | 191 |     {  | 
189 | 192 |         return app(AtomicServiceInterface::class)->block($this, function () use ($cart, $force, $gifts) {  | 
190 | 193 |             $basketDto = $cart->getBasketDto();  | 
 | 194 | +            app(EagerLoaderServiceInterface::class)->loadWalletsByBasket($basketDto);  | 
191 | 195 |             $transfers = app(PurchaseServiceInterface::class)->already($this, $basketDto, $gifts);  | 
192 | 196 |             if (count($transfers) !== $basketDto->total()) {  | 
193 | 197 |                 throw new ModelNotFoundException(  | 
 | 
0 commit comments