Beispiel #1
0
    }
    $stages = array_keys($arResult['STAGE_LIST']);
    if (!empty($stages)) {
        $arFields['~STAGE_ID'] = $stages[0];
        $arFields['STAGE_ID'] = htmlspecialcharsbx($arFields['~STAGE_ID']);
    }
    CCrmMobileHelper::PrepareDealItem($arFields, $arParams, array('STAGE_LIST' => $arResult['STAGE_LIST'], 'TYPE_LIST' => $arResult['TYPE_LIST']));
} else {
    $arResult['MODE'] = 'UPDATE';
    $dbFields = CCrmDeal::GetListEx(array(), array('ID' => $entityID));
    $arFields = $dbFields->GetNext();
    if (!$arFields) {
        ShowError(GetMessage('CRM_DEAL_EDIT_NOT_FOUND', array('#ID#' => $arParams['ENTITY_ID'])));
        return;
    }
    CCrmMobileHelper::PrepareDealItem($arFields, $arParams, array('STATUS_LIST' => $arResult['STATUS_LIST'], 'SOURCE_LIST' => $arResult['SOURCE_LIST']));
}
$currencyID = $arFields['~CURRENCY_ID'];
$arResult['ENTITY'] = $arFields;
unset($arFields);
$arResult['PRODUCT_ROWS'] = $entityID > 0 ? CCrmProductRow::LoadRows('D', $entityID) : array();
foreach ($arResult['PRODUCT_ROWS'] as &$productRow) {
    $price = isset($productRow['PRICE']) ? doubleval($productRow['PRICE']) : 0.0;
    $qty = isset($productRow['QUANTITY']) ? doubleval($productRow['QUANTITY']) : 0;
    $sum = $productRow['SUM'] = $price * $qty;
    $productRow['FORMATTED_PRICE'] = CCrmCurrency::MoneyToString($price, $currencyID);
    $productRow['FORMATTED_SUM'] = CCrmCurrency::MoneyToString($sum, $currencyID);
    $productRow['CURRENCY_ID'] = $currencyID;
}
unset($productRow);
$sid = bitrix_sessid();
Beispiel #2
0
    $stageID = isset($data['STAGE_ID']) ? $data['STAGE_ID'] : '';
    if ($stageID === '') {
        __CrmMobileDealEditEndResonse(array('ERROR' => GetMessage('CRM_DEAL_STAGE_NOT_FOUND')));
    }
    //$DB->StartTransaction();
    $fields = array('STAGE_ID' => $stageID);
    $entity = new CCrmDeal(false);
    $successed = $entity->Update($ID, $fields, true, true, array());
    if ($successed) {
        //$DB->Commit();
        $errors = array();
        CCrmBizProcHelper::AutoStartWorkflows(CCrmOwnerType::Deal, $ID, CCrmBizProcEventType::Edit, $errors);
        $dbRes = CCrmDeal::GetListEx(array(), array('=ID' => $ID, 'CHECK_PERMISSIONS' => 'N'));
        $currentItem = $dbRes->GetNext();
        $formatParams = isset($_REQUEST['FORMAT_PARAMS']) ? $_REQUEST['FORMAT_PARAMS'] : array();
        CCrmMobileHelper::PrepareDealItem($currentItem, $formatParams);
        __CrmMobileDealEditEndResonse(array('SAVED_ENTITY_ID' => $ID, 'SAVED_ENTITY_DATA' => CCrmMobileHelper::PrepareDealData($currentItem)));
    } else {
        //$DB->Rollback();
        __CrmMobileDealEditEndResonse(array('ERROR' => $fields['RESULT_MESSAGE']));
    }
} elseif ($action === 'CONVERT_MONEY') {
    __IncludeLang(dirname(__FILE__) . '/lang/' . LANGUAGE_ID . '/' . basename(__FILE__));
    $srcCurrencyID = isset($_REQUEST['SRC_CURRENCY_ID']) ? $_REQUEST['SRC_CURRENCY_ID'] : CCrmCurrency::GetBaseCurrencyID();
    $dstCurrencyID = isset($_REQUEST['DST_CURRENCY_ID']) ? $_REQUEST['DST_CURRENCY_ID'] : CCrmCurrency::GetBaseCurrencyID();
    $srcSum = isset($_REQUEST['SUM']) ? doubleval($_REQUEST['SUM']) : 0.0;
    $dstSum = CCrmCurrency::ConvertMoney($srcSum, $srcCurrencyID, $dstCurrencyID);
    __CrmMobileDealEditEndResonse(array('SUM' => $dstSum, 'CURRENCY_ID' => $dstCurrencyID, 'CURRENCY_NAME' => CCrmCurrency::GetCurrencyName($dstCurrencyID), 'FORMATTED_SUM' => CCrmCurrency::MoneyToString($dstSum, $dstCurrencyID)));
} else {
    __CrmMobileDealEditEndResonse(array('ERROR' => 'Action is not supported in current context.'));
}
Beispiel #3
0
$dbRes->NavStart($navParams['nPageSize'], false);
$arResult['PAGE_NAVNUM'] = intval($dbRes->NavNum);
// pager index
$arResult['PAGE_NUMBER'] = intval($dbRes->NavPageNomer);
// current page index
$arResult['PAGE_NAVCOUNT'] = intval($dbRes->NavPageCount);
// page count
$arResult['PAGER_PARAM'] = "PAGEN_{$arResult['PAGE_NAVNUM']}";
$arResult['PAGE_NEXT_NUMBER'] = $arResult['PAGE_NUMBER'] + 1;
/*if($arResult['PAGE_NEXT_NUMBER'] > $arResult['PAGE_NAVCOUNT'])
{
	$arResult['PAGE_NEXT_NUMBER'] = 1;
}*/
$arEnums = array('STAGE_LIST' => $arResult['STAGE_LIST'], 'TYPE_LIST' => $arResult['TYPE_LIST']);
while ($item = $dbRes->GetNext()) {
    CCrmMobileHelper::PrepareDealItem($item, $arParams, $arEnums);
    $arResult['ITEMS'][] =& $item;
    unset($item);
}
//NEXT_PAGE_URL, SEARCH_PAGE_URL, SERVICE_URL -->
if ($arResult['PAGE_NEXT_NUMBER'] > $arResult['PAGE_NAVCOUNT']) {
    $arResult['NEXT_PAGE_URL'] = '';
} elseif ($contactID > 0) {
    $arResult['NEXT_PAGE_URL'] = $APPLICATION->GetCurPageParam('AJAX_CALL=Y&PAGING=Y&FORMAT=json&contact_id=' . $contactID . '&' . $arResult['PAGER_PARAM'] . '=' . $arResult['PAGE_NEXT_NUMBER'], array('AJAX_CALL', 'PAGING', 'FORMAT', 'SEARCH', 'contact_id', 'company_id', $arResult['PAGER_PARAM']));
} elseif ($companyID > 0) {
    $arResult['NEXT_PAGE_URL'] = $APPLICATION->GetCurPageParam('AJAX_CALL=Y&PAGING=Y&FORMAT=json&company_id=' . $companyID . '&' . $arResult['PAGER_PARAM'] . '=' . $arResult['PAGE_NEXT_NUMBER'], array('AJAX_CALL', 'PAGING', 'FORMAT', 'SEARCH', 'contact_id', 'company_id', $arResult['PAGER_PARAM']));
} else {
    $arResult['NEXT_PAGE_URL'] = $APPLICATION->GetCurPageParam('AJAX_CALL=Y&PAGING=Y&FORMAT=json&SEARCH=' . ($enableSearch ? 'Y' : 'N') . '&' . $arResult['PAGER_PARAM'] . '=' . $arResult['PAGE_NEXT_NUMBER'], array('AJAX_CALL', 'PAGING', 'FORMAT', 'SEARCH', $arResult['PAGER_PARAM']));
}
$arResult['SEARCH_PAGE_URL'] = $APPLICATION->GetCurPageParam('AJAX_CALL=Y&SEARCH=Y&FORMAT=json&apply_filter=Y&save=Y', array('AJAX_CALL', 'SEARCH', 'FORMAT', 'save', 'apply_filter', 'clear_filter'));
$arResult['SERVICE_URL'] = $arParams["SERVICE_URL"] ? $arParams["SERVICE_URL"] : SITE_DIR . 'bitrix/components/bitrix/mobile.crm.deal.list/ajax.php?siteID=' . SITE_ID . '&' . bitrix_sessid_get();