- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/activity/entity/todo.php
- Класс: Bitrix\Crm\Activity\Entity\ToDo
- Вызов: ToDo::getInstanceByParams
static function getInstanceByParams(
ItemIdentifier $owner,
array $filter,
array $order = [],
array $options = []
): ?ToDo
{
$data = CCrmActivity::GetList(
$order,
$filter,
false,
false,
[
'ID',
'COMPLETED',
'DEADLINE',
'DESCRIPTION',
'SUBJECT',
'RESPONSIBLE_ID',
'ASSOCIATED_ENTITY_ID',
'AUTOCOMPLETE_RULE',
'STORAGE_ELEMENT_IDS',
'CALENDAR_EVENT_ID',
],
$options
)->Fetch();
if (!$data)
{
return null;
}
$todo = new self($owner);
$todo
->setId((int)$data['ID'])
->setDeadline(
($data['DEADLINE'] && !\CCrmDateTimeHelper::IsMaxDatabaseDate($data['DEADLINE']))
? DateTime::createFromUserTime($data['DEADLINE'])
: null
)
->setDescription($data['DESCRIPTION'])
->setSubject($data['SUBJECT'])
->setResponsibleId($data['RESPONSIBLE_ID'])
->setParentActivityId($data['ASSOCIATED_ENTITY_ID'] ?: null)
->setAutocompleteRule($data['AUTOCOMPLETE_RULE'] ?: null)
->setCompleted($data['COMPLETED'])
->setCalendarEventId($data['CALENDAR_EVENT_ID'])
->setStorageElementIds($data['STORAGE_ELEMENT_IDS'] ?: null)
;
return $todo;
}