diff --git a/CHANGELOG.md b/CHANGELOG.md index 89f1a7e..ad627a7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +### v2.2.2 от 07.12.2021 +* Оптимизация под новые версии Opencart + ### v2.2.1 от 24.11.2021 * Обновлен SDK до версии 2.2.2 diff --git a/src/install.xml b/src/install.xml index 52df173..da4ef81 100644 --- a/src/install.xml +++ b/src/install.xml @@ -2,7 +2,7 @@ YooMoney for Opencart 3.x YooMoney - 2.2.1 + 2.2.2 YooMoney https://github.com/yoomoney/cms-opencart3 diff --git a/src/upload/admin/controller/extension/payment/yoomoney.php b/src/upload/admin/controller/extension/payment/yoomoney.php index 5d61783..3022f6d 100644 --- a/src/upload/admin/controller/extension/payment/yoomoney.php +++ b/src/upload/admin/controller/extension/payment/yoomoney.php @@ -12,7 +12,7 @@ class ControllerExtensionPaymentYoomoney extends Controller { const MODULE_NAME = 'yoomoney'; - const MODULE_VERSION = '2.2.1'; + const MODULE_VERSION = '2.2.2'; const WIDGET_INSTALL_STATUS_SUCCESS = true; const WIDGET_INSTALL_STATUS_FAIL = false; diff --git a/src/upload/admin/model/extension/payment/yoomoney.php b/src/upload/admin/model/extension/payment/yoomoney.php index c806899..7b0218c 100644 --- a/src/upload/admin/model/extension/payment/yoomoney.php +++ b/src/upload/admin/model/extension/payment/yoomoney.php @@ -5,7 +5,7 @@ class ModelExtensionPaymentYoomoney extends Model /** * string */ - const MODULE_VERSION = '2.2.1'; + const MODULE_VERSION = '2.2.2'; const YOOMONEY_EVENT_SECOND_RECEIPT_CODE = 'yoomoney_second_receipt_trigger'; private $kassaModel; @@ -19,6 +19,14 @@ class ModelExtensionPaymentYoomoney extends Model public function install() { $this->log('info', 'install yoomoney module'); + if ($this->checkExistTable(DB_PREFIX.'yoomoney_payment', 'captured_at')) { + $this->db->query(' + ALTER TABLE `' . DB_PREFIX . 'yoomoney_payment` MODIFY `captured_at` DATETIME NULL DEFAULT NULL;'); + } + if ($this->checkExistTable(DB_PREFIX.'yoomoney_refunds', 'authorized_at')) { + $this->db->query(' + ALTER TABLE `' . DB_PREFIX . 'yoomoney_refunds` MODIFY `authorized_at` DATETIME NULL DEFAULT NULL;'); + } $this->db->query(' CREATE TABLE IF NOT EXISTS `'.DB_PREFIX.'yoomoney_payment` ( `order_id` INTEGER NOT NULL, @@ -29,7 +37,7 @@ public function install() `payment_method_id` CHAR(36) NOT NULL, `paid` ENUM(\'Y\', \'N\') NOT NULL, `created_at` DATETIME NOT NULL, - `captured_at` DATETIME NOT NULL DEFAULT \'0000-00-00 00:00:00\', + `captured_at` DATETIME NULL DEFAULT NULL, `receipt` TEXT DEFAULT NULL, CONSTRAINT `'.DB_PREFIX.'yoomoney_payment_pk` PRIMARY KEY (`order_id`), @@ -45,7 +53,7 @@ public function install() `amount` DECIMAL(11, 2) NOT NULL, `currency` CHAR(3) NOT NULL, `created_at` DATETIME NOT NULL, - `authorized_at` DATETIME NOT NULL DEFAULT \'0000-00-00 00:00:00\', + `authorized_at` DATETIME NULL DEFAULT NULL, INDEX `'.DB_PREFIX.'yoomoney_refunds_idx_order_id` (`order_id`), INDEX `'.DB_PREFIX.'yoomoney_refunds_idx_payment_id` (`payment_id`), CONSTRAINT `'.DB_PREFIX.'yoomoney_refunds_pk` PRIMARY KEY (`refund_id`) @@ -745,4 +753,13 @@ private function getMapFileName() { return 'opencart-3.map'; } + + private function checkExistTable($tableName, $columnName) + { + try { + return $this->db->query("SELECT $columnName FROM $tableName LIMIT 1;"); + } catch (Exception $e) { + return false; + } + } } diff --git a/src/upload/admin/view/template/extension/payment/yoomoney/kassa_payments_list.twig b/src/upload/admin/view/template/extension/payment/yoomoney/kassa_payments_list.twig index f706d0e..b19d70d 100644 --- a/src/upload/admin/view/template/extension/payment/yoomoney/kassa_payments_list.twig +++ b/src/upload/admin/view/template/extension/payment/yoomoney/kassa_payments_list.twig @@ -42,7 +42,7 @@ {{ payment.status }} {{ payment.created_at }} - {% if payment.captured_at == '0000-00-00 00:00:00' %} + {% if payment.captured_at == null %} не подтверждён {% else %} {{ payment.captured_at }} diff --git a/src/upload/catalog/controller/extension/payment/yoomoney.php b/src/upload/catalog/controller/extension/payment/yoomoney.php index 1955677..87c2bbe 100644 --- a/src/upload/catalog/controller/extension/payment/yoomoney.php +++ b/src/upload/catalog/controller/extension/payment/yoomoney.php @@ -22,7 +22,7 @@ class ControllerExtensionPaymentYoomoney extends Controller { const MODULE_NAME = 'yoomoney'; - const MODULE_VERSION = '2.2.1'; + const MODULE_VERSION = '2.2.2'; /** * @var ModelExtensionPaymentYoomoney diff --git a/src/upload/catalog/model/extension/payment/yoomoney.php b/src/upload/catalog/model/extension/payment/yoomoney.php index 19c9acb..bad0813 100644 --- a/src/upload/catalog/model/extension/payment/yoomoney.php +++ b/src/upload/catalog/model/extension/payment/yoomoney.php @@ -20,7 +20,7 @@ */ class ModelExtensionPaymentYoomoney extends Model { - const MODULE_VERSION = '2.2.1'; + const MODULE_VERSION = '2.2.2'; private $kassaModel; private $walletModel; diff --git a/yoomoney.oc3x.ocmod.zip b/yoomoney.oc3x.ocmod.zip index 9ead1c7..7634e12 100644 Binary files a/yoomoney.oc3x.ocmod.zip and b/yoomoney.oc3x.ocmod.zip differ