Перейти к содержанию

Схема базы данных

Основные сущности предметной области: Клиент, Заказ, Груз, Маршрут, Транспорт, Водитель, Склад.

erDiagram
    CLIENT ||--o{ ORDER : "оформляет"
    ORDER ||--|{ CARGO : "содержит"
    WAREHOUSE ||--o{ CARGO : "хранит"
    ORDER ||--o| ROUTE : "исполняется по"
    ROUTE }o--|| VEHICLE : "назначен"
    ROUTE }o--|| DRIVER : "выполняет"
    ROUTE ||--|{ ROUTE_POINT : "включает"

    CLIENT {
        uuid id PK
        string name
        string inn
        string contact_phone
        string telegram_id
    }
    ORDER {
        uuid id PK
        string number
        uuid client_id FK
        string status
        date planned_delivery
        date actual_delivery
        decimal price
        bool on_time
        bool in_full
    }
    CARGO {
        uuid id PK
        uuid order_id FK
        uuid warehouse_id FK
        string cargo_type
        decimal weight_kg
        decimal volume_m3
        string temp_mode
        string barcode
    }
    ROUTE {
        uuid id PK
        uuid order_id FK
        uuid vehicle_id FK
        uuid driver_id FK
        int distance_km
        timestamp eta
    }
    ROUTE_POINT {
        uuid id PK
        uuid route_id FK
        int seq
        string address
        timestamp arrived_at
    }
    VEHICLE {
        uuid id PK
        string plate
        string type
        int capacity_kg
        bool refrigerated
    }
    DRIVER {
        uuid id PK
        string full_name
        string license
        string phone
    }
    WAREHOUSE {
        uuid id PK
        string name
        string address
        int capacity_pallets
    }

Описание сущностей

Сущность Назначение Ключевые ограничения
Клиент Грузоотправитель, заключивший договор ИНН уникален
Заказ Заявка на перевозку и её жизненный цикл Статусы: new → confirmed → paid → packed → in_transit → delivered → closed
Груз Грузовое место заказа Штрихкод уникален; вес > 0
Маршрут План перевозки заказа Вес груза ≤ грузоподъёмности ТС
Транспорт Транспортное средство парка Госномер уникален
Водитель Исполнитель перевозки Не более одного активного маршрута
Склад Место хранения и комплектации Вместимость в паллетах