Skip to content

Er Diagram of Order Application


Below is the Entity-Relationship Diagram for the Order Tracking, Cancellation Reason, Order Cancellation, Return Reason, and Order Return models.

erDiagram
    ORDER_TRACKING {
        uuid id PK
        uuid order FK
        uuid transaction FK
        uuid order_status FK
        boolean has_cancelled
        date cancelled_at
        boolean has_returned
        date returned_at
        boolean has_ordered_confirmed
        datetime order_confirmed_at
        boolean has_shipped
        date shipped_at
        boolean has_outfor_delivery
        date outfor_delivery_at
        boolean has_delivered
        date delivered_at
        boolean has_delivery_failed
        date delivery_failed_at
        datetime created_at
        datetime updated_at
    }
    CANCELLATION_REASON {
        uuid id PK
        string reason
        boolean is_active
        datetime created_at
        datetime updated_at
    }
    ORDER_CANCELLATION {
        uuid id PK
        uuid order_tracking FK
        uuid reason FK
        string account_name
        string account_number
        string bank_name
        string bank_branch
        boolean has_approved
        boolean refund_processed
        decimal refund_amount
        datetime cancelled_at
        datetime updated_at
    }
    RETURN_REASON {
        uuid id PK
        string reason
        boolean is_active
        datetime created_at
        datetime updated_at
    }
    ORDER_RETURN {
        uuid id PK
        uuid order_tracking FK
        uuid reason FK
        boolean has_approved
        string account_name
        string account_number
        string bank_name
        string bank_branch
        boolean refund_processed
        decimal refund_amount
        datetime returned_at
        datetime updated_at
        text rejection_reason
        boolean is_rejected
    }

    ORDER_TRACKING ||--o{ ORDER_CANCELLATION : "can be canceled"
    ORDER_TRACKING ||--o{ ORDER_RETURN : "can be returned"
    CANCELLATION_REASON ||--o{ ORDER_CANCELLATION : "has reason"
    RETURN_REASON ||--o{ ORDER_RETURN : "has reason"