fio parsing fix
This commit is contained in:
parent
be7d3d76cd
commit
f29c0f62a4
@ -538,6 +538,7 @@ class ICrmOrderActions
|
|||||||
|
|
||||||
$resOrder = array();
|
$resOrder = array();
|
||||||
$resOrderDeliveryAddress = array();
|
$resOrderDeliveryAddress = array();
|
||||||
|
$contactNameArr = array();
|
||||||
|
|
||||||
$rsOrderProps = CSaleOrderPropsValue::GetList(array(), array('ORDER_ID' => $arFields['ID']));
|
$rsOrderProps = CSaleOrderPropsValue::GetList(array(), array('ORDER_ID' => $arFields['ID']));
|
||||||
while ($ar = $rsOrderProps->Fetch()) {
|
while ($ar = $rsOrderProps->Fetch()) {
|
||||||
@ -553,7 +554,7 @@ class ICrmOrderActions
|
|||||||
$resOrderDeliveryAddress['city'] = self::toJSON($resOrderDeliveryAddress['city']['CITY_NAME_LANG']);
|
$resOrderDeliveryAddress['city'] = self::toJSON($resOrderDeliveryAddress['city']['CITY_NAME_LANG']);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'FIO': $resOrder['contactName'] = explode(" ", self::toJSON($ar['VALUE']));
|
case 'FIO': $contactNameArr = self::explodeFIO($ar['VALUE']);
|
||||||
break;
|
break;
|
||||||
case 'PHONE': $resOrder['phone'] = $ar['VALUE'];
|
case 'PHONE': $resOrder['phone'] = $ar['VALUE'];
|
||||||
break;
|
break;
|
||||||
@ -592,10 +593,7 @@ class ICrmOrderActions
|
|||||||
$createdAt = new \DateTime($arFields['DATE_INSERT']);
|
$createdAt = new \DateTime($arFields['DATE_INSERT']);
|
||||||
$createdAt = $createdAt->format('Y-m-d H:i:s');
|
$createdAt = $createdAt->format('Y-m-d H:i:s');
|
||||||
|
|
||||||
$resOrder = self::clearArr(array(
|
$resOrder = array(
|
||||||
'lastName' => $resOrder['contactName'][0],
|
|
||||||
'firstName' => $resOrder['contactName'][1],
|
|
||||||
'patronymic' => $resOrder['contactName'][2],
|
|
||||||
'phone' => $resOrder['phone'],
|
'phone' => $resOrder['phone'],
|
||||||
'email' => $resOrder['email'],
|
'email' => $resOrder['email'],
|
||||||
'deliveryCost' => $arFields['PRICE_DELIVERY'],
|
'deliveryCost' => $arFields['PRICE_DELIVERY'],
|
||||||
@ -612,7 +610,16 @@ class ICrmOrderActions
|
|||||||
'createdAt' => $createdAt,
|
'createdAt' => $createdAt,
|
||||||
'deliveryAddress' => $resOrderDeliveryAddress,
|
'deliveryAddress' => $resOrderDeliveryAddress,
|
||||||
'items' => $items
|
'items' => $items
|
||||||
));
|
);
|
||||||
|
|
||||||
|
// parse fio
|
||||||
|
if(count($contactNameArr) == 1) {
|
||||||
|
$resOrder['firstName'] = $contactNameArr[0];
|
||||||
|
} else {
|
||||||
|
$resOrder['lastName'] = $contactNameArr['contactName'][0];
|
||||||
|
$resOrder['firstName'] = $contactNameArr['contactName'][1];
|
||||||
|
$resOrder['patronymic'] = $contactNameArr['contactName'][2];
|
||||||
|
}
|
||||||
|
|
||||||
if(isset($arParams['optionsSites']) && is_array($arParams['optionsSites'])
|
if(isset($arParams['optionsSites']) && is_array($arParams['optionsSites'])
|
||||||
&& in_array($arFields['LID'], $arParams['optionsSites']))
|
&& in_array($arFields['LID'], $arParams['optionsSites']))
|
||||||
@ -672,4 +679,17 @@ class ICrmOrderActions
|
|||||||
|
|
||||||
return $APPLICATION->ConvertCharset($str, 'utf-8', SITE_CHARSET);
|
return $APPLICATION->ConvertCharset($str, 'utf-8', SITE_CHARSET);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function expodeFIO($str) {
|
||||||
|
if(!$str)
|
||||||
|
return array();
|
||||||
|
|
||||||
|
$array = expolde(" ", ICrmOrderActions::toJSON($str), 3);
|
||||||
|
|
||||||
|
foreach($array as &$ar)
|
||||||
|
if(!$ar)
|
||||||
|
unset($ar);
|
||||||
|
|
||||||
|
return $array;
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user