REST API: Сложные фильтры справочников: различия между версиями
Artem (обсуждение | вклад) Нет описания правки |
Artem (обсуждение | вклад) Нет описания правки |
||
| Строка 123: | Строка 123: | ||
!colspan="6"|Shopping List | !colspan="6"|Shopping List | ||
|- | |- | ||
|rowspan=" | |rowspan="3" | 1 | ||
|2 | |2 | ||
|3 | |3 | ||
Версия от 08:48, 16 января 2023
Сложные фильтры в REST API ПланФикса применяются в методе «/directory/{id}/entry/list» при получении записей справочников. Фильтры справочников задаются следующим набором параметров:
- type — числовой идентификатор фильтра.
- operator — оператор фильтра, одно из значений списка (equal, notequal, gt, lt). У разных фильтров могут быть разные допустимые операторы.
- value — значение фильтра, в зависимости от типа фильтра может быть строкой, числом или сложным объектом.
- field — идентификатор пользовательского поля аналитики, по которому выполняется фильтр.
Пример запроса получения списка записей справочника с передачей нескольких фильтров, по пользовательскому полю типа «Дата» и пользовательскому полю типа «Список сотрудников» (используется логика И):
{
"offset": 0,
"pageSize": 100,
"fields": "directory,parentKey,key,3,5",
"filters": [
{
"type": 6103,
"field": 3,
"operator": "equal",
"value": {
"dateType": "otherRange",
"dateFrom": "15-12-2022",
"dateTo": "17-12-2022"
}
},
{
"type": 6109,
"field": 5,
"operator": "equal",
"value": "user:50"
}
]
}
| Тип | Название | Операторы | Формат value |
|---|---|---|---|
| 6103 | Поле справочника типа Дата |
|
Объект :
"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",
}
|
| 6108 | Поле справочника типа Контакт | ||
| 6109 | Поле справочника типа Сотрудник | ||
| 6110 | Поле справочника типа Контрагент | ||
| 6112 | Поле справочника типа Группа, сотрудник, контакт | ||
| 6113 | Поле справочника типа Список сотрудников | ||
|
string - номер сотрудника/контакта/группы с префиксом.
Например: “user:1”, “contact:5”, “group:3” |
| Shopping List | |||||
|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | |
| 6 | 7 | 8 | 9 | ||
|2 || Ответственный
|-
|47 || Доступен пользователю
|-
|48 || Может редактироваться пользователем
|-
|4108 || Пользовательское поле типа Контакт
|-
|4109 || Пользовательское поле типа Сотрудник
|-
|4112 || Пользовательское поле типа Группа, сотрудник, контакт
|-
|4113 || Пользовательское поле типа Список сотрудников
|-
|4006 || Является компанией
| rowspan="8" |
- equal
| rowspan="8" | int - 1 boolean - true |- |4007 || Является контактом |- |4010 || С доступом в ПланФикс |- |4012 || Может быть участником задач |- |4017 || Не может быть участником задач |- |4013 || Может быть контрагентом задач |- |4018 || Не может быть контрагентом задач |- |4201 || Контрагент без активных задач |- |4202 || Не участвует в активных задачах |- |4203 || Контрагент с активными задачами |- |4204 || Участвует в активных задачах |- |4205 || Контрагент в просроченных задачах |- |4206 || Участвует в просроченных задачах |- |4001 || Имя или фамилия контакта / название компании | rowspan="13" |
- equal
- notequal
| rowspan="13" | string - осуществляется фильтр содержит / не содержит |- |4002 || Должность |- |4003 || Телефон |- |4004 || Адрес |- |4005 || Email |- |4221 || Дополнительный email |- |4014 || Имя контакта / Название компании |- |4015 || Фамилия контакта |- |4101 || Пользовательское поле типа Строка |- |4102 || Пользовательское поле типа Число |
- equal
- notequal
- gt
- lt
| int |- |4105 || Пользовательское поле типа Чек-бокс |
- equal
- notequal
| int - 1 / 0 boolean |- |4106 || Пользовательское поле типа Список |
- equal
- notequal
| string |- |4107 || Пользовательское поле типа Справочник |
- equal
- notequal
| int - идентификатор записи |- |4114 || Пользовательское поле типа Набор записей справочника |
- equal
- notequal
| int - идентификатор записи, для условия по нескольким записям — идентификаторы через ; (точку с запятой) |- |4111 || Пользовательское поле типа Набор значений |
- equal
- notequal
| string - значение, для условия по нескольким значениям - значения через ; (точку с запятой) |- |4008 || Группа контактов |
- equal
- notequal
| int - идентификатор группы, можно получить методом /contact/groups |- |4016 || Шаблон контакта |
- equal
- notequal
| int - номер шаблона, список шаблонов контактов можно получить методом /contact/templates |- |}