Задать вопрос
Ramapriya
@Ramapriya

Как в DealTable::getList включить проверку прав CRM?

Добрый день!

Делаю вывод сделок пользователя с помощью Bitrix\Crm\DealTable::getList()

Выявилась проблема - пользователи видят сделки, которые видеть не должны.
Помнится, в CCrmDealList проверка прав и ролей была автоматическая.
Есть ли в D7 нечто подобное?
  • Вопрос задан
  • 1822 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
gromdron
@gromdron Куратор тега Битрикс24
Работаю с Bitrix24
Вы неверно трактуете исходную точку.

DataMapper'ы это низкоуровневая прослойка между данными и вашим кодом. Там не должно быть никакой проверки прав и соответственно ее там нет.

Для получения списка сделок с правами и сохранением обратной совместимости вы обязаны использовать методы:
CCrmDeal::GetList($arOrder = Array('DATE_CREATE' => 'DESC'), $arFilter = Array(), $arSelect = Array(), $nPageTop = false)
CCrmDeal::GetListEx($arOrder = array(), $arFilter = array(), $arGroupBy = false, $arNavStartParams = false, $arSelectFields = array(), $arOptions = array())


Официально нового API (как принято говорить D7) для CRM нет.
Ответ написан
Комментировать
Если уж очень надо, тро вы можете перекрыть метод GetList для класса DealTable, и вставить дута штатную проверку прав доступа.

Подробно описал здесь https://aclips.ru/bitrix-override-classes/
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы