# Планировщик рабочих смен гидов Новый инструмент для управления расписанием работы гидов в туристическом агентстве. ## 🚀 Основные возможности ### ✅ Выбор гидов - Множественный выбор гидов чекбоксами - Кнопки "Выбрать всех" / "Очистить выбор" - Отображение специализации каждого гида ### 📅 Планирование смен - Календарный интерфейс на месяц - Клик по дню для добавления/удаления смены - Визуальные индикаторы занятости - Поддержка множественного выбора гидов ### ⚡ Быстрые действия - **Отметить будни** - автоматическое планирование пн-пт - **Отметить выходные** - планирование суббота-воскресенье - **Весь месяц** - отметить все дни месяца - **Очистить месяц** - удалить все смены месяца ### 🔄 Копирование между месяцами - **Скопировать из прошлого месяца** - копирует структуру предыдущего месяца - **Скопировать в следующий месяц** - применяет текущее расписание на следующий месяц ## 🎯 Как использовать ### 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 дней - При проблемах с доступом перелогиниться в админке