diff --git a/CHANGELOG.md b/CHANGELOG.md index 74738b1f..46311689 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +## 2024-09-19 v6.5.29 +- Исправлена подписка модуля на событие сохранения заказа + ## 2024-09-11 v6.5.28 - Исправлен возврат на предыдущий статус в заказе Bitrix diff --git a/intaro.retailcrm/description.ru b/intaro.retailcrm/description.ru index 67732cb1..583cbb21 100644 --- a/intaro.retailcrm/description.ru +++ b/intaro.retailcrm/description.ru @@ -1 +1 @@ -- Исправлен возврат на предыдущий статус в заказе Bitrix +- Исправлена подписка модуля на событие сохранения заказа при установке diff --git a/intaro.retailcrm/install/index.php b/intaro.retailcrm/install/index.php index dc229fd1..12a4c52d 100644 --- a/intaro.retailcrm/install/index.php +++ b/intaro.retailcrm/install/index.php @@ -1090,7 +1090,7 @@ class intaro_retailcrm extends CModule RegisterModuleDependences('sale', 'OnSalePaymentEntityDeleted', $this->MODULE_ID, 'RetailCrmEvent', 'paymentDelete'); RegisterModuleDependences('main', 'OnAfterUserRegister', $this->MODULE_ID, 'RetailCrmEvent', 'OnAfterUserRegister'); RegisterModuleDependences('main', 'OnAfterUserAdd', $this->MODULE_ID, 'RetailCrmEvent', 'OnAfterUserAdd'); - + RegisterModuleDependences('sale', 'OnSaleOrderSaved', $this->MODULE_ID, 'RetailCrmEvent', 'orderSave', 99); COption::SetOptionString($this->MODULE_ID, Constants::CRM_CATALOG_BASE_PRICE, htmlspecialchars(trim($_POST['price-types']))); COption::SetOptionString($this->MODULE_ID, Constants::CRM_INVENTORIES_UPLOAD, 'N'); @@ -1272,13 +1272,7 @@ class intaro_retailcrm extends CModule COption::RemoveOption($this->MODULE_ID, Constants::USE_CRM_ORDER_METHODS); if (CModule::IncludeModule('sale')) { - UnRegisterModuleDependences( - 'sale', - EventActions::EVENT_ON_ORDER_SAVED, - $this->MODULE_ID, - 'RetailCrmEvent', - 'orderSave' - ); + UnRegisterModuleDependences('sale', 'OnSaleOrderSaved', $this->MODULE_ID, 'RetailCrmEvent', 'orderSave'); } UnRegisterModuleDependences('sale', 'OnOrderUpdate', $this->MODULE_ID, 'RetailCrmEvent', 'onUpdateOrder'); diff --git a/intaro.retailcrm/install/version.php b/intaro.retailcrm/install/version.php index c75e52dc..7ad9654f 100644 --- a/intaro.retailcrm/install/version.php +++ b/intaro.retailcrm/install/version.php @@ -1,6 +1,6 @@ '6.5.28', - 'VERSION_DATE' => '2024-09-11 13:00:00' + 'VERSION' => '6.5.29', + 'VERSION_DATE' => '2024-09-19 15:00:00' ]; diff --git a/intaro.retailcrm/lib/component/handlers/eventshandlers.php b/intaro.retailcrm/lib/component/handlers/eventshandlers.php index f56b1741..f084b75f 100644 --- a/intaro.retailcrm/lib/component/handlers/eventshandlers.php +++ b/intaro.retailcrm/lib/component/handlers/eventshandlers.php @@ -133,10 +133,6 @@ class EventsHandlers /** @var Order $order */ $order = $event->getParameter('ENTITY'); - // TODO: Replace old call with a new one. - $saveResult = RetailCrmEvent::orderSave($order); - Utils::handleApiErrors($saveResult); - $isBonusInput = ( !empty($_POST['bonus-input']) && !empty($_POST['available-bonuses']) diff --git a/tests/lib/component/handlers/EventsHandlersTest.php b/tests/lib/component/handlers/EventsHandlersTest.php index fd975bf8..c5316d30 100644 --- a/tests/lib/component/handlers/EventsHandlersTest.php +++ b/tests/lib/component/handlers/EventsHandlersTest.php @@ -13,28 +13,6 @@ class EventsHandlersTest extends \BitrixTestCase CModule::IncludeModule('intaro.retailcrm'); } - /** - * @runInSeparateProcess - * @preserveGlobalState disabled - */ - public function testOnSaleOrderSavedHandler() - { - $order = \Bitrix\Sale\Order::create('s1', 2, 'RUB'); - $order->setPersonTypeId(2); - - $event = $this->createMock(\Bitrix\Main\Event::class); - $event->method('getParameter')->willReturn($order); - - $spy = \Mockery::spy('overload:' .RetailCrmEvent::class); - - EventsHandlers::OnSaleOrderSavedHandler($event); - - //Проверяет, был ли вызван метод класса. Если метод не вызывался, выдает ошибку теста - //Если метод вызывался, ошибку не выдает, но phpunit выдает сообщение об отсутствии тестов - $spy->shouldHaveReceived('orderSave'); - self::assertTrue(true); - } - /** * @runInSeparateProcess * @preserveGlobalState disabled @@ -56,4 +34,4 @@ class EventsHandlersTest extends \BitrixTestCase $spy->shouldNotHaveReceived('orderSave'); self::assertTrue(true); } -} \ No newline at end of file +}