Skip to content

Instantly share code, notes, and snippets.

@VSeryoga
Created October 1, 2018 14:50
Show Gist options
  • Save VSeryoga/3dd84a72e72783e2dda4cf3ecc439421 to your computer and use it in GitHub Desktop.
Save VSeryoga/3dd84a72e72783e2dda4cf3ecc439421 to your computer and use it in GitHub Desktop.
Контакт, сделка, товары Битрикс24
<?
CModule::IncludeModule('crm');
//Контакт
$entity = new CCrmContact(false);
$address = '';
if($_REQUEST['user']['city']){
$address .= 'г. '.$_REQUEST['user']['city'].' ';
}
if($_REQUEST['user']['street']){
$address .= 'ул. '.$_REQUEST['user']['street'].' ';
}
if($_REQUEST['user']['house']){
$address .= 'д. '.$_REQUEST['user']['house'].' ';
}
if($_REQUEST['user']['korpus']){
$address .= 'корп. '.$_REQUEST['user']['korpus'].' ';
}
if($_REQUEST['user']['stroenie']){
$address .= 'стр. '.$_REQUEST['user']['stroenie'].' ';
}
if($_REQUEST['user']['ofis']){
$address .= 'кв. '.$_REQUEST['user']['ofis'].' ';
}
$fields = array('NAME' => $_REQUEST['user']['first_name'],
'SECOND_NAME' => $_REQUEST['user']['middle_name'],
'LAST_NAME' => $_REQUEST['user']['last_name'],
'FM' => array(
"PHONE" => array('n0' => array("VALUE" => $_REQUEST['user']['phone_1'], "VALUE_TYPE" => "WORK" )),
"EMAIL" => array('n0' =>array("VALUE" => $_REQUEST['user']['email'], "VALUE_TYPE" => "WORK" ))
),
'UF_CRM_59D4A6D71F696' => $address,
"ASSIGNED_BY_ID" => $ASSIGNED,
'TYPE_ID' => 'SUPPLIER'
);
$contact = $entity->add($fields);
if($contact > 0){
$entity = new CCrmDeal(false);
$fields = array('TITLE' => 'Заказ '.$_REQUEST['order']['id'],
"TYPE_ID" => "COMPLEX",
"STAGE_ID" => "C2:NEW",
"CONTACT_ID" => $contact,
"OPENED" => "Y",
"ASSIGNED_BY_ID" => $ASSIGNED,
'UF_CRM_1509094297' => 737,
'CATEGORY_ID' => 2,
'UF_CRM_59CBA50A97CA2' => $address,
'OPPORTUNITY' => $_REQUEST['order']['sum_total'],
'COMMENTS' => $_REQUEST['user']['comment'].' '.$_REQUEST['order']['pay'].' '.$_REQUEST['order']['delivery']
);
$deal = $entity->add($fields);
if($deal > 0){
$fieldsP = [];
foreach ($_REQUEST['products'] as $key => $value) {
$fieldsP[] = [
"PRODUCT_NAME" => $value['articul'].' '.$value['name'],
"QUANTITY" => $value['quantity'],
// "MEASURE_CODE" => 796,
// "MEASURE_NAME" => "шт",
"PRICE" => $value['price'],
// "PRICE_EXCLUSIVE" => "21.00",
// "PRICE_NETTO" => "21.00",
// "PRICE_BRUTTO" => "21.00",
// "DISCOUNT_TYPE_ID" => 2,
// "DISCOUNT_RATE" => "0.00",
// "DISCOUNT_SUM" => "0.00",
// "TAX_RATE" => "0.00",
// "TAX_INCLUDED" => "N",
// "CUSTOMIZED" => "Y",
// "SORT" => 10
];
}
$entity = new CCrmDeal();
$products = $entity->SaveProductRows($deal, $fieldsP);
}
CModule::IncludeModule('bizproc');
// CBPDocument::StartWorkflow(
// 99,
// array("crm","CCrmDocumentDeal", 'DEAL_'.$deal),
// array(),
// $arErrorsTmp
// );
CBPDocument::AutoStartWorkflows(
array("crm","CCrmDocumentDeal", 'DEAL'),
1,
array("crm","CCrmDocumentDeal", 'DEAL_'.$deal),
array(),
$arErrorsTmp
);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment