Необходимо сделать микросервис, который будет получать список адресов и возвращать их в порядке, в котором получится оптимальный маршрут движения курьера, с учётом времени указанного к каждому из них и того, что они точки двух типов (забор и вручение).
Пример маршрута (координаты и адреса):
jsoneditoronline.org/#lef... Всё это хранится в базе. Нам нужен отдельный сервис, который мы сможем развернуть и делать к нему запросы. Желательно чтобы его можно было развернуть на линукс сервере. Какие технологии будут использованы при создании сервиса решать Вам.
Идеальный вариант передача JSON, как в примере выше и получение ответа в виде отсортированного списка.
Основная задача, чтобы мы могли полностью абстрагироваться от используемого нами стека. Потому что запросы нам надо будет кидать с мобильных приложений, с фронтэнда и бэкэнда. Поэтому нам нужен отдельный сервис, к которому мы сможем делать запросы и получать от него ответы. Если нужна таблица бд нужно создать её в самом сервисе.
Уточнение сервисы маршрутизации Яндекса использовать не можем.
структура такая:
id id точки
dateFrom время начала визита на точку в UNIX формате
dateTo время конца визита на точку в UNIX формате
pickup_dot id точки, которую надо посетить первой, например, чтобы сделать забор. Если предварительно не надо посещать другие точки, то null
`pickup_dot` id точки, которую необходимо посетить перед визитом.
Скорость передвижения = 25 км/ч
Точек на расчет = до 40.