1
0
mirror of synced 2025-02-21 01:13:13 +03:00

fixes #64 добавление префикса к внешнему id оплаты

This commit is contained in:
Sergey 2019-02-25 17:08:04 +03:00
parent 90b4e5f608
commit bd683e9678
7 changed files with 20 additions and 10 deletions

View File

@ -1,3 +1,6 @@
## 2019-02-25 3.4.4
* Добавлена генерация уникального id к externalId отправляемой оплаты
## 2019-02-15 3.4.3
* Исправлено сохранение типа оплаты при создании заказа при обработке истории изменений на стороне WC
* Исправлено сохранение типа оплаты при изменении заказа при обработке истории изменений на стороне WC

View File

@ -1 +1 @@
3.4.3
3.4.4

View File

@ -185,7 +185,9 @@ if ( ! class_exists( 'WC_Retailcrm_Orders' ) ) :
$retailcrmOrder = $response['order'];
foreach ($retailcrmOrder['payments'] as $payment_data) {
if ($payment_data['externalId'] == $order->get_id()) {
$payment_external_id = explode('-', $payment_data['externalId']);
if ($payment_external_id[0] == $order->get_id()) {
$payment = $payment_data;
}
}
@ -364,7 +366,7 @@ if ( ! class_exists( 'WC_Retailcrm_Orders' ) ) :
if ($this->retailcrm_settings['api_version'] == 'v5') {
$payment = array(
'amount' => $order->get_total(),
'externalId' => $order->get_id()
'externalId' => $order->get_id() . uniqid('-')
);
$payment['order'] = array(
@ -394,17 +396,17 @@ if ( ! class_exists( 'WC_Retailcrm_Orders' ) ) :
/**
* Send payment in CRM
*
*
* @param WC_Order $order
* @param boolean $update
*
*
* @return array $payment
*/
protected function sendPayment($order, $update = false)
{
$payment = array(
'amount' => $order->get_total(),
'externalId' => $order->get_id()
'externalId' => $order->get_id() . uniqid('-')
);
$payment['order'] = array(

View File

@ -45,9 +45,12 @@ API-ключ должен быть для отдельного магазина
2. В появившихся списках справочников настройте соответствие способов доставки и оплаты, а так же статусов заказов. Отметьте галочку "Выгружать остатки", если хотите выгружать остатки из Retailcrm в магазин (подробнее смотрите в описании).
== Changelog ==
= 3.4.4 =
* Добавлена генерация уникального id к внешнему id отправляемой оплаты при использовании 5 версии api
= 3.4.3 =
* Исправлено сохранение типа оплаты при создании заказа по истории на стороне WC
* Исправлено сохранение типа оплаты при ризменении заказа по истории на стороне WC
* Исправлено сохранение типа оплаты при создании заказа при обработке истории изменений на стороне WC
* Исправлено сохранение типа оплаты при ризменении заказа при обработке истории изменений на стороне WC
= 3.4.2 =
* Исправлено изменение типа оплаты на стороне WC

View File

@ -1,6 +1,6 @@
<?php
/**
* Version: 3.4.3
* Version: 3.4.4
* WC requires at least: 3.0
* WC tested up to: 3.4.3
* Plugin Name: WooCommerce RetailCRM

View File

@ -15,7 +15,7 @@
*
*
* @link https://wordpress.org/plugins/woo-retailcrm/
* @version 3.4.3
* @version 3.4.4
*
* @package RetailCRM
*/

View File

@ -117,6 +117,7 @@ class WC_Retailcrm_Orders_Test extends WC_Retailcrm_Test_Case_Helper
$this->assertArrayHasKey('payments', $order_send);
$this->assertInternalType('array', $order_send['payments']);
$this->assertArrayHasKey('type', $order_send['payments'][0]);
$this->assertArrayHasKey('externalId', $order_send['payments'][0]);
$this->assertEquals('payment1', $order_send['payments'][0]['type']);
}
} else {
@ -201,6 +202,7 @@ class WC_Retailcrm_Orders_Test extends WC_Retailcrm_Test_Case_Helper
$this->assertArrayHasKey('type', $payment);
$this->assertArrayHasKey('amount', $payment);
$this->assertArrayHasKey('order', $payment);
$this->assertArrayHasKey('externalId', $payment);
$this->assertEquals('payment1', $payment['type']);
}
}