Включается после первого запроса в backend на получение записей
В полученном ответе у всех записей должен быть параметр deleted_at
Cодержит дату и время удаления данной записи, если запись не удалено, то null
Для включения таймера окончательного удаления каждый запроса в backend на получение записей должен возвращать параметр dateForcedDelete
содержит дату и время окончательного удаления.
После того как deleted_at
≥dateForcedDelete
то запись должна удалиться, счетчик доходит до 0д. 0ч. 0м.
GET: '/admin/post'
RESPONSE: [
'dateForcedDelete' => '2022-12-04T20:48:28.171860Z',
'paginate' => [
'data' => [
[
'id' => 1,
'name' => 'Тестовая запись 1',
'deleted_at' => '2022-12-16T13:54:20.000000Z'
],
[
'id' => 2,
'name' => 'Тестовая запись 2',
'deleted_at' => null
]
...
]
...
],
...
]
Если в разделе включено мягкое удаление, то появляются настройки отображения записей
При переключении настроек в backend уходит запрос на получение записей с определенным параметром
// Активные + удаленные
GET: '/admin/post'
// Только активные
GET: '/admin/post?withTrashed=0'
// Активные удаленные
GET: '/admin/post?onlyTrashed=1'
По нажатию на кнопку удаления отправляется запрос в backend с параметром delete_id
содержащий id записи или несколько id через запятую, ответ должен возвращать при успехе: 'success' => true
, при ошибке: 'error' => 'текст'
// Пример 1: Запрос на удаление 1 запися
GET: '/admin/post?delete_id=23'
// Успешно
RESPONSE: [
'success' => true
]
// Пример 2: Запрос на удаление 2 записей
GET: '/admin/post?delete_id=23,24'
// Успешно
RESPONSE: [
'success' => true
]
По нажатию на кнопку Восстановить
отправляется запрос в backend с параметром restore_id
содержащий id записи, ответ должен возвращать при успехе: 'success' => true
, при ошибке: 'error' => 'Запись не найдена'
// Пример 1: Запрос на восстановление записи
GET: '/admin/post?restore_id=23'
// Успешно
RESPONSE: [
'success' => true
]
// Пример 2: Запрос на восстановление записи
GET: '/admin/post?restore_id=99999'
// Ошибка
RESPONSE: [
'error' => 'Запись не найдена'
]