Общее описание задачи
Требуется разработать полноценную веб-систему для управления рабочими процессами автосервиса (СТО). Система должна решать задачи от записи клиента до финансовой аналитики. Разработка ведется на PHP + MySQL с использованием серверного рендеринга (без React/Vue/AJAX SPA). Интерфейс на Bootstrap. Основное требование - читаемость кода, без избыточной архитектуры.
1. Авторизация и управление доступом
- Вход в систему по логину и паролю.
- Разграничение ролей: Администратор, Менеджер, Мастер.
- Контроль доступа: каждая роль должна иметь ограниченный функционал согласно должностным обязанностям.
2. Модуль клиентов (CRM)
- Поля для карточки клиента: Имя, Фамилия, Телефон (обязательное поле).
- CRUD (добавление, просмотр, редактирование, удаление).
- Поиск клиента по ФИО и номеру телефона.
- Просмотр всех автомобилей, привязанных к клиенту, и полная история его заказов.
3. Учет автомобилей
- Поля: Марка, Год выпуска, Государственный номер, VIN (необязательно).
- Быстрый поиск по госномеру.
4. Заказ-наряды (Журнал работ)
- Создание заказа: привязка к клиенту + автомобилю, дата/время, список работ.
- Список работ: выбор из готового прайс-листа (автоматическая подстановка цены) и возможность добавления ручной услуги с названием и ценой.
- Статусы заказа: Принят -> В работе -> Завершен -> Оплачен.
- Возможность оставить комментарий к заказу.
- После перевода заказа в статус 'Завершен' должна формироваться печатная форма: Акт выполненных работ + Договор (PDF для скачивания).
5. Прайс-лист
- Структура: Категории услуг (например, Кузовной ремонт, Электрика) -> услуга -> цена.
- Добавление и поиск услуг.
6. Склад
- Категории товаров: создание / изменение / удаление.
- Товар: Название, артикул, количество на складе.
- Статусы: Автоматически 'В наличии', если количество > 0; 'Нет в наличии', если количество = 0.
- Поиск по названию и артикулу. Фильтрация списка только по наличию/отсутствию товара.
7. Финансы и аналитика
- Доходы: Формируются автоматически на основе оплаченных заказов.
- Расчеты системы: Общая выручка, расходы, чистая прибыль, средний чек (средняя сумма заказа).
- Аналитика: График доходов/расходов с возможностью выбора периода (день, неделя, месяц, квартал).
- Функция экспорта отчетов (таблица по периоду + график) в PDF.
- Отображение на дашборде: выручка, количество клиентов и заказов, чистая прибыль, последние операции.