REST API: Сложные фильтры сотрудников
Материал из Planfix
Сложные фильтры в REST API ПланФикса применяются в методе «/user/list» при получении списка сотрудников. Фильтры сотрудников задаются следующим набором параметров:
- type — числовой идентификатор фильтра.
- operator — оператор фильтра, одно из значений списка (equal, notequal, gt, lt). У разных фильтров могут быть разные допустимые операторы.
- value — значение фильтра, в зависимости от типа фильтра может быть строкой, числом или сложным объектом.
- field — идентификатор пользовательского поля справочника, по которому выполняется фильтр.
Пример запроса получения списка сотрудников с передачей нескольких фильтров по пользовательскому полю типа «Дата» и пользовательскому полю типа «Сотрудник» (используется логика И):
{ "offset": 0, "pageSize": 100, "fields": "id,name,description,3,5", "filters": [ { "type": 5103, "field": 3, "operator": "equal", "value": { "dateType": "otherRange", "dateFrom": "15-12-2022", "dateTo": "17-12-2022" } }, { "type": 5109, "field": 5, "operator": "equal", "value": "user:50" } ] }
Тип | Название | Операторы | Формат value |
---|---|---|---|
9103 | Поле сотрудника типа Дата |
|
Объект : "value": { "dateType": string, "dateValue": string, "dateFrom": string, "dateTo": string }
Даты считаются переданными в часовом поясе сотрудника, от имени которого сделан запрос. Примеры: "value": { "dateType": "thisWeek" } "value": { "dateType": "otherRange", "dateFrom": "01-12-2022", "dateTo": "06-12-2022" } "value": { "dateType": "otherDate_withTime", "dateFrom": "30-12-2022 12:00", } |
9120 | Дата рождения сотрудника | ||
9108 | Поле сотрудника типа Контакт |
|
string - номер сотрудника/контакта/группы с префиксом.
Например: “user:1”, “contact:5”, “group:3” |
9109 | Поле сотрудника типа Сотрудник | ||
9110 | Поле сотрудника типа Контрагент | ||
9112 | Поле сотрудника типа Группа, сотрудник, контакт | ||
9113 | Поле сотрудника типа Список сотрудников | ||
9006 | ФИО сотрудника (поиск может выполняется по части ФИО) |
|
string - осуществляется фильтр содержит / не содержит |
9121 | Имя сотрудника | ||
9122 | Отчество сотрудника | ||
9123 | Фамилия сотрудника | ||
9101 | Поле сотрудника типа Строка | ||
9008 | Номер сотрудника |
|
int |
9102 | Поле сотрудника типа Число | ||
9105 | Поле сотрудника типа Чекбокс |
|
int - 1/0 boolean |
9106 | Поле сотрудника типа Список |
|
string |
9107 | Поле сотрудника типа Запись справочника |
|
int - идентификатор записи |
9115 | Поле сотрудника типа Задача |
|
int — номер задачи |
9117 | Поле сотрудника типа Проект |
|
int — номер проекта |
9001 | Группа сотрудников |
|
int — идентификатор группы |
9002 | Номер телефона сотрудника |
|
int — номер проекта |
9004 | Короткий номер сотрудника | ||
9003 | Внешний email сотрудника | ||
9005 | Должность сотрудника |
|
string - название должности |