REST API: Сложные фильтры сотрудников: различия между версиями
Материал из Planfix
Artem (обсуждение | вклад) Нет описания правки |
Artem (обсуждение | вклад) Нет описания правки |
||
Строка 64: | Строка 64: | ||
dateType принимает следующие значения: | dateType принимает следующие значения: | ||
*today | *today — сегодня | ||
*yesterday | *yesterday — вчера | ||
*tomorrow | *tomorrow — завтра | ||
*thisWeek | *thisWeek — текущая неделя | ||
*lastWeek | *lastWeek | ||
*nextWeek | *nextWeek | ||
Строка 73: | Строка 73: | ||
*lastMonth | *lastMonth | ||
*nextMonth | *nextMonth | ||
*last | *last — последние n дней, n передается в dateValue | ||
*next | *next — следующие n дней, n передается в dateValue | ||
*in | *in — через n дней, n передается в dateValue | ||
*otherDate | *otherDate — точная дата, дата передается в формате дд-мм-гггг в dateFrom | ||
*otherRange | *otherRange — точный период, даты передаются в формате дд-мм-гггг в dateFrom и dateTo | ||
*otherDate_withTime | *otherDate_withTime — точная дата-время, дата передается в формате "дд-мм-гггг чч:мм" в dateFrom | ||
*otherRange_withTime | *otherRange_withTime — точный период с заданным временем, даты передаются в формате "дд-мм-гггг чч:мм" в dateFrom и dateTo | ||
Даты считаются переданными в часовом поясе сотрудника, от имени которого сделан запрос. | Даты считаются переданными в часовом поясе сотрудника, от имени которого сделан запрос. |
Версия от 09:29, 17 марта 2023
Сложные фильтры в 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 | Номер телефона сотрудника |
|
string — осуществляется фильтр содержит / не содержит |
9004 | Короткий номер сотрудника | ||
9003 | Внешний email сотрудника | ||
9005 | Должность сотрудника |
|
string — название должности |