Перейти к содержанию

BaseDocsResponseDto

Описание: Базовый класс для всех DTO ответов с пагинацией документов Предоставляет общую функциональность для пагинированных ответов API, включая навигацию по страницам и получение элементов коллекции. Этот абстрактный класс расширяет BaseResponseDto и добавляет специфичные для пагинации методы.

С версии: 1.0.0

Версия: 1.0.0

См. также:

  • \KinopoiskDev\Responses\Api\MovieDocsResponseDto:
  • \KinopoiskDev\Responses\Api\PersonDocsResponseDto:
  • \KinopoiskDev\Responses\BaseResponseDto:

__construct()

Описание: Конструктор для создания DTO пагинированного ответа Инициализирует все необходимые параметры пагинации со значениями по умолчанию. Все свойства являются для обеспечения неизменности данных.

С версии: 1.0.0

Параметры:

  • $total (int): Общее количество доступных документов в коллекции
  • $limit (int): Максимальное количество документов на одной странице
  • $page (int): Номер текущей страницы (начинается с 1)
  • $pages (int): Общее количество страниц в коллекции

getNextPage()

Описание: Возвращает номер следующей страницы Вычисляет номер следующей страницы на основе текущей позиции. Возвращает null, если текущая страница является последней.

С версии: 1.0.0

Возвращает: int|null Номер следующей страницы или null если следующей страницы нет

См. также:

  • hasNextPage: () Для проверки существования следующей страницы

hasNextPage()

Описание: Проверяет наличие следующей страницы Определяет, есть ли еще страницы после текущей на основе сравнения номера текущей страницы с общим количеством страниц.

С версии: 1.0.0

Возвращает: bool true если есть следующая страница, false в противном случае

См. также:

  • getNextPage: () Для получения номера следующей страницы

getPreviousPage()

Описание: Возвращает номер предыдущей страницы Вычисляет номер предыдущей страницы на основе текущей позиции. Возвращает null, если текущая страница является первой.

С версии: 1.0.0

Возвращает: int|null Номер предыдущей страницы или null если предыдущей страницы нет

См. также:

  • hasPreviousPage: () Для проверки существования предыдущей страницы

hasPreviousPage()

Описание: Проверяет наличие предыдущей страницы Определяет, есть ли страницы перед текущей на основе сравнения номера текущей страницы с единицей.

С версии: 1.0.0

Возвращает: bool true если есть предыдущая страница, false в противном случае

См. также:

  • getPreviousPage: () Для получения номера предыдущей страницы

getFirst()

Описание: Возвращает первый элемент коллекции Получает первый документ из массива docs текущей страницы. Возвращает null, если коллекция пуста.

С версии: 1.0.0

Возвращает: mixed Первый документ или null если коллекция пуста

См. также:

  • getLast: () Для получения последнего элемента
  • isEmpty: () Для проверки пустоты коллекции

getLast()

Описание: Возвращает последний элемент коллекции Получает последний документ из массива docs текущей страницы. Создает копию массива для избежания изменения свойства. Возвращает null, если коллекция пуста.

С версии: 1.0.0

Возвращает: mixed Последний документ или null если коллекция пуста

См. также:

  • getFirst: () Для получения первого элемента
  • isEmpty: () Для проверки пустоты коллекции

isEmpty()

Описание: Проверяет пустоту коллекции результатов Определяет, содержит ли текущая страница какие-либо документы.

С версии: 1.0.0

Возвращает: bool true если коллекция пуста, false в противном случае

См. также:

  • getCurrentPageCount: () Для получения точного количества элементов

getCurrentPageCount()

Описание: Возвращает количество результатов на текущей странице Подсчитывает фактическое количество документов в массиве docs для текущей страницы.

С версии: 1.0.0

Возвращает: int Количество документов на текущей странице

См. также:

  • isEmpty: () Для проверки пустоты коллекции

fromArray()

Описание: Создает экземпляр DTO из массива данных Фабричный метод для создания объекта DTO из ассоциативного массива, полученного из API ответа. Каждый дочерний класс должен реализовать этот метод в соответствии со своей структурой данных.

Создает экземпляр DTO из массива данных Фабричный метод для создания объекта DTO из ассоциативного массива, полученного из API ответа. Базовый метод, который должен быть переопределен в дочерних классах для правильной обработки типизированных документов.

Возвращает: static Экземпляр конкретного DTO класса

toArray()

Описание: Преобразует DTO в ассоциативный массив Метод для сериализации объекта DTO в массив, пригодный для передачи в JSON или другие форматы. Структура массива должна соответствовать формату API ответа.

Конвертирует объект в массив для сериализации Преобразует все свойства пагинации в ассоциативный массив, подходящий для JSON-сериализации или передачи в API.

С версии: 1.0.0

Возвращает: array Ассоциативный массив со всеми данными пагинации