Класс: AbstractRepository¶
Краткое содержание:¶
Базовый Cycle ORM-репозиторий с фильтрацией, пагинацией и метаданными колонок.
Свойства¶
Нет публичных свойств.
Методы¶
- public getFirst()
- public getLast()
- public limit()
- public total()
- public findFiltered()
- public distinctColumnValues()
- public columnBounds()
- public deleteEntity()
- public deleteByColumn()
- protected applyCriteria()
- protected applyBetween()
- protected extractColumnValue()
- protected stringifyColumnValue()
Подробности¶
- Путь:
devcraft/src/classes/Abstracts/AbstractRepository.php
Детали¶
Методы¶
getFirst()¶
Возвращает самую раннюю запись по дате создания.
С версии: 200.4.0
Возвращает: object|null — Первая сущность или null, если таблица пуста.
getLast()¶
Возвращает самую позднюю запись по дате создания.
С версии: 200.4.0
Возвращает: object|null — Последняя сущность или null, если таблица пуста.
limit()¶
Возвращает ограниченный набор записей с заданным смещением.
С версии: 200.4.0
Параметры: - $total — Количество записей. - $start — Смещение от начала выборки.
Возвращает: array<int, — object> Список сущностей.
total()¶
Возвращает общее количество записей в таблице сущности.
С версии: 200.4.0
Возвращает: int — Число строк.
findFiltered()¶
Выполняет фильтрованную выборку с пагинацией и сортировкой.
С версии: 200.4.0
Параметры: - $page — Номер страницы (начиная с 1). - $perPage — Записей на странице. - $order — Колонка сортировки. - $sort — Направление (asc или desc). - $allowedOrderColumns — Допустимые колонки сортировки. - $defaultOrder — Колонка сортировки по умолчанию.
Возвращает: array{items: object[], total: int} — Элементы текущей страницы и общее количество.
distinctColumnValues()¶
Возвращает уникальные значения указанной колонки для выпадающих фильтров.
С версии: 200.4.0
Параметры: - $column — Имя колонки в таблице сущности.
Возвращает: list<string> — Отсортированный список уникальных строковых значений.
columnBounds()¶
Возвращает минимальное и максимальное значение колонки для диапазонных фильтров.
С версии: 200.4.0
Параметры: - $column — Имя колонки в таблице сущности.
Возвращает: array{min: mixed, max: mixed} — Границы диапазона или null при отсутствии данных.
deleteEntity()¶
Удаляет сущность из базы данных.
С версии: 200.4.0
Параметры: - $entity — Экземпляр сущности для удаления.
Возвращает: bool — Всегда true при успешном вызове менеджера ORM.
deleteByColumn()¶
Удаляет первую запись, соответствующую значению колонки.
С версии: 200.4.0
Параметры: - $column — Имя колонки для поиска. - $value — Значение для сравнения.
Возвращает: bool — true, если запись найдена и удалена; иначе false.
applyCriteria()¶
Применяет список критериев фильтрации к объекту выборки Cycle ORM.
С версии: 200.4.0
Параметры: - $select — Объект выборки Cycle ORM.
applyBetween()¶
Добавляет условие диапазона between к выборке.
С версии: 200.4.0
Параметры: - $select — Объект выборки Cycle ORM. - $column — Имя колонки.
extractColumnValue()¶
Извлекает строковое значение колонки из строки результата выборки.
С версии: 200.4.0
Параметры: - $row — Строка результата (сущность, массив или объект). - $column — Имя колонки.
Возвращает: string — Строковое представление значения или пустая строка.
stringifyColumnValue()¶
Преобразует значение колонки в строку для фильтров и отображения.
С версии: 200.4.0
Параметры: - $value — Исходное значение.
Возвращает: string — Строковое представление.