Ограничение использования определенных автомобилей
Сервис позволяет ограничить количество автомобилей конкретного типа, используемых при планировании. Например, для собственного транспорта можно задать ограничение, при котором количество машин не превышает число доступных водителей. При этом использование арендованного транспорта не ограничено.
Чтобы реализовать сценарий, в запросе API:
-
для всех автомобилей, которые готовы к использованию, в массиве
vehiclesукажите дополнительное числовое полеvehicles.N.custom_valueсо значением 1 (по умолчанию — 0). Еслиcustom_value= 1, то автомобиль с курьером готов к работе; -
для остальных автомобилей не указывайте
custom_valueвообще или укажитеcustom_value= 0; -
в объекте
optionsзадайте значения следующих полей:-
max_total_vehicles_custom_value— максимальное количество доступных курьеров; -
penalty.vehicles_custom_values_excess— штраф за превышение значенияmax_total_vehicles_custom_value, где:penalty.vehicles_custom_values_excess.fixed— штраф за факт нарушения;penalty.vehicles_custom_values_excess.per_value— за каждую единицу нарушения.
-
Штраф за нарушение ограничения отразится в ответе API в поле result.metrics._tasks_summary.options.metrics.vehicles_custom_value_excess_penalty.
Пример 1
Нужно выполнить 100 заказов. В автопарке 4 автомобиля:
- 1-2 — арендованные;
- 3-4 — относятся к собственному автопарку.
Ограничения на использование определенных автомобилей не установлены.
В результате все заказы равномерно распределяются между курьерами. Штраф за превышение значения options.max_total_vehicles_custom_value не начисляется.
Пример Excel ⋅ Запрос API (JSON) ⋅ Ответ API ⋅ Открыть на карте
Пример 2
Те же условия, что в примере 1, но из собственного автопарка может использоваться только один автомобиль. Поэтому для автомобилей 3 и 4 параметр vehicles.N.custom_value = 1. Для арендованных автомобилей он не задан.
Кроме того:
-
в
options.max_total_vehicles_custom_valueуказано значение 1. Значит, выполнять заказы могут все курьеры на арендованных автомобилях и один курьер на автомобиле из собственного автопарка; -
назначены штрафы за факт и каждую единицу превышения значения
options.max_total_vehicles_custom_value:options.penalty.vehicles_custom_values_excess.fixed= 10 000 000options.penalty.vehicles_custom_values_excess.per_value= 100 000 000.
В результате алгоритм планирования распределяет заказы на курьеров 1, 2 и 4, что приводит к нарушениям временных окон. Поскольку используется только один автомобиль из собственного автопарка, штраф за превышение значения options.max_total_vehicles_custom_value не начисляется.
Запрос API (JSON) ⋅ Ответ API ⋅ Открыть на карте