ТЗ: Модуль Графики
Связанные документы:
1. Назначение
Модуль Графики объединяет календарные и производственные представления Manager 2.0:
- график заказов на производстве;
- график доставок;
- график монтажей.
Цель модуля — дать единый раздел для планирования производства, доставки и монтажных работ, сохранив текущую рабочую реализацию графика монтажей.
2. Статус
Статус модуля: частично реализован.
В текущей CRM реализован:
График монтажей;
- маршрут:
schedule.index;
- контроллер:
ScheduleController;
- модель:
Schedule;
- создание записей из площадок/заказов;
- создание записей из рекламаций;
- экспорт графика;
- недельное/месячное представление, если доступно в текущей реализации.
Нужно реализовать:
График заказов;
График доставок;
- новую верхнюю группу меню
Графики;
- связи между графиками.
3. Место в меню
Целевое меню:
Графики
├── График заказов
├── График доставок
└── График монтажей
Требования:
- добавить верхний пункт меню
Графики;
- перенести текущий пункт
График монтажей внутрь Графики;
- текущий маршрут
schedule.index оставить без переименования;
- для
График заказов и График доставок на первом этапе добавить страницы-заглушки В разработке;
- выбранный год в CRM не влияет на новые модули
График заказов и График доставок;
- реорганизация меню выполняется сразу общей для всей платформы Manager 2.0.
4. Права доступа
На первом этапе оставляем текущие права.
| Раздел |
Permission |
| График монтажей |
schedule.view |
| График заказов |
Заглушка доступна всем авторизованным пользователям |
| График доставок |
Заглушка доступна всем авторизованным пользователям |
Требования:
- не переименовывать текущие права;
- не вводить новую систему прав на первом этапе;
- верхний пункт
Графики показывать, если пользователю доступен хотя бы один дочерний пункт.
5. График заказов
Статус: нужно реализовать.
Назначение:
- отображать график заказов на производстве;
- быть основным источником данных для доставок;
- быть связанным с монтажами;
- использовать позиции из
Каталог общий.
Требования по ТЗ Manager 2.0:
- таблица с графиком заказов на производстве;
- перенос функционала
график отгрузок из старого manager с адаптацией под текущие реалии;
- загрузка данных через 1С;
- связь с
Каталог общий;
- связь с
График монтажей.
Предварительный функционал:
- список заказов/позиций в производственном графике;
- дата/период производства;
- адрес/объект, если приходит из источника данных;
- позиции заказа из общего каталога;
- статусы или этапы производства, если они есть в источнике;
- фильтры по дате, заказу, позиции, статусу;
- импорт/обновление данных из 1С;
- история последней загрузки;
- обработка ошибок загрузки.
Открытые вопросы:
- какой источник данных 1С и формат обмена;
- какие поля приходят из 1С;
- нужен ли ручной ввод/редактирование или график полностью загружается;
- что именно в текущем/старом manager называется
график отгрузок;
- какие статусы производства должны отображаться;
- как связывать строку графика с позицией
Каталог общий.
6. График доставок
Статус: нужно реализовать.
Назначение:
- показывать недельный список доставок;
- позволять вручную планировать занятость водителей;
- брать адреса автоматически из
График заказов.
Требования по ТЗ Manager 2.0:
- отображение в виде недельного списка;
- адреса добавляются автоматически из
График заказов;
- вручную указывается занятость водителей: какой заказ и когда везут;
- добавление через модальное окно;
- возможная связь с вкладкой
Отгрузки требует уточнения.
Предварительный функционал:
- недельный календарь доставок;
- список заказов/адресов, доступных для доставки;
- добавление доставки через модальное окно;
- выбор даты и времени доставки;
- выбор водителя или ответственного за доставку;
- выбор заказа/адреса из графика заказов;
- комментарий;
- изменение и удаление записи доставки при наличии прав;
- фильтры по неделе, водителю, заказу;
- визуальное отображение занятости водителей.
Открытые вопросы:
- где хранится список водителей;
- нужна ли отдельная сущность
Водитель;
- какие статусы есть у доставки;
- нужна ли связь с отдельным разделом
Отгрузки;
- требуется ли печатная форма или экспорт недельного списка;
- как обрабатывать несколько доставок по одному заказу.
7. График монтажей
Статус: есть, переносится в новую группу меню.
Текущая основа:
- маршрут:
schedule.index;
- контроллер:
ScheduleController;
- создание записи из заказа/площадки;
- создание записи из рекламации;
- обновление записи;
- удаление записи;
- экспорт;
- недельное/месячное представление.
Требования:
- сохранить текущую бизнес-логику;
- сохранить текущий маршрут
schedule.index;
- перенести пункт меню внутрь
Графики;
- сохранить текущие права
schedule.view и связанные права обновления/экспорта;
- сохранить связь с площадками ДКР;
- сохранить связь с рекламациями;
- добавить/подготовить связь с
График заказов, когда он будет реализован.
Что не менять на первом этапе:
- структуру таблиц графика монтажей;
- существующие маршруты
schedule.*;
- текущие правила создания записей из заказов и рекламаций;
- текущий UI графика, кроме положения в меню.
8. Связи между графиками
Целевая логика связей:
| Источник |
Получатель |
Связь |
| Каталог общий |
График заказов |
Позиции заказа и справочные данные по номенклатуре. |
| График заказов |
График доставок |
Адреса и заказы для планирования доставки. |
| График заказов |
График монтажей |
Связь производственного графика с монтажом. |
| ДКР / Площадки |
График монтажей |
Площадки для монтажных работ. |
| Рекламации |
График монтажей |
Работы по рекламациям. |
Требования:
- связи не должны ломать автономность ДКР;
- текущий график монтажей должен работать до реализации графика заказов;
- новые графики должны опираться на
Каталог общий, а не на каталог внутри ДКР.
9. Данные и модели
Для График монтажей использовать текущие модели и таблицы.
Для График заказов и График доставок модели проектируются отдельно после уточнения данных.
Предварительно потребуются сущности:
- производственная запись графика заказов;
- строка/позиция производственного заказа;
- запись доставки;
- водитель или ответственный доставки;
- журнал загрузок из 1С.
Открыто:
- точные имена таблиц и моделей;
- структура полей;
- необходимость истории изменений;
- связь с существующими
Order, Product, ProductSKU.
10. Первый этап реализации
В первый этап модуля Графики входит:
- общая реорганизация меню;
- перенос
График монтажей внутрь группы Графики;
- сохранение текущего маршрута
schedule.index;
- добавление заглушки
График заказов;
- добавление заглушки
График доставок;
- сохранение текущих прав;
- проверка доступности текущего графика монтажей.
В первый этап не входит:
- разработка обмена с 1С;
- проектирование БД графика заказов;
- проектирование БД графика доставок;
- реализация недельного календаря доставок;
- изменение текущей логики графика монтажей.
11. Этапы реализации
12. Критерии приемки
- В верхнем меню есть группа
Графики.
- Внутри группы есть пункты
График заказов, График доставок, График монтажей.
График монтажей открывается по текущему маршруту schedule.index.
- Текущая логика графика монтажей не изменилась.
- Заглушки
График заказов и График доставок открываются без 404/403 у авторизованных пользователей.
- Пользователи с текущим доступом к графику монтажей сохраняют доступ.
- График монтажей продолжает работать с площадками ДКР.
- График монтажей продолжает работать с рекламациями.
13. Открытые вопросы
- Какой формат обмена с 1С для графика заказов?
- Какие поля должны отображаться в графике заказов?
- Нужен ли ручной ввод в графике заказов?
- Где хранить список водителей для графика доставок?
- Нужен ли отдельный модуль
Отгрузки, или график доставок закрывает эту задачу?
- Какие статусы нужны для доставок?
- Как должна выглядеть связь между графиком заказов и графиком монтажей?