1
0
mirror of synced 2024-11-22 21:36:10 +03:00
This commit is contained in:
Akolzin Dmitry 2019-01-16 10:28:11 +03:00
parent 6f6fb032e7
commit 524b815a47
8 changed files with 59 additions and 14 deletions

View File

@ -1,3 +1,8 @@
## 2019-01-15 v.2.4.3
* Добавлена выгрузка НДС в ICML каталоге
* Улучшена выгрузка истории изменений заказа
* Улучшена настройка выгрузки типов цен
## 2018-12-26 v.2.4.2 ## 2018-12-26 v.2.4.2
* Добавлена конвертация закупочной цены при выгрузке заказа * Добавлена конвертация закупочной цены при выгрузке заказа
* Исправлен файл переводов для выгрузки каталога * Исправлен файл переводов для выгрузки каталога

View File

@ -110,9 +110,15 @@ class RCrmActions
public static function PricesExportList() public static function PricesExportList()
{ {
$priceId = COption::GetOptionString(self::$MODULE_ID, 'catalog_base_price', 0);
$catalogExportPrices = array(); $catalogExportPrices = array();
$dbPriceType = CCatalogGroup::GetList(array(), array('!ID' => $priceId), false, false, array('ID', 'NAME', 'NAME_LANG')); $dbPriceType = CCatalogGroup::GetList(
array(),
array(),
false,
false,
array('ID', 'NAME', 'NAME_LANG')
);
while ($arPriceType = $dbPriceType->Fetch()) while ($arPriceType = $dbPriceType->Fetch())
{ {
$catalogExportPrices[$arPriceType['ID']] = $arPriceType; $catalogExportPrices[$arPriceType['ID']] = $arPriceType;

View File

@ -487,7 +487,13 @@ class RetailCrmHistory
foreach ($propertyCollectionArr['properties'] as $orderProp) { foreach ($propertyCollectionArr['properties'] as $orderProp) {
if ($orderProp['ID'][0] == 'n') { if ($orderProp['ID'][0] == 'n') {
$orderProp['ID'] = substr($orderProp['ID'], 1); $orderProp['ID'] = substr($orderProp['ID'], 1);
$orderProp['ID'] = $propertyCollection->getItemById($orderProp['ID'])->getField('ORDER_PROPS_ID'); $property = $propertyCollection->getItemById($orderProp['ID']);
if ($property) {
$orderProp['ID'] = $property->getField('ORDER_PROPS_ID');
} else {
continue;
}
} }
$nProps[] = $orderProp; $nProps[] = $orderProp;
} }

View File

@ -268,10 +268,23 @@ class RetailCrmICML
{ {
$basePriceId = COption::GetOptionString( $basePriceId = COption::GetOptionString(
$this->MODULE_ID, $this->MODULE_ID,
$this->CRM_CATALOG_BASE_PRICE . (is_null($this->profileID) === false ? '_' . $this->profileID : ''), $this->CRM_CATALOG_BASE_PRICE . '_' . $this->profileID,
1 0
); );
if (!$basePriceId) {
$dbPriceType = CCatalogGroup::GetList(
array(),
array('BASE' => 'Y'),
false,
false,
array('ID')
);
$result = $dbPriceType->GetNext();
$basePriceId = $result['ID'];
}
foreach ($this->iblocks as $key => $id) { foreach ($this->iblocks as $key => $id) {
$this->setSiteAddress($id); $this->setSiteAddress($id);
$barcodes = array(); $barcodes = array();
@ -284,7 +297,7 @@ class RetailCrmICML
array('PRODUCT_ID', 'BARCODE') array('PRODUCT_ID', 'BARCODE')
); );
while($arBarCode = $dbBarCode->GetNext()) { while ($arBarCode = $dbBarCode->GetNext()) {
if (!empty($arBarCode)) { if (!empty($arBarCode)) {
$barcodes[$arBarCode['PRODUCT_ID']] = $arBarCode['BARCODE']; $barcodes[$arBarCode['PRODUCT_ID']] = $arBarCode['BARCODE'];
} }
@ -312,7 +325,7 @@ class RetailCrmICML
} }
} }
$arSelect = Array ( $arSelect = array(
"ID", "ID",
"LID", "LID",
"IBLOCK_ID", "IBLOCK_ID",
@ -650,6 +663,13 @@ class RetailCrmICML
$offer.= "<barcode>" . $this->PrepareValue($arOffer["BARCODE"]) . "</barcode>\n"; $offer.= "<barcode>" . $this->PrepareValue($arOffer["BARCODE"]) . "</barcode>\n";
} }
if ($arOffer["CATALOG_VAT"]) {
$vatRate = $arOffer["CATALOG_VAT"];
} else {
$vatRate = 'none';
}
$offer.= "<vatRate>" . $this->PrepareValue($vatRate) . "</vatRate>\n";
$offer.= "</offer>\n"; $offer.= "</offer>\n";
return $offer; return $offer;

View File

@ -1,4 +1,3 @@
- Добавлена конвертация закупочной цены при выгрузке заказа - Добавлена выгрузка НДС в ICML каталоге
- Исправлен файл переводов для выгрузки каталога - Улучшена выгрузка истории изменений заказа
- В настройку экспорта каталога добавлена настройка максимального количества торговых предложений у товара - Улучшена настройка выгрузки типов цен
- Исправлен вызов обработчика сохранения оплаты при создании заказа

View File

@ -130,7 +130,7 @@ if (file_exists($_SERVER["DOCUMENT_ROOT"]."/bitrix/php_interface/retailcrm/expor
} }
$loader = new RetailCrmICML(); $loader = new RetailCrmICML();
$loader->profileID = $PROFILE_ID; $loader->profileID = $profile_id;
$loader->iblocks = $IBLOCK_EXPORT; $loader->iblocks = $IBLOCK_EXPORT;
$loader->propertiesSKU = $IBLOCK_PROPERTY_SKU; $loader->propertiesSKU = $IBLOCK_PROPERTY_SKU;
$loader->propertiesUnitSKU = $IBLOCK_PROPERTY_UNIT_SKU; $loader->propertiesUnitSKU = $IBLOCK_PROPERTY_UNIT_SKU;

View File

@ -955,6 +955,8 @@ class intaro_retailcrm extends CModule
$loader->Load(); $loader->Load();
} }
COption::RemoveOption($this->MODULE_ID, $this->CRM_CATALOG_BASE_PRICE);
if ($typeLoading == 'agent' || $typeLoading == 'cron') { if ($typeLoading == 'agent' || $typeLoading == 'cron') {
if (file_exists($_SERVER['DOCUMENT_ROOT'] . '/bitrix/php_interface/include/catalog_export/' . $this->RETAIL_CRM_EXPORT . '_run.php')) { if (file_exists($_SERVER['DOCUMENT_ROOT'] . '/bitrix/php_interface/include/catalog_export/' . $this->RETAIL_CRM_EXPORT . '_run.php')) {
$dbProfile = CCatalogExport::GetList(array(), array("FILE_NAME" => $this->RETAIL_CRM_EXPORT)); $dbProfile = CCatalogExport::GetList(array(), array("FILE_NAME" => $this->RETAIL_CRM_EXPORT));
@ -994,6 +996,13 @@ class intaro_retailcrm extends CModule
return; return;
} }
COption::SetOptionString(
$this->MODULE_ID,
$this->CRM_CATALOG_BASE_PRICE . '_' . $PROFILE_ID,
htmlspecialchars(trim($_POST['price-types']))
);
if ($typeLoading == 'agent') { if ($typeLoading == 'agent') {
$dateAgent = new DateTime(); $dateAgent = new DateTime();
$intAgent = new DateInterval('PT60S'); // PT60S - 60 sec; $intAgent = new DateInterval('PT60S'); // PT60S - 60 sec;

View File

@ -1,5 +1,5 @@
<? <?
$arModuleVersion = array( $arModuleVersion = array(
"VERSION" => "2.4.2", "VERSION" => "2.4.3",
"VERSION_DATE" => "2018-12-26 11:00:00" "VERSION_DATE" => "2019-01-15 17:00:00"
); );