Skip to content

Commit

Permalink
FRW-7477: Fixed store context for OMS (#10865)
Browse files Browse the repository at this point in the history
FRW-7477 Fixed store context for OMS reservation.
  • Loading branch information
vol4onok authored Mar 7, 2024
1 parent 9e0631a commit 8d0c3ba
Show file tree
Hide file tree
Showing 6 changed files with 18 additions and 8 deletions.
5 changes: 3 additions & 2 deletions src/Spryker/Zed/Oms/Business/OmsFacade.php
Original file line number Diff line number Diff line change
Expand Up @@ -570,12 +570,13 @@ public function sendOrderShippedMail(SpySalesOrder $salesOrderEntity)
* @api
*
* @param string $sku
* @param \Generated\Shared\Transfer\StoreTransfer|null $storeTransfer
*
* @return void
*/
public function saveReservationVersion($sku)
public function saveReservationVersion($sku, ?StoreTransfer $storeTransfer = null)
{
$this->getFactory()->createReservationVersionHandler()->saveReservationVersion($sku);
$this->getFactory()->createReservationVersionHandler()->saveReservationVersion($sku, $storeTransfer);
}

/**
Expand Down
3 changes: 2 additions & 1 deletion src/Spryker/Zed/Oms/Business/OmsFacadeInterface.php
Original file line number Diff line number Diff line change
Expand Up @@ -538,10 +538,11 @@ public function sendOrderShippedMail(SpySalesOrder $salesOrderEntity);
* @api
*
* @param string $sku
* @param \Generated\Shared\Transfer\StoreTransfer|null $storeTransfer
*
* @return void
*/
public function saveReservationVersion($sku);
public function saveReservationVersion($sku, ?StoreTransfer $storeTransfer = null);

/**
* Specification:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

namespace Spryker\Zed\Oms\Business\Reservation;

use Generated\Shared\Transfer\StoreTransfer;
use Orm\Zed\Oms\Persistence\Map\SpyOmsProductReservationTableMap;
use Orm\Zed\Oms\Persistence\SpyOmsProductReservationChangeVersion;
use Spryker\Zed\Oms\Dependency\Facade\OmsToStoreFacadeInterface;
Expand Down Expand Up @@ -38,12 +39,13 @@ public function __construct(

/**
* @param string $sku
* @param \Generated\Shared\Transfer\StoreTransfer|null $storeTransfer
*
* @return void
*/
public function saveReservationVersion($sku)
public function saveReservationVersion($sku, ?StoreTransfer $storeTransfer = null)
{
$currentStoreTransfer = $this->storeFacade->getCurrentStore();
$currentStoreTransfer = $storeTransfer ?? $this->storeFacade->getCurrentStore();

/** @var int|null $idOmsProductReservation */
$idOmsProductReservation = $this->omsQueryContainer
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,15 @@

namespace Spryker\Zed\Oms\Business\Reservation;

use Generated\Shared\Transfer\StoreTransfer;

interface ReservationVersionHandlerInterface
{
/**
* @param string $sku
* @param \Generated\Shared\Transfer\StoreTransfer|null $storeTransfer
*
* @return void
*/
public function saveReservationVersion($sku);
public function saveReservationVersion($sku, ?StoreTransfer $storeTransfer = null);
}
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,6 @@ public function isApplicable(ReservationRequestTransfer $reservationRequestTrans
*/
public function handle(ReservationRequestTransfer $reservationRequestTransfer): void
{
$this->getFacade()->saveReservationVersion($reservationRequestTransfer->getSku());
$this->getFacade()->saveReservationVersion($reservationRequestTransfer->getSku(), $reservationRequestTransfer->getStore());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,9 @@ public function testImportReservationShouldHaveAmountInReservationTotals(): void
public function testExportReservationShouldExportAllUnExportedReservations(): void
{
$testStateMachineProcessName = 'Test01';

$storeTransfer = $this->tester->haveStore([StoreTransfer::NAME => static::STORE_NAME_DE], false);

$saveOrderTransfer = $this->tester->haveOrder([
ItemTransfer::UNIT_PRICE => 100,
ItemTransfer::SUM_PRICE => 100,
Expand All @@ -121,7 +124,7 @@ public function testExportReservationShouldExportAllUnExportedReservations(): vo
$this->getOmsFacade()->triggerEvent('authorize', $items, []);
$this->getOmsFacade()->triggerEvent('pay', $items, []);

$this->getOmsFacade()->saveReservationVersion($items[0]->getSku());
$this->getOmsFacade()->saveReservationVersion($items[0]->getSku(), $storeTransfer);
$this->getOmsFacade()->exportReservation();

$this->assertGreaterThan(0, $this->getOmsFacade()->getLastExportedReservationVersion());
Expand Down

0 comments on commit 8d0c3ba

Please sign in to comment.