- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/integration/documentgenerator/dataprovider/quote.php
- Класс: Bitrix\Crm\Integration\DocumentGenerator\DataProvider\Quote
- Вызов: Quote::getFields
public function getFields()
{
if($this->fields === null)
{
parent::getFields();
if (isset($this->fields['STATUS']))
{
$this->fields['STATUS']['TITLE'] = \CCrmLead::GetFieldCaption('STATUS_ID');
}
$factory = Container::getInstance()->getFactory(\CCrmOwnerType::Quote);
$factoryFieldsInfo = $factory ? $factory->getFieldsInfo() : [];
$this->fields['ID'] = ['TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_ID_TITLE'),];
$this->fields['TITLE'] = ['TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_TITLE_TITLE'),];
$this->fields['OPPORTUNITY'] = [
'TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_OPPORTUNITY_TITLE'),
'TYPE' => Money::class,
'FORMAT' => ['CURRENCY_ID' => $this->getCurrencyId()],
];
$this->fields['CURRENCY_ID'] = ['TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_CURRENCY_ID_TITLE'),];
$this->fields['LOCATION_ID'] = ['TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_LOCATION_ID_TITLE'),];
$this->fields['COMMENTS'] = ['TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_COMMENTS_TITLE'), 'TYPE' => static::FIELD_TYPE_TEXT];
$this->fields['BEGINDATE'] = [
'TITLE' => $factoryFieldsInfo['BEGINDATE']['TITLE'] ?? GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_BEGINDATE_TITLE_MSGVER_1'),
'TYPE' => DateTime::class,
];
$this->fields['CLOSEDATE'] = [
'TITLE' => $factoryFieldsInfo['CLOSEDATE']['TITLE'] ?? GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_CLOSEDATE_TITLE'),
'TYPE' => DateTime::class,
];
$this->fields['DATE_CREATE'] = ['TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_DATE_CREATE_TITLE'), 'TYPE' => DateTime::class];
$this->fields['DATE_MODIFY'] = ['TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_DATE_MODIFY_TITLE'), 'TYPE' => DateTime::class];
$this->fields['CONTENT'] = ['TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_CONTENT_TITLE'), 'TYPE' => static::FIELD_TYPE_TEXT];
$this->fields['TERMS'] = ['TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_TERM_TITLE'), 'TYPE' => static::FIELD_TYPE_TEXT];
$this->fields['DEAL'] = [
'PROVIDER' => Deal::class,
'VALUE' => 'DEAL_ID',
'TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_DEAL_TITLE'),
];
if (!$this->isLightMode())
{
$this->fields['CONTACTS'] = [
'TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_CONTACTS_TITLE'),
'PROVIDER' => ArrayDataProvider::class,
'OPTIONS' => [
'ITEM_PROVIDER' => Contact::class,
'ITEM_NAME' => 'CONTACT',
'ITEM_TITLE' => GetMessage('CRM_DOCGEN_DATAPROVIDER_QUOTE_CONTACT_TITLE'),
'ITEM_OPTIONS' => [
'DISABLE_MY_COMPANY' => true,
'isLightMode' => true,
],
],
'VALUE' => [$this, 'getContacts'],
];
}
}
return $this->fields;
}