parent
1e12e4d418
commit
c357c45072
@ -1,3 +1,11 @@
|
||||
## 2017-11-20 v.2.2.10
|
||||
* Устранен баг с созданием чеков
|
||||
* Улучшен механизм работы с оплатами
|
||||
|
||||
## 2017-11-13 v.2.2.9
|
||||
* Исправлены ошибки подключения кастомных классов
|
||||
* Улучшена обработка истории
|
||||
|
||||
## 2017-11-01 v.2.2.8
|
||||
* Исправлены баги пакетной выгрузки
|
||||
* Исправлена ошибка при работе на php7.1
|
||||
|
@ -271,45 +271,45 @@ class RetailCrmEvent
|
||||
$paymentsExternalIds[$payment['externalId']] = $payment;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($arPayment['PAY_SYSTEM_ID']) && isset($optionsPaymentTypes[$arPayment['PAY_SYSTEM_ID']])) {
|
||||
$paymentToCrm = array(
|
||||
'type' => $optionsPaymentTypes[$arPayment['PAY_SYSTEM_ID']],
|
||||
'amount' => $arPayment['SUM']
|
||||
);
|
||||
if (!empty($arPayment['PAY_SYSTEM_ID']) && isset($optionsPaymentTypes[$arPayment['PAY_SYSTEM_ID']])) {
|
||||
$paymentToCrm = array(
|
||||
'type' => $optionsPaymentTypes[$arPayment['PAY_SYSTEM_ID']],
|
||||
'amount' => $arPayment['SUM']
|
||||
);
|
||||
|
||||
if (!empty($arPayment['ID'])) {
|
||||
$paymentToCrm['externalId'] = $arPayment['ID'];
|
||||
}
|
||||
|
||||
if (!empty($arPayment['DATE_PAID'])) {
|
||||
if (is_object($arPayment['DATE_PAID'])) {
|
||||
$culture = new Bitrix\Main\Context\Culture(array("FORMAT_DATETIME" => "YYYY-MM-DD HH:MI:SS"));
|
||||
$paymentToCrm['paidAt'] = $arPayment['DATE_PAID']->toString($culture);
|
||||
} elseif (is_string($arPayment['DATE_PAID'])) {
|
||||
$paymentToCrm['paidAt'] = $arPayment['DATE_PAID'];
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($optionsPayStatuses[$arPayment['PAID']])) {
|
||||
$paymentToCrm['status'] = $optionsPayStatuses[$arPayment['PAID']];
|
||||
}
|
||||
|
||||
if (!empty($arPayment['ORDER_ID'])) {
|
||||
$paymentToCrm['order']['externalId'] = $arPayment['ORDER_ID'];
|
||||
}
|
||||
} else {
|
||||
RCrmActions::eventLog('RetailCrmEvent::paymentSave', 'payments', 'OrderID = ' . $arPayment['ID'] . '. Payment not found.');
|
||||
if (!empty($arPayment['ID'])) {
|
||||
$paymentToCrm['externalId'] = $arPayment['ID'];
|
||||
}
|
||||
|
||||
if (!array_key_exists($arPayment['ID'], $paymentsExternalIds)) {
|
||||
RCrmActions::apiMethod($api, 'ordersPaymentCreate', __METHOD__, $paymentToCrm, $site);
|
||||
} elseif (array_key_exists($arPayment['ID'], $paymentsExternalIds) && $paymentsExternalIds[$arPayment['ID']]['type'] == $optionsPaymentTypes[$arPayment['PAY_SYSTEM_ID']]) {
|
||||
RCrmActions::apiMethod($api, 'paymentEditByExternalId', __METHOD__, $paymentToCrm, $site);
|
||||
} elseif (array_key_exists($arPayment['ID'], $paymentsExternalIds) && $paymentsExternalIds[$arPayment['ID']]['type'] != $optionsPaymentTypes[$arPayment['PAY_SYSTEM_ID']]) {
|
||||
RCrmActions::apiMethod($api, 'ordersPaymentDelete', __METHOD__, $paymentsExternalIds[$arPayment['ID']]['id']);
|
||||
RCrmActions::apiMethod($api, 'ordersPaymentCreate', __METHOD__, $paymentToCrm, $site);
|
||||
if (!empty($arPayment['DATE_PAID'])) {
|
||||
if (is_object($arPayment['DATE_PAID'])) {
|
||||
$culture = new Bitrix\Main\Context\Culture(array("FORMAT_DATETIME" => "YYYY-MM-DD HH:MI:SS"));
|
||||
$paymentToCrm['paidAt'] = $arPayment['DATE_PAID']->toString($culture);
|
||||
} elseif (is_string($arPayment['DATE_PAID'])) {
|
||||
$paymentToCrm['paidAt'] = $arPayment['DATE_PAID'];
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($optionsPayStatuses[$arPayment['PAID']])) {
|
||||
$paymentToCrm['status'] = $optionsPayStatuses[$arPayment['PAID']];
|
||||
}
|
||||
|
||||
if (!empty($arPayment['ORDER_ID'])) {
|
||||
$paymentToCrm['order']['externalId'] = $arPayment['ORDER_ID'];
|
||||
}
|
||||
} else {
|
||||
RCrmActions::eventLog('RetailCrmEvent::paymentSave', 'payments', 'OrderID = ' . $arPayment['ID'] . '. Payment not found.');
|
||||
}
|
||||
|
||||
if (!array_key_exists($arPayment['ID'], $paymentsExternalIds)) {
|
||||
RCrmActions::apiMethod($api, 'ordersPaymentCreate', __METHOD__, $paymentToCrm, $site);
|
||||
} elseif (array_key_exists($arPayment['ID'], $paymentsExternalIds) && $paymentsExternalIds[$arPayment['ID']]['type'] == $optionsPaymentTypes[$arPayment['PAY_SYSTEM_ID']]) {
|
||||
RCrmActions::apiMethod($api, 'paymentEditByExternalId', __METHOD__, $paymentToCrm, $site);
|
||||
} elseif (array_key_exists($arPayment['ID'], $paymentsExternalIds) && $paymentsExternalIds[$arPayment['ID']]['type'] != $optionsPaymentTypes[$arPayment['PAY_SYSTEM_ID']]) {
|
||||
RCrmActions::apiMethod($api, 'ordersPaymentDelete', __METHOD__, $paymentsExternalIds[$arPayment['ID']]['id']);
|
||||
RCrmActions::apiMethod($api, 'ordersPaymentCreate', __METHOD__, $paymentToCrm, $site);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -323,7 +323,7 @@ class RetailCrmEvent
|
||||
function paymentDelete($event)
|
||||
{
|
||||
$apiVersion = COption::GetOptionString(self::$MODULE_ID, 'api_version', 0);
|
||||
|
||||
|
||||
if ((isset($GLOBALS['RETAIL_CRM_HISTORY']) && $GLOBALS['RETAIL_CRM_HISTORY']) || $apiVersion != 'v5') {
|
||||
return;
|
||||
}
|
||||
|
@ -624,7 +624,6 @@ class RetailCrmHistory
|
||||
}
|
||||
if ($product['delete']) {
|
||||
$item->delete();
|
||||
$basket->save();
|
||||
|
||||
continue;
|
||||
}
|
||||
@ -653,8 +652,6 @@ class RetailCrmHistory
|
||||
$item->setField('DISCOUNT_VALUE', '');
|
||||
}
|
||||
}
|
||||
|
||||
$basket->save();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1168,7 +1168,6 @@ class RetailCrmHistory
|
||||
if (isset($optionsPayment[$paymentCrm['status']])) {
|
||||
$nowPayment->setField('PAID', $optionsPayment[$paymentCrm['status']]);
|
||||
}
|
||||
$nowPayment->save();
|
||||
|
||||
unset($paymentsList[$paymentCrm['externalId']]);
|
||||
}
|
||||
@ -1183,7 +1182,6 @@ class RetailCrmHistory
|
||||
$newPayment->setField('PRICE_COD', '0.00');
|
||||
$newPayment->setField('EXTERNAL_PAYMENT', 'N');
|
||||
$newPayment->setField('UPDATED_1C', 'N');
|
||||
$newPayment->save();
|
||||
|
||||
$newPaymentId = $newPayment->getId();
|
||||
|
||||
@ -1202,7 +1200,6 @@ class RetailCrmHistory
|
||||
}
|
||||
$payment->delete();
|
||||
}
|
||||
$paymentColl->save();
|
||||
|
||||
if ($paymentsCrm['totalSumm'] == $paySumm) {
|
||||
$order->setFieldNoDemand('PAYED', 'Y');
|
||||
|
@ -1,2 +1,2 @@
|
||||
- Исправлены ошибки подключения кастомных классов
|
||||
- Улучшена обработка истории
|
||||
- Устранен баг с созданием чеков
|
||||
- Улучшен механизм работы с оплатами
|
||||
|
@ -1,5 +1,5 @@
|
||||
<?
|
||||
$arModuleVersion = array(
|
||||
"VERSION" => "2.2.9",
|
||||
"VERSION_DATE" => "2017-11-13 11:00:00"
|
||||
"VERSION" => "2.2.10",
|
||||
"VERSION_DATE" => "2017-11-20 16:00:00"
|
||||
);
|
||||
|
Loading…
x
Reference in New Issue
Block a user