feat: Оптимизация навигации AdminJS в логические группы

- Объединены ресурсы в 5 логических групп: Контент сайта, Бронирования, Отзывы и рейтинги, Персонал и гиды, Администрирование
- Удалены дублирующие настройки navigation для чистой группировки
- Добавлены CSS стили для визуального отображения иерархии с отступами
- Добавлены эмодзи-иконки для каждого типа ресурсов через CSS
- Улучшена навигация с правильной вложенностью элементов
This commit is contained in:
2025-11-30 21:57:58 +09:00
parent 1e7d7c06eb
commit 13c752b93a
47 changed files with 14148 additions and 61 deletions

View File

@@ -0,0 +1,22 @@
-- Создание новой таблицы для конкретных рабочих дней гидов
CREATE TABLE IF NOT EXISTS guide_working_days (
id SERIAL PRIMARY KEY,
guide_id INTEGER NOT NULL REFERENCES guides(id) ON DELETE CASCADE,
work_date DATE NOT NULL,
notes TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-- Уникальный индекс для предотвращения дублирования
UNIQUE(guide_id, work_date)
);
-- Индексы для оптимизации запросов
CREATE INDEX IF NOT EXISTS idx_guide_working_days_guide_id ON guide_working_days(guide_id);
CREATE INDEX IF NOT EXISTS idx_guide_working_days_work_date ON guide_working_days(work_date);
CREATE INDEX IF NOT EXISTS idx_guide_working_days_date_range ON guide_working_days(guide_id, work_date);
-- Комментарии
COMMENT ON TABLE guide_working_days IS 'Конкретные рабочие дни гидов';
COMMENT ON COLUMN guide_working_days.guide_id IS 'ID гида';
COMMENT ON COLUMN guide_working_days.work_date IS 'Дата рабочего дня';
COMMENT ON COLUMN guide_working_days.notes IS 'Дополнительные заметки о рабочем дне';