Перейти к основному контенту

Возмещение по внутригородскому экспедированию

Дата: 01.10.2025
Исполнитель: 
ОРПО
Заказчик: 
Служба логистики


Введение

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

Спецификация предназначена для использования командой разработчиков и тестировщиков при реализации и проверке доработок, а также для аналитиков и менеджеров проекта для контроля полноты и качества выполненных работ. Документ описывает детали расчёта возмещения с учётом особенностей многократного использования заявок в различных маршрутных листах (МЛ), предотвращения ошибок при изменении стоимости услуг, и минимизации рисков накрутки показателей возмещения.


Цель доработки

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


Актуальное состояние и выявленные проблемы

  • Возмещение по типу «Доставка по городу» сейчас рассчитывается на основе стоимости услуг, взятых из пункта назначения, что не всегда корректно отражает реальную стоимость заборных и доставочных услуг.

  • В одном заказе могут присутствовать две разные услуги (забор в ПО и доставка в ПН) с разной стоимостью, которые сейчас не разделяются корректно в расчёте возмещения по МЛ.

  • При изменении стоимости услуги в заявке возмещение иногда исчезает из МЛ.

  • При многократном добавлении одной и той же заявки в один или несколько МЛ сумма возмещения ошибочно суммируется, а не делится на кол-во МЛ.

  • Услуга «Выдача груза по адресу клиента», используемая в Москве, в расчёте возмещения учтена частично, требуется её корректное полное включение.

  • Риски искусственного завышения возмещения за счёт повторного добавления одной заявки в МЛ.


Требования к новому функционалу

1. Логика расчёта возмещения
  • Для заявок типа «Доставка по городу» возмещение рассчитывается отдельно для каждого пункта услуги:

    • Забор груза — стоимость берётся из заявки, связанной с пунктом отправления.

    • Доставка груза — стоимость берётся из заявки, связанной с пунктом назначения.

  • Для каждой услуги за основу брать стоимость, указанную в самой заявке (как фактическая сумма).

  • При изменении стоимости услуги в заявке автоматически пересчитывать и обновлять сумму возмещения в МЛ.

2. Распределение возмещения по нескольким маршрутным листам
  • В заявке на экспедирование через вкладку «Маршрутные листы» фиксируются все МЛ, в которые добавлена данная перевозка.

  • Сумма возмещения по каждой услуге должна равномерно распределяться по количеству МЛ, где данная заявка учтена:

Сумма возмещения на МЛ = Общая сумма возмещения по заявке / Количество МЛ

  • При добавлении одной и той же заявки в несколько МЛ возмещение корректно делится, при этом не допускается удвоение или суммирование возмещений за одну и ту же заявку.

  • При повторном добавлении заявки в тот же МЛ должен быть корректный расчет возмещения по принципу равномерного деления, при этом не допускается удвоение или суммирование возмещений.


Пример корректного распределения возмещения

  • Машина A делает 2 рейса (объединены в один МЛ), машина Б делает 1 рейс с отдельным МЛ.

  • Возмещение распределяется:

    • МЛ машины A: 2/3 * 10 000 = 6 666,67

    • МЛ машины Б: 1/3 * 10 000 = 3 333,33
  •  В каждом МЛ учитываются отдельно суммы за услуги ПО и ПН.

3. Проверки, запреты, особые условия и контроль
  • При перерасчётах и изменениях стоимости проводить автоматический пересчёт суммы для всех МЛ.
  • Обеспечить подсчёт и распределение возмещения строго согласно количеству МЛ, без возможности искусственного увеличения суммы.

  • Предусмотреть и реализовать механизм контроля и логирования изменений возмещения для аудита.

4. Граничные случаи и ошибки
    • Если заявка отсутствует в МЛ — возмещение для неё не рассчитывается.

    • При удалении заявки из МЛ — суммы пересчитываются.

    • При повторном добавлении заявки в МЛ - суммы пересчитываются, а возмещение по данной заявке делится на кол-во повторов.
    • При некорректных данных или отсутствующих суммах — расчёт возмещения не проводится, генерируется предупреждение для пользователя.

5. Отображение и пользовательский интерфейс
  • При изменении стоимости услуги в заявке обновлять возмещение во всех МЛ, в которые включена заявка.

6. Тестирование и миграция данных
  • Провести подробное тестирование на реальных кейсах.

  • Выполнить массовую переработку данных для корректного расчёта и проставления возмещений по услугам ПО, ПН - по запросу пользователей.

7. Дополнительные условия
  • Доработать расчёт возмещения для услуг с учётом новых требований.

  • Обеспечить совместимость с межгородским возмещением.