Перейти до змісту

Logistic — Operations (Multimodal Freight & Forwarding)

Детальна специфікація операційної моделі платного плагіна Logistic (раніше жила окремо як "Multimodal"). Короткий огляд плагіна — в README.md; імплементаційні деталі (Django-моделі, status-flow, сценарії) — в architecture.md.

Цей модуль призначений для управління складними ланцюгами постачань, що включають декілька видів транспорту (залізниця, авто, море), роботу з підрядниками та два ключові сценарії: консолідацію вантажів (N → 1) та дистрибуцію "останньої милі" (1 → N).


1. Master Data (Мастер-дані)

Сутність Опис Ключові поля
CargoType Класифікація вантажів (bulk, container, breakbulk тощо) Name, Cargo_Class, Requires_Container, HS_Code_Prefix
ContainerType Характеристики ISO-контейнерів ISO_Code, Length_ft, Max_Payload, Max_Volume
LocationPoint Точки логістичної мережі (порти, станції, елеватори) Type, UN/LOCODE, Country, Coordinates, Timezone
FreightContractor Перевізники, агенти, стивідори та брокери Client_Link, Contractor_Type, Transport_Modes, SCAC Code
RouteTemplate Шаблони регулярних маршрутів та їх сегментів Name, Origin/Dest, Cargo_Type, Is_Consolidation

2. Transaction Data (Транзакційні дані)

А. Фрахт та виконання замовлень

  1. Freight Contract: Угоди з клієнтами (spot/period/volume) та тарифікація за сегментами.
  2. Transport Order: Клієнтський запит на перевезення з деталізацією вантажу.
  3. Shipment: Головний документ виконання перевезення, що об’єднує всі етапи.
  4. Shipment Leg: Окремий етап (плече) маршруту. Містить дані про транспортний засіб (власний/найманий) та вартість.
  5. Transport Document: Юридично значущі документи: CMR, Bill of Lading (B/L), Railway Bill.

Б. Спеціалізоване планування

  1. Consolidation Plan: План збору вантажів від багатьох відправників у одну точку (напр. у морський порт).
  2. Vessel Booking: Бронювання місця на судні для консолідованого вантажу.
  3. Distribution Plan: План розвезення вантажів з одного складу багатьом отримувачам.
  4. Distribution Route & Stop: Маршрути власного автопарку з послідовністю точок доставки.

3. Journals & Ledgers (Журнали та реєстри)

A. Transit Inventory Ledger (Реєстр вантажів у дорозі)

Облік фізичного місцезнаходження вантажу в реальному часі на кожному сегменті (Leg). * Dimensions: Shipment_ID, Current_Leg_ID, Location_Point_ID. * Resources: Weight_kg, Volume_m3, Container_Count.

B. Freight Cost Ledger (Журнал логістичних витрат)

Акумуляція витрат по кожному підряднику та етапу для розрахунку загального фрахту. * Dimensions: Shipment_ID, Contractor_ID, Transport_Mode. * Resources: Estimated_Cost, Actual_Cost, Currency.

C. Contract Volume Ledger (Реєстр виконання контрактів)

Моніторинг відвантажених обсягів у межах довгострокових контрактів (Volume Contracts). * Dimensions: Contract_ID, Route_Template_ID. * Resources: Contracted_Volume, Shipped_Volume, Remaining_Volume.


4. Business Processes (Бізнес-процеси)

  • Multimodal Routing: Автоматичне створення Shipment Legs на основі обраного шаблону маршруту.
  • Consolidation Workflow: Процес накопичення вантажів (Collection Orders) до досягнення цільового об’єму судна.
  • Last-Mile Optimization: Групування замовлень за регіонами та автоматичний розподіл по маршрутах дистрибуції.
  • Status Synchronization: Каскадне оновлення статусів: зміна статусу Leg впливає на загальний статус Shipment та Transport Order.

5. Analytics & BI (Аналітика)

  • Transit Time Variance: Аналіз відхилень фактичного часу прибуття (ATA) від планового (ETA).
  • Route Profitability: Розрахунок маржинальності конкретних напрямків з урахуванням витрат на всіх субпідрядників.
  • Vessel Performance: Аналіз ефективності завантаження суден та витрат на демередж/диспач.
  • Distribution Success Rate: Відсоток вчасно виконаних доставок на "останній милі".

6. Architectural Decision

Tracking & Visualization

Для відстеження переміщення вантажів використовується 3-рівнева структура інтерфейсу (Plan → Route → Stop). Високочастотні дані GPS (VehicleLocationHistory) рекомендується виносити в NoSQL (Redis/InfluxDB), щоб уникнути перевантаження основної бази PostgreSQL транзакційними даними трекінгу.