Розробка інтерактивної картки доставки для сайту

Про завдання: створення картки доставки продукції для сайту
Мета
Дати можливість користувачеві наочно уявляти, скільки коштуватиме доставка товару до його адреси.
Опис завдання
На сайті на сторінці “Умови роботи” підключити Яндекс.Карту, на якій буде позначено кордон міста Санкт-Петербурга, всередині якого діятиме Перша зона доставки (певна вартість). Кордон проходить по КАД із півночі, сходу та півдня та обмежена ЗСД та Фінською затокою із заходу.
Функціонал картки
Користувач може натиснути на карті в будь-яку точку – вибрати бажану адресу доставки. При виборі точки скрипт автоматично розраховує вартість доставки до цієї точки і виводить її на сторінці сайту.
Параметри розрахунку вартості
1) Зелена зона 1
Якщо точка обрана всередині кордону міста (червоного кордону) – виводиться повідомлення: «При сумі замовлення до 3000 рублів – вартість доставки складе 300 рублів (включається в рахунок). За сумою замовлення від 3000 рублів – доставка безкоштовно!»
2) Фіолетова зона 2
Якщо обрано точку за межами міста – то скрипт розраховує найближчий шлях до точки доставки – від найближчої точки з’їзду з КАД. Тобто скрипт розраховує саме найближчий шлях дорогами, а не прямо – лісами, полями і болотами =) Розраховується кількість кілометрів, і на основі цього – вартість доставки. 1 км = 35 рублів (ціна шляху в обидва кінці).
Наприклад, користувач вибрав точку доставки в районі міста Петергоф. Відстань від найближчої точки з’їзду з КАД на західному кордоні міста до точки в районі Петергофа – 11 км. І тут вартість розраховується за такою формулою: 300 крб. + (11 км * 35 руб.) – Якщо сума замовлення до 3000 руб, – або просто 11 км * 35 руб. – Якщо сума від 3000 руб. І виводиться повідомлення: “Відстань від КАД складає: 11 кілометрів: При сумі замовлення до 3000 рублів – вартість доставки складе 685 рублів (включається в рахунок). При сумі замовлення від 3000 рублів – доставка 385 рублів“.
3) Поправка до пункту 2 (зона 3):
Якщо відстань від КАД до точки доставки становить більше 20 кілометрів, то скрипт виводить повідомлення: «Відстань від КАД становить N кілометрів: Можливість доставки необхідно узгодити з нашим менеджером».
Референси
Загалом, як приклад можна взяти таку карту на сайті https://www.afonya-spb.ru/p/
Що вийшло: інтерактивна картка доставки
Результати
- розробка картки доставки піци, суші, бургерів та іншої їжі на винос із кафе, ресторану, кафе, піцерії, суші-бару тощо;
- створення онлайн-калькулятора вартості доставки для транспортної компанії, вантажоперевізника;
- розробка калькулятора для підрахунку вартості поїздки для таксі, таксопарку;
- …та інші варіанти застосування.