Таксиметрична такса извън града
Необходимо е към крайградската тарифа да се добавят разходите за връщане на празна кола в града, по същия принцип като разходите за подаване
Какъв алгоритъм трябва да работи при връщане на автомобил?
Ако системата види, че автомобилът е преминал границата на града, тогава тя започва да добавя към тарифата извън града разходите за връщане до границите на града. Тоест, ако тарифата извън града е 10 r / km, а връщането е 10 r / km, тогава на таксиметъра всеки километър ще добави 20 рубли, докато такова нещо като разходите за шофиране на кола извън града изчезва. Таксиметърът, когато се включи в това село, веднага ще изчисли връщането в града. Този подход ще помогне за решаването на комплекс от проблеми наведнъж. Например, извикване на кола до определено село и пътуване на клиент до магазин в същото село (трябва да изчислим разходите за довеждане на колата и връщането й обратно в града) или пътуване на клиент от едно село до друго без спиране в града. Ако колата вземе клиента от селото и отиде с него до града, тогава цената на таксиметъра до границите на града няма да се промени (при условие че цената на връщането и цената на пробега с клиента са равни). Също така, когато клиентът пътува от град до село, цената на километър и цената на връщане постоянно се сумират.
Написах хаотично, но се надявам да е ясно ;)
If you are planning trips to villages, then it is logical to have your own geofences in these villages in which there is a minimum cost equal to the cost of filing from the city plus two km, one way (when traveling to the city, the cost of a trip to the city at a simple rate will be added, the cost of a trip through the village usually does not exceed two km that we added earlier), in the general case (when there are no trips to the villages when ordering a taxi from the city)автоматично в пресечната точка на геозоната на града)) и има пробег извън града, равен на две разходи за билет (обикновено)
Колко геозони трябва да начертая? Сега няма да кажа със сигурност, около 50-60 села трябва да бъдат нарисувани на ръка
За нашата услуга този подход не е подходящ.
Просто задаваме извънградска тарифа повече от градска, като вземем предвид връщането на колата празна.
По същия начин целият проблем е решен
Но какво да кажем за поръчките, когато клиентът пътува от село "А" до село "Б", без да спира в града? Или когато клиент пътува от град на село и след това обратно в града, или още по-лошо - от село на град и обратно в село?
Обмислях варианта с двойна тарифа на първо място. Да кажем, че цената извън града е 30 r / km, а селото е на 10 км. от границите на града. Разглеждаме варианта клиентът да пътува от самата граница на града (за да се изключи влиянието на градската цена).
всичко работи добре с този маршрут:
Град -> село \u003d 30 * 10 \u003d 300 рубли. (пробег 10 с клиент +10 празен =20 км)
Село -> град \u003d 30 * 10 \u003d 300 рубли. (пробег 10 празен +10 с клиент =20 км)
но с това получавате несъответствия в сумата и пробега
Град ->село -> град \u003d 30 * 20 \u003d 600 рубли. (пробег 10 с клиент +10 с клиент = 20 км)
Село -> град -> село \u003d 30 * 20 \u003d 600 рубли. (пробег 10 празен +10 с клиент +10 с клиент +10 празен =40км)
Къде е цената на км за доставка на автомобил?
"Село -> град -> село = 30*20=600 рубли (пробег 10 празен +10 с клиент +10 с клиент +10 празен =40 км)"
Ако въведете цената на подаване в размер на 15 r / km, тогава тя ще бъде отразена тук:
Село -> град \u003d 30 * 10 \u003d 300 рубли. (пробег 10 празен +10 с клиент =20 км) 150+30*10=450
Село -> град -> село \u003d 30 * 20 \u003d 600 рубли. (пробег 10 празен +10 при клиент +10 при клиент +10 празен =40 км) 150+30*20=750
"Все едно няма докинг" за какво говориш?
„Ако въведете цената на подаване в размер на 15 r / km“, въведете различна цена на km.
Необходимо е да се финализира алгоритъмът на операциите по хранене - да се брои до най-близката точка, а не, както е сега, до точката на тръгване. И 2-ро е да не се отчита предлагането, ако колата е пусната в града. Тези 2 квадратчета ще ви позволят да затворите всички въпроси относно подаването.