Мини-система веб управления графиком смен сотрудников

Показан практический мини-проект для веб управления сменными графиками, призванный заменить ручной Excel. Стек: XAMPP, PHP с mysqli, чистый JavaScript, HTML и CSS. Архитектура разделена на слои api, includes, js, views; подключение к БД в db.php, базовые утилиты и валидации в functions.php.

Функциональность:

  • Сотрудники: добавление и удаление через API add_employee.php и delete_employee.php; список из get_employees.php.
  • График: визуальный редактор и автогенерация паттерна 2/2. Механика пар: ДН → ВВ, ВВ → ДН, ВД → НВ, НВ → ВД; быстрые пресеты и сохранение в save_auto_schedule.php с транзакцией и upsert по дате.
  • Статусы: отпуск и больничный с приоритетом над сменами. set_status.php удаляет пересекающиеся смены, затем фиксирует период статуса; status.php поддерживает GET, POST, DELETE и фильтры по сотруднику и дате. get_schedule.php объединяет смены и статусы на лету.
  • UI: две вкладки График и Сотрудники, выбор строки, быстрые кнопки генерации, авто заголовок текущего месяца. Версия для печати с подписью, A4 альбом, липкий столбец ФИО и подсчет часов по норме 11 часов на смену.

Проект локально запускается на http://localhost/schedule и может служить базой для небольших команд и дальнейшей кастомизации.

Ключевые инсайты из новости (по версии ChatGPT)
  • Бизнес-правило приоритета статусов над сменами: При установке длительного статуса (отпуск/больничный) он должен перекрывать любые уже назначенные смены на этот период. Практически это реализуется удалением пересекающихся смен перед записью статуса и последующим рендером, где статус имеет высший приоритет.
    [Регламент данных]
Для получения полного доступа оформите подписку PubMag PRO.
Зарегистрированные пользователи видят только два тезиса.
Зарегистрироваться
Инсайты автоматически генерируются с помощью искусственного интеллекта на основе текста статьи.
← Назад в лентуЧитать оригинал →
✈️ Подписывайтесь на мой Telegram-канал — там еще больше интересного про AdTech, MarTech, AI и многое другое!