Skip to content

Latest commit

 

History

History
236 lines (194 loc) · 8.49 KB

catalog-rounding-rule-list.md

File metadata and controls

236 lines (194 loc) · 8.49 KB

Получить список правил округления цен по фильтру catalog.roundingRule.list

Scope: catalog

Кто может выполнять метод: администратор

Метод возвращает список правил округления цен.

Параметры метода

#| || Название тип | Описание || || select array| Массив со списком полей, которые необходимо выбрать (смотрите поля объекта catalog_rounding_rule).

Если массив не передан или же передан пустой массив, то будут выбраны все доступные поля правила округления цен || || filter object| Объект для фильтрации выбранных правил округления цен в формате {"field_1": "value_1", ..., "field_N": "value_N"}.

Возможные значения для field соответствуют полям объекта catalog_rounding_rule.

Ключу можно задать дополнительный префикс, уточняющий поведение фильтра. Возможные значения префикса:

  • >= — больше либо равно
  • > — больше
  • <= — меньше либо равно
  • < — меньше
  • @ — IN, в качестве значения передается массив
  • !@ — NOT IN, в качестве значения передается массив
  • % — LIKE, поиск по подстроке. Символ % в значении фильтра передавать не нужно. Поиск ищет подстроку в любой позиции строки
  • =% — LIKE, поиск по подстроке. Символ % нужно передавать в значении. Примеры:
    • "мол%" — ищет значения, начинающиеся с «мол»
    • "%мол" — ищет значения, заканчивающиеся на «мол»
    • "%мол%" — ищет значения, где «мол» может быть в любой позиции
  • %= — LIKE (аналогично =%)
  • !% — NOT LIKE, поиск по подстроке. Символ % в значении фильтра передавать не нужно. Поиск идет с обеих сторон
  • !=% — NOT LIKE, поиск по подстроке. Символ % нужно передавать в значении. Примеры:
    • "мол%" — ищет значения, не начинающиеся с «мол»
    • "%мол" — ищет значения, не заканчивающиеся на «мол»
    • "%мол%" — ищет значения, где подстроки «мол» нет в любой позиции
  • !%= — NOT LIKE (аналогично !=%)
  • = — равно, точное совпадение (используется по умолчанию)
  • != — не равно
  • ! — не равно || || order object| Объект для сортировки выбранных правил округления цен в формате {"field_1": "order_1", ... "field_N": "order_N"}.

Возможные значения для field соответствуют полям объекта catalog_rounding_rule.

Возможные значения для order:

  • asc — в порядке возрастания
  • desc — в порядке убывания || || start integer| Параметр используется для управления постраничной навигацией.

Размер страницы результатов всегда статичный — 50 записей.

Чтобы выбрать вторую страницу результатов, передайте значение 50. Чтобы выбрать третью страницу результатов — значение 100 и так далее.

Формула расчета значения параметра start:

start = (N-1) * 50, где N — номер нужной страницы || |#

Примеры кода

{% include Сноска о примерах %}

{% list tabs %}

  • cURL (Webhook)

    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"select":["id","price","roundType"],"filter":{"modifiedBy":1},"order":{"id":"ASC"}}' \
    https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webbhook_here**/catalog.roundingrule.list
  • cURL (OAuth)

    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"select":["id","price","roundType"],"filter":{"modifiedBy":1},"order":{"id":"ASC"},"auth":"**put_access_token_here**"}' \
    https://**put_your_bitrix24_address**/rest/catalog.roundingrule.list
  • JS

    BX24.callMethod(
        'catalog.roundingrule.list',
        {
            select:[
                'id',
                'price',
                'roundType'
            ],
            filter:{
                'modifiedBy': 1
            },
            order:{
                'id': 'ASC'
            }
        },
        function(result)
        {
            if(result.error())
                console.error(result.error());
            else
                console.log(result.data());
            result.next();
        }
    );
  • PHP

    require_once('crest.php');
    
    $result = CRest::call(
        'catalog.roundingrule.list',
        [
            'select' => [
                'id',
                'price',
                'roundType'
            ],
            'filter' => [
                'modifiedBy' => 1
            ],
            'order' => [
                'id' => 'ASC'
            ]
        ]
    );
    
    echo '<PRE>';
    print_r($result);
    echo '</PRE>';

{% endlist %}

Обработка ответа

HTTP-статус: 200

{
    "roundingRules": [
        {
            "id": 1,
            "price": 1500,
            "roundType": 2
        },
        {
            "id": 2,
            "price": 1000,
            "roundType": 4
        },
        {
            "id": 4,
            "price": 50,
            "roundType": 1
        }
    ],
    "total": 3,
    "time": {
        "start": 1712326352.63409,
        "finish": 1712326352.8319,
        "duration": 0.197818040847778,
        "processing": 0.00833678245544434,
        "date_start": "2024-04-05T16:24:46+02:00",
        "date_finish": "2024-04-05T16:24:46+02:00",
        "operating": 0
    }
}

Возвращаемые данные

#| || Название тип | Описание || || result object | Корневой элемент ответа || || roundingRules catalog_rounding_rule[] | Массив объектов с информацией о выбранных правилах округления цен || || total integer | Общее количество найденных записей || || time time | Информация о времени выполнения запроса || |#

Обработка ошибок

HTTP-статус: 400

{
    "error": 200040300010,
    "error_description": "Access Denied"
}

{% include notitle обработка ошибок %}

Возможные коды ошибок

#| || Код | Описание || || 200040300010 | Недостаточно прав для чтения || || 0 | Другие ошибки (например, фатальные ошибки) || |#

{% include системные ошибки %}

Продолжите изучение