CCrmInvoiceRecurringRestProxy::expose

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. CCrmInvoiceRecurringRestProxy
  4. expose
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/classes/general/restservice.php
  • Класс: \CCrmInvoiceRecurringRestProxy
  • Вызов: CCrmInvoiceRecurringRestProxy::expose
public function expose($ID)
{
	$ID = (int)$ID;
	if(!$this->checkEntityID($ID))
	{
		throw new RestException('ID is not defined or invalid.');
	}

	$errors = array();
	$fields = $this->innerGet($ID, $errors);
	if(!is_array($fields))
	{
		throw new RestException(implode("\n", $errors));
	}

	$userPermissions = CCrmPerms::GetCurrentUserPermissions();
	if (
		!CCrmInvoice::CheckReadPermission($fields['INVOICE_ID'], $userPermissions)
		|| !CCrmInvoice::CheckCreatePermission($userPermissions)
	)
	{
		throw new RestException(implode("\n", ['Access denied.']));
	}

	$invoiceRecurring = \Bitrix\Crm\Recurring\Entity\Invoice::getInstance();
	$result = $invoiceRecurring->expose(['=ID' => $ID], 1, false);
	if (!$result->isSuccess())
	{
		throw new RestException(implode("\n", $result->getErrorMessages()));
	}

	$exposeData = $result->getData();
	return ['INVOICE_ID' => $exposeData['ID'][0]];
}

Добавить комментарий