parent
693031012d
commit
748ebdf4a3
@ -1,3 +1,6 @@
|
|||||||
|
## 2023-10-25 v.6.4.10
|
||||||
|
- Добавлена передача трек-номера в заказе из CRM в Bitrix
|
||||||
|
|
||||||
## 2023-10-24 v.6.4.9
|
## 2023-10-24 v.6.4.9
|
||||||
- Исправлена ошибка при деактивации модуля
|
- Исправлена ошибка при деактивации модуля
|
||||||
|
|
||||||
|
@ -1722,28 +1722,30 @@ class RetailCrmHistory
|
|||||||
$shipmentColl = $bitrixOrder->getShipmentCollection();
|
$shipmentColl = $bitrixOrder->getShipmentCollection();
|
||||||
|
|
||||||
if ($delivery) {
|
if ($delivery) {
|
||||||
|
$baseFields = [
|
||||||
|
'BASE_PRICE_DELIVERY' => $crmOrder['delivery']['cost'],
|
||||||
|
'PRICE_DELIVERY' => $crmOrder['delivery']['cost'],
|
||||||
|
'CURRENCY' => $bitrixOrder->getCurrency(),
|
||||||
|
'DELIVERY_NAME' => $delivery->getName(),
|
||||||
|
'CUSTOM_PRICE_DELIVERY' => 'Y',
|
||||||
|
];
|
||||||
|
|
||||||
|
if (RetailcrmConfigProvider::getTrackNumberStatus() === 'Y') {
|
||||||
|
$baseFields['TRACKING_NUMBER'] = $crmOrder['delivery']['data']['trackNumber'] ?? '';
|
||||||
|
}
|
||||||
|
|
||||||
//В коллекции всегда есть одна скрытая системная доставка, к которой относятся нераспределенные товары
|
//В коллекции всегда есть одна скрытая системная доставка, к которой относятся нераспределенные товары
|
||||||
//Поэтому, если есть только системная доставка, то нужно создать новую
|
//Поэтому, если есть только системная доставка, то нужно создать новую
|
||||||
if (!$update || $shipmentColl->count() === 1) {
|
if (!$update || $shipmentColl->count() === 1) {
|
||||||
$shipment = $shipmentColl->createItem($delivery);
|
$shipment = $shipmentColl->createItem($delivery);
|
||||||
$shipment->setFields([
|
|
||||||
'BASE_PRICE_DELIVERY' => $crmOrder['delivery']['cost'],
|
$shipment->setFields($baseFields);
|
||||||
'PRICE_DELIVERY' => $crmOrder['delivery']['cost'],
|
|
||||||
'CURRENCY' => $bitrixOrder->getCurrency(),
|
|
||||||
'DELIVERY_NAME' => $delivery->getName(),
|
|
||||||
'CUSTOM_PRICE_DELIVERY' => 'Y'
|
|
||||||
]);
|
|
||||||
} else {
|
} else {
|
||||||
|
$baseFields['DELIVERY_ID'] = $deliveryId;
|
||||||
|
|
||||||
foreach ($shipmentColl as $shipment) {
|
foreach ($shipmentColl as $shipment) {
|
||||||
if (!$shipment->isSystem()) {
|
if (!$shipment->isSystem()) {
|
||||||
$shipment->setFields([
|
$shipment->setFields($baseFields);
|
||||||
'BASE_PRICE_DELIVERY' => $crmOrder['delivery']['cost'],
|
|
||||||
'PRICE_DELIVERY' => $crmOrder['delivery']['cost'],
|
|
||||||
'CURRENCY' => $bitrixOrder->getCurrency(),
|
|
||||||
'DELIVERY_ID' => $deliveryId,
|
|
||||||
'DELIVERY_NAME' => $delivery->getName(),
|
|
||||||
'CUSTOM_PRICE_DELIVERY' => 'Y'
|
|
||||||
]);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1 +1 @@
|
|||||||
- Исправлена ошибка при деактивации модуля
|
- Добавлена передача трек-номера в заказе из CRM в Bitrix
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
$arModuleVersion = [
|
$arModuleVersion = [
|
||||||
'VERSION' => '6.4.9',
|
'VERSION' => '6.4.10',
|
||||||
'VERSION_DATE' => '2023-10-24 13:00:00'
|
'VERSION_DATE' => '2023-10-25 15:00:00'
|
||||||
];
|
];
|
||||||
|
@ -112,3 +112,5 @@ $MESS ['DEACTIVATE_MODULE'] = 'Deactivate the module';
|
|||||||
|
|
||||||
$MESS ['WRONG_CREDENTIALS'] = 'Enter the address and authorization key of the CRM system';
|
$MESS ['WRONG_CREDENTIALS'] = 'Enter the address and authorization key of the CRM system';
|
||||||
$MESS ['Wrong "apiKey" value.'] = 'Invalid authorization key';
|
$MESS ['Wrong "apiKey" value.'] = 'Invalid authorization key';
|
||||||
|
|
||||||
|
$MESS ['ORDER_TRACK_NUMBER'] = 'Receive track number';
|
||||||
|
@ -171,3 +171,5 @@ $MESS ['DEACTIVATE_MODULE'] = 'Деактивировать модуль';
|
|||||||
|
|
||||||
$MESS ['WRONG_CREDENTIALS'] = 'Введите адрес и ключ авторизации CRM системы';
|
$MESS ['WRONG_CREDENTIALS'] = 'Введите адрес и ключ авторизации CRM системы';
|
||||||
$MESS ['Wrong "apiKey" value.'] = 'Недействительный ключ авторизации';
|
$MESS ['Wrong "apiKey" value.'] = 'Недействительный ключ авторизации';
|
||||||
|
|
||||||
|
$MESS ['ORDER_TRACK_NUMBER'] = 'Получать трек-номер';
|
||||||
|
@ -1159,4 +1159,14 @@ class ConfigProvider
|
|||||||
{
|
{
|
||||||
return COption::GetOptionString(Constants::MODULE_ID, Constants::SITES_AVAILABLE, null);
|
return COption::GetOptionString(Constants::MODULE_ID, Constants::SITES_AVAILABLE, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function getTrackNumberStatus()
|
||||||
|
{
|
||||||
|
return static::getOption(Constants::RECEIVE_TRACK_NUMBER_DELIVERY);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function setTrackNumberStatus($trackNumberStatus)
|
||||||
|
{
|
||||||
|
static::setOption(Constants::RECEIVE_TRACK_NUMBER_DELIVERY, $trackNumberStatus);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -104,4 +104,6 @@ class Constants
|
|||||||
['EVENT_NAME' => 'OnSaleComponentOrderResultPrepared', 'FROM_MODULE' => 'sale'],
|
['EVENT_NAME' => 'OnSaleComponentOrderResultPrepared', 'FROM_MODULE' => 'sale'],
|
||||||
];
|
];
|
||||||
public const SITES_AVAILABLE = 'sites_available';
|
public const SITES_AVAILABLE = 'sites_available';
|
||||||
|
|
||||||
|
public const RECEIVE_TRACK_NUMBER_DELIVERY = 'receive_track_number_delivery';
|
||||||
}
|
}
|
||||||
|
@ -814,6 +814,9 @@ if (isset($_POST['Update']) && ($_POST['Update'] === 'Y')) {
|
|||||||
$CRM_ORDER_VAT,
|
$CRM_ORDER_VAT,
|
||||||
htmlspecialchars(trim($_POST['order-vat'])) ?: 'N'
|
htmlspecialchars(trim($_POST['order-vat'])) ?: 'N'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
ConfigProvider::setTrackNumberStatus(htmlspecialchars(trim($_POST['track-number'])) ?: 'N');
|
||||||
|
|
||||||
COption::SetOptionString(
|
COption::SetOptionString(
|
||||||
$mid,
|
$mid,
|
||||||
$CRM_COUPON_FIELD,
|
$CRM_COUPON_FIELD,
|
||||||
@ -1027,6 +1030,7 @@ if (isset($_POST['Update']) && ($_POST['Update'] === 'Y')) {
|
|||||||
$optionsCustomFields = unserialize(COption::GetOptionString($mid, $CRM_CUSTOM_FIELDS, 0));
|
$optionsCustomFields = unserialize(COption::GetOptionString($mid, $CRM_CUSTOM_FIELDS, 0));
|
||||||
$optionsOrderNumbers = COption::GetOptionString($mid, $CRM_ORDER_NUMBERS, 0);
|
$optionsOrderNumbers = COption::GetOptionString($mid, $CRM_ORDER_NUMBERS, 0);
|
||||||
$optionsOrderVat = COption::GetOptionString($mid, $CRM_ORDER_VAT, 0);
|
$optionsOrderVat = COption::GetOptionString($mid, $CRM_ORDER_VAT, 0);
|
||||||
|
$optionsOrderTrackNumber = ConfigProvider::getTrackNumberStatus();
|
||||||
$canselOrderArr = unserialize(COption::GetOptionString($mid, $CRM_CANSEL_ORDER, 0));
|
$canselOrderArr = unserialize(COption::GetOptionString($mid, $CRM_CANSEL_ORDER, 0));
|
||||||
$sendPickupPointAddress = COption::GetOptionString($mid, Constants::CRM_SEND_PICKUP_POINT_ADDRESS, 'N');
|
$sendPickupPointAddress = COption::GetOptionString($mid, Constants::CRM_SEND_PICKUP_POINT_ADDRESS, 'N');
|
||||||
|
|
||||||
@ -2238,6 +2242,15 @@ if (isset($_POST['Update']) && ($_POST['Update'] === 'Y')) {
|
|||||||
<tr class="heading">
|
<tr class="heading">
|
||||||
<td colspan="2" class="option-other-bottom"><b><?php echo GetMessage('ORDERS_OPTIONS'); ?></b></td>
|
<td colspan="2" class="option-other-bottom"><b><?php echo GetMessage('ORDERS_OPTIONS'); ?></b></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="2" class="option-head option-other-top option-other-bottom">
|
||||||
|
<b>
|
||||||
|
<label><input class="addr" type="checkbox" name="track-number" value="Y" <?php if ($optionsOrderTrackNumber === 'Y') {
|
||||||
|
echo "checked";
|
||||||
|
} ?>> <?php echo GetMessage('ORDER_TRACK_NUMBER'); ?></label>
|
||||||
|
</b>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2" class="option-head option-other-top option-other-bottom">
|
<td colspan="2" class="option-head option-other-top option-other-bottom">
|
||||||
<b>
|
<b>
|
||||||
|
Loading…
Reference in New Issue
Block a user