feat: Оптимизация навигации AdminJS в логические группы
- Объединены ресурсы в 5 логических групп: Контент сайта, Бронирования, Отзывы и рейтинги, Персонал и гиды, Администрирование - Удалены дублирующие настройки navigation для чистой группировки - Добавлены CSS стили для визуального отображения иерархии с отступами - Добавлены эмодзи-иконки для каждого типа ресурсов через CSS - Улучшена навигация с правильной вложенностью элементов
This commit is contained in:
117
docs/SCHEDULE_MANAGER.md
Normal file
117
docs/SCHEDULE_MANAGER.md
Normal file
@@ -0,0 +1,117 @@
|
||||
# Планировщик рабочих смен гидов
|
||||
|
||||
Новый инструмент для управления расписанием работы гидов в туристическом агентстве.
|
||||
|
||||
## 🚀 Основные возможности
|
||||
|
||||
### ✅ Выбор гидов
|
||||
- Множественный выбор гидов чекбоксами
|
||||
- Кнопки "Выбрать всех" / "Очистить выбор"
|
||||
- Отображение специализации каждого гида
|
||||
|
||||
### 📅 Планирование смен
|
||||
- Календарный интерфейс на месяц
|
||||
- Клик по дню для добавления/удаления смены
|
||||
- Визуальные индикаторы занятости
|
||||
- Поддержка множественного выбора гидов
|
||||
|
||||
### ⚡ Быстрые действия
|
||||
- **Отметить будни** - автоматическое планирование пн-пт
|
||||
- **Отметить выходные** - планирование суббота-воскресенье
|
||||
- **Весь месяц** - отметить все дни месяца
|
||||
- **Очистить месяц** - удалить все смены месяца
|
||||
|
||||
### 🔄 Копирование между месяцами
|
||||
- **Скопировать из прошлого месяца** - копирует структуру предыдущего месяца
|
||||
- **Скопировать в следующий месяц** - применяет текущее расписание на следующий месяц
|
||||
|
||||
## 🎯 Как использовать
|
||||
|
||||
### 1. Доступ к планировщику
|
||||
- Войти в админку: `/admin`
|
||||
- Перейти в "Планировщик смен" на главной панели
|
||||
- Или напрямую: `/admin/schedule-manager`
|
||||
|
||||
### 2. Выбор гидов
|
||||
1. В левой панели выбрать нужных гидов чекбоксами
|
||||
2. Использовать быстрые кнопки для выбора всех/очистки
|
||||
|
||||
### 3. Планирование смен
|
||||
1. В календаре кликнуть на нужную дату
|
||||
2. Если выбрано несколько гидов - смена добавится для всех
|
||||
3. Повторный клик уберет смену
|
||||
|
||||
### 4. Быстрое планирование
|
||||
- Кнопки быстрых действий применяются ко всем выбранным гидам
|
||||
- "Отметить будни" - только пн-пт
|
||||
- "Отметить выходные" - сб-вс
|
||||
- "Весь месяц" - все дни
|
||||
|
||||
### 5. Копирование расписания
|
||||
- "Скопировать из прошлого месяца" - берет структуру предыдущего месяца
|
||||
- "Скопировать в следующий месяц" - сохраняет и копирует в следующий
|
||||
|
||||
### 6. Сохранение изменений
|
||||
- Кнопка "Сохранить изменения" сохраняет все планы на месяц
|
||||
- Автоматическое сохранение при копировании между месяцами
|
||||
|
||||
## 📊 Статистика
|
||||
|
||||
В нижней части отображается:
|
||||
- **Всего гидов** - общее количество гидов
|
||||
- **Активных гидов** - количество гидов с назначенными сменами
|
||||
- **Ср. дней/гид** - среднее количество рабочих дней на гида
|
||||
- **Покрытие месяца** - процент заполненности календаря
|
||||
|
||||
## 💡 Советы по использованию
|
||||
|
||||
### Эффективное планирование:
|
||||
1. Сначала выберите гидов с похожей специализацией
|
||||
2. Используйте быстрые действия для базового планирования
|
||||
3. Затем корректируйте индивидуальные дни вручную
|
||||
|
||||
### Навигация:
|
||||
- Стрелки в заголовке календаря для перехода между месяцами
|
||||
- Цветовые индикаторы показывают загруженность дней
|
||||
|
||||
### Визуальные подсказки:
|
||||
- 🟢 **Зеленый день** - все выбранные гиды работают
|
||||
- 🟡 **Желто-зеленый** - часть выбранных гидов работает
|
||||
- ⚪ **Белый день** - никто из выбранных не работает
|
||||
- 🟨 **Желтый день** - выходной день
|
||||
|
||||
## 🔧 Техническая информация
|
||||
|
||||
### API Endpoints:
|
||||
- `GET /api/guide-schedules` - получение расписания
|
||||
- `PUT /api/guide-schedules` - сохранение месячного расписания
|
||||
- `POST /api/guide-schedules/batch` - массовое добавление
|
||||
|
||||
### Структура данных:
|
||||
```json
|
||||
{
|
||||
"guide_id": 1,
|
||||
"work_date": "2025-12-01"
|
||||
}
|
||||
```
|
||||
|
||||
### База данных:
|
||||
- Таблица: `guide_working_days`
|
||||
- Уникальный индекс по (guide_id, work_date)
|
||||
- Связь с таблицей guides через foreign key
|
||||
|
||||
## 🐛 Устранение неполадок
|
||||
|
||||
### Проблемы с сохранением:
|
||||
1. Проверить соединение с базой данных
|
||||
2. Убедиться что выбраны корректные даты
|
||||
3. Проверить консоль браузера на ошибки
|
||||
|
||||
### Проблемы с отображением:
|
||||
1. Перезагрузить страницу
|
||||
2. Очистить кеш браузера
|
||||
3. Проверить что все компоненты загружены
|
||||
|
||||
### Проблемы с авторизацией:
|
||||
- Административная сессия продлена до 7 дней
|
||||
- При проблемах с доступом перелогиниться в админке
|
||||
Reference in New Issue
Block a user