Фронтенд в виде single page application для взаимодействия с бэкендом по REST API.
Несколько таблиц с сортировкой и поиском, формы для их редактирования данных, карты Leaflet OSM с расстановкой точек, рисованием маршрутов и отображением данных запрашиваемых с бэкенда несколько раз в минуту.
1. Раздел «Наряд»
Таблица со списком транспортных средств (ТС) с фильтрацией и сортировкой по данным: гос номер, номер маршрута, нахождение в наряде.
2. Раздел «История»
Карта OpenStreetMap с выбором даты, отображаемым ТС и слайдером времени суток, отображающая положение выбранных ТС в указанный промежуток времени.
3. Раздел «Маршруты»
Карта OpenStreetMap с возможностью создавать и редактировать маршруты и остановки.
Возможность рисования маршрутов.
1. Указание номера маршрута (цифро-буквенное наименование) и последовательность остановок, составляющих данный маршрут.
2. Добавления промежуточных звеньев, уточняющих маршрут ТС от остановки до остановки.
3. Добавление дополнительных участков, доступных в рамках маршрута, но не являющихся его частью, для указания заправок или других стоянок доступных ТС, чтобы иметь возможность отображать в «Мониторинге» ТС, находящиеся в данный момент на заправке.
4. Раздел «Мониторинг»
1. Карта OpenStreetMap с выбором отслеживаемых ТС по гос номеру и назначенному маршруту.
2. Необходимо выделять ТС, сошедшие со своего маршрута. Так же периодически проигрывать звуковой сигнал при наличии таких ТС.
3. Необходимо выделять ТС, находящиеся на дополнительном участке маршрута, как находящиеся на заправке.
4. Проверка вхождения координат в маршрут должна происходить на фронтенде на основе имеющихся данных о маршрутах и местоположении ТС.
5. Раздел «Отчёты»
Вывод отчета по выбранным ТС о времени выезда из парка с его названием и возвращении в парк за указанные сутки.
6. Раздел «Сети»
Список сетей с возможностью их создания, редактирования, удаления, с указанием имени и выбором географических координат.
7. Раздел «Пользователи»
Таблица со списком пользователей с фильтрацией и сортировкой.
8. Раздел «Настройки»
Для упрощения разработки пользовательского интерфейса можно отталкиваться от уже существующих похожих сервисов, пример:
Их функционал для нас излишен, но мы можем заимствовать идеи для необходимой его части.
Сроки и бюджет можем обсудить.