Искать залоговые билеты с возможностью использования различных фильтров
POST   /bs-core/main/pawn-tickets/partial-load
Метод предназначен для поиска залоговых билетов с возможностью задавать набор полей в ответе, порядок сортировки элементов и различные фильтры.
Запрос
POST /bs-core/main/pawn-tickets/partial-load
{
"fields": [
"name",
"creationDate",
"donor.id",
"branch.id",
"subdivision.id",
"client.id",
"id",
"storingPlace.id"
],
"orderBy": "id",
"orderDirection": "ASC",
"orderByFields": [
{
"field": "creationDate"
},
{
"field": "name",
"direction": "desc"
}
],
"searchFields": [
{
"field": "creationDate",
"value": "not null"
},
{
"field": "id",
"value": "101342092",
"ornumber": "1"
},
{
"field": "storingPlace.id",
"value": "null",
"ornumber": "1"
}
],
"countFrom": 0,
"countTo": 10
}
Описание параметров
Параметр | Обязателен | Тип данных | Описание |
fields | О | [collection] | Коллекция полей, которые должны вернуться в результатах поиска. |
fields._.{fieldName} | О | [string][255] | В качестве элементов списка могут быть указаны любые поля из залогового билета, которые не являются внешними ключами. Например: "id", "creationDate" и так далее. Признаком внешнего ключа является указание в описание параметра на метод, который позволяет по ID (по значению параметра - получить объект). Пример: client.id. Для полей, которые являются внешними ключами - возможно получение любых полей объекта, ID которого указано в поле. Например: в объекте залоговый билет есть поле clientId, которое является внешним ключом. Это значит, что мы можем запросить любое поле объекта клиент: client.id, client.lastName и так далее. |
orderBy | О | [string][255] | Название поля, по которому надо делать сортировку. С релиза 2.0.0-65 для сортировки следует использовать коллецию orderByFields. |
orderDirection | О | [enum] | Направление сортировки результатов поиска
С релиза 2.0.0-65 для направления сортировки следует передавать направление в коллекции orderByFields. |
orderByFields | О | [collection] | Массив полей, по которым происходит сортировка. "orderByFields": [ В этом примере сортировка происходит по полям id и creationDate. Также результат сортируется по убыванию. Для направления сортировки используется параметр creationDate. Если поле direction не указан, то сортировка по полю выполняется по возрастанию. Если в запросе на ядро переданы оба способа сортировки, то старый способ задания сортировки игнорируется. Эти изменения действуют с релиза 2.0.0-65. Смотрите также описание параметров orderBy и orderDirection. |
searchFields | О | [collection] | Условия поиска (фильтрации) залогового билета, наличие параметра searchFields является не обязательным, однако строго рекомендуется задавать параметры фильтрации. |
searchFields._.field | О | [string][255] | Название поля, по которому нужно сделать фильтрацию. Правила формирования этого поля следующие: В качестве элементов списка могут быть указаны любые поля из сущности залоговый билет, которые не являются внешними ключами. Например: "name", "creationDate" и так далее. Признаком внешнего ключа является указание в описание параметра на метод, который позволяет по ID (по значению параметра - получить объект). Пример: clientId. Для полей, которые являются внешними ключами - возможно получение любых полей объекта, ID котрого указано в поле. Например: в объекте залоговый билет есть поле clientId, которое является внешним ключом. Это значит, что мы можем запросить любое поле объекта клиент: client.id, client.lastName и так далее. |
searchFields._.value | О | [string][255] | В значении параметра может указывается как точное значение, так и нет. Для значений не полного соответствия используются различные параметры. Для указания значений этого параметра можно использовать следующие операторы: %, like, !=, null, not null, >, <, >=, <=. Для передачи даты используется следующий формат YYYY-MM-DD (действует с 2.0.0-65 релиза) например 2018-05-25, а для передачи даты и времени YYYY-MM-DD hh:mm:ss (например 2018-05-25 12:22:35). Пример: { Так и условия строгого и нестрогого неравенства, например: { { |
searchFields._.ornumber | О | [string][255] | Параметр для группировки значений поиска (фильтрации) в условии OR. Пример 1: { { { Пример 2 (используют не все значения характерные для объекта "залоговый билет"): { { { { В выражении языка SQL : (name like "1%" OR name like "5%" ) AND (loanAmount = 10000 OR loanAmount = 20000) |
countFrom | О | [int] | Смещение от начала поиска, т.е. если хотим получить с 10-ой записи, то передаем 10. |
resultsQty | О | [int] | Количество возвращаемых записей |
Ответ
{
"status": "ok",
"timestamp": 1537531842768,
"data": [
{
"id": 101342092,
"fields": {
"name": "Залоговый билет на залог супер квартиру",
"creationDate": "2018-09-10",
"donor.id": null,
"branch.id": 101301,
"subdivision.id": null,
"client.id": 101322764,
"id": 101342092,
"storingPlace.id": null
}
},
{
"id": 101342087,
"fields": {
"name": "Залоговый билет на залог 101744",
"creationDate": "2018-09-10",
"donor.id": null,
"branch.id": 101301,
"subdivision.id": null,
"client.id": 101322764,
"id": 101342087,
"storingPlace.id": null
}
}
]
}