# GetShipment

## Overview

GetShipment retrieves one shipment with posted quantities, draft details, and customer-facing shipment context.

## Business Rules

- Lookup by id performs an exact shipment match.
- The query returns both DRAFT and POSTED shipments.

## Process Flow

```mermaid
flowchart TD
    A[Receive shipment id] --> B[Query Shipment and ShipmentLine]
    B --> C{Found?}
    C -->|No| D[Return null]
    C -->|Yes| E[Return shipment with lines]
```

## External Dependencies

- None

## Error Scenarios

- **NONE**: Returns null when no matching shipment exists.

## Test Cases

- returns shipment when found by id
- returns posted shipment with lines
- returns null when shipment is not found
