Skip to content

Conversation

@Dangerwind
Copy link
Contributor

@Dangerwind Dangerwind commented Oct 29, 2025

Backend: Вебинары в админ панель #902

Контроллер добавляет админ‑страницу вебинаров с поиском и пагинацией, а также реализует CRUD‑операции (create/update/delete) с Inertia‑рендерингом и флеш‑сообщениями; доступ ограничён ролью ADMIN.

GET /admin/webinars
Поддерживает пагинацию (page, size, по умолчаний 10 записей на страницу, и 0 страница) и поиск (qwery параметр search) по части названия или части ссылок или дате (в формате: год (2000-2099), год-месяц, год-месяц-день, год-месяц-день часы:минуты)

Возвращает в пропсах:
Для навигации по полученным страницам: currentPage, totalPages, totalItems
страница с вебинарами: webinars
Структура вебинара:

  • Id вебинара - id
  • Название вебинара - webinarName;
  • Дата вебинара - webinarDate (формат год-месяц-день часы:минуты);
  • Ссылка на регистрацию - webinarRegLink;
  • Ссылка на запись - webinarRecordLink;
  • логические чекбокс - feature и publicated;
  • createdAt - дата-время создания
  • updatedAt - дата-время обновления (пример "2025-11-02T17:48:46.076144")

POST /admin/webinars/create
Добавляет вебинар, структура такая же
Пример:
{
"webinarName": "Webinar 004",
"webinarDate": "2004-04-04 10:30",
"webinarRegLink": "https://ddd0004.com/regiter/java-webinar",
"webinarRecordLink": "https://rrr0004.com/recrd/java-webinar",
"feature": true,
"publicated": false
}

PUT /admin/webinars/{id}/update
Изменение вебинара по id, структура такая же как и в POST/GET

DELETE /admin/webinars/{id}/delete
Удаление по id.

После всех операция редирект на /Admin/Webinars/Index
в GET передаются входящие flash сообщения в пропсах {"flash": ".... тут сообщение которе пришло в GET... "}.
POST/PUT/DELETE - формирует flash сообщения об успешной операции:
{"success" : "create.success"}
{"success" : "update.success"}
{"success" : "delete.success")

Никакой валидации нет!! Можно добавить пустой вебинар и потом дописать название или дату.
Или написать только название без даты и ссылок, если неизвестна дата или ссылки неизвестны, или наоборот написать ссылки и дату а название придумать потом.

Все покрыто тестами

@Dangerwind Dangerwind marked this pull request as draft October 29, 2025 15:52
@Dangerwind Dangerwind marked this pull request as ready for review November 2, 2025 15:00
@Dangerwind Dangerwind changed the title draft Backend: Вебинары в админ панель #902 Backend: Вебинары в админ панель #902 Nov 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant