Автоматизация отдела доставки с помощью PHP и JavaScript

Данный скрипт легко установить на свой хостинг, поддерживающий PHP, или использовать локально с помощью эмуляторов PHP типа Denwer. Вы сможете при помощи открытого API Яндекс.Карт составлять оптимальный маршрут для своих курьеров, будете знать требуемое время и общий километраж.

На написание данной статьи меня сподвигнул этот стартап:

Вспомнил, что когда то давно, когда у меня были свои водители для доставки по Ростов-на-Дону, сделал тогда себе нехитрый скрипт (php + javascript) для составления оптимального плана доставки, который при необходимости легко разделить на нескольких водителей.

Скачиваете дистрибутив (php + javascript):

И заливаете все содержимое к себе на сайт в отдельную папку, скажем в папку route, далее в адресной строке браузера набираете ваш_сайт.ru/route/, появится такое окно:

Загружаете csv файл c кодировкой utf-8, его в excel можно сделать, нажав "сохранить как" и выбрав там "Текст CSV(.csv)".

В этом списке должно быть всего два поля, полный адрес (включая город) и время стоянки по адресу в минутах. Первой записью должен быть адрес вашего склада, остальные адреса в произвольном порядке. Я например такой список формировал автоматом своей crm.

Нажав кнопку "найти оптимальный маршрут", вы через минуту работы javascript кода получите такой результат:

Ниже будет список оптимальной последовательности адресов:

Можно кликнуть по ссылке "открыть маршрут" и в режиме навигатора начать двигаться по адресам.

Этим скриптом я также начислял водителям компенсацию за использование их автомобиля, заранее рассчитав с конкретным водителем стоимость одного км пробега, исходя из расхода топлива по городу и стоимости планового ТО.

0
92 комментария
Написать комментарий...
Артем Таранов

2к18 который мы заслужили:
* Код в зипке
* Denwer
* Инструкция как получить csv в нужной кодировке
---
К автору претензий никаких, понятно что он не разработчик, и что его творение решает бизнес-задачу и это хорошо. Просто забавно :)

Ответить
Развернуть ветку
Евгений Захарченко

это был сарказм? тогда расскажите как правильно и модно.
1) код в зипке. в чем здесь подвох. я в "облаках" не летаю. и на github не выкладываю.
2) денвер - обычный локальный сервер как и другие. буквально на днях обработал на нем базу ФИАС, а это несколько гигобайт.
3) Это проблема бесконечна. win, koi, utf
Я брал на себя работу по обслуживанию сайтов. это не забавно и это 2к18

Ответить
Развернуть ветку
Максим Федоров

1. Потому что это моветон -- у всех современных пыхеров есть композер и через него стаятся библиотеки и также удаляются -- зачем возиться с зипами? файлами в нем и т.д... инструкции по установке еще искать и разгребать вот это все, мы же не в нулевых...

2. Ну понятное дело -- сервер же сервер, язык есть язык программиирования, но еще раз уточню -- в популярном сообществе есть разного уровня программисты и некоторые из команд, видеть такое -- блин, это просто гигиена, работаешь с таким Г -- потянешь его в другую работу, не дай бог в командную

В целом ваши замечания конечно понятны -- зачем делать так, если и так работает...
Но тут много разработчиков из другого поколения, а также много разработчиков из других языков, которые за такие поделки ОБОСНОВАННО думают, что у нас в языке плодится лишай

Ответить
Развернуть ветку
Евгений Захарченко

Я ж без притензий.
Я хочу узнать как должен быть выглядить готовый продукт? В рамках топика
Как нужно выкладовать в паблиш, что бы потом тебя не загнобили

Ответить
Развернуть ветку
Serge Ivanov

На гитхаб выкладывайте и дело с концом. Кому надо, тот разберётся, а остальные и так найдут к чему придраться.

Ответить
Развернуть ветку
Алексей Траньков

Подождите. Я правильно понимаю, что вы здесь устраиваете сеанс стоматологии для бесплатного коня? Напишите как правильно, поделитесь с другими бесплатно, и тогда будем обсуждать.

Ответить
Развернуть ветку
Максим Федоров

Какашка и в виде вылепленного коня не нужна никому.
Наличие какашки и публичное мнение о том, что какашка = какашка не является поводом для написания чего-либо :)

Ответить
Развернуть ветку
89 комментариев
Раскрывать всегда