supplyAdvanceShipment
Advances a shipment to the next status in its lifecycle.
This mutation transitions a shipment to its next logical status based on the current state. The mutation requires authentication and the user must have appropriate permissions on the associated brand.
Status Flow
Shipments progress through the following statuses:
pending→in_transitin_transit→at_destinationat_destination→delivered
The delivered and canceled statuses are terminal states and cannot be advanced further.
Auditing
Each status transition is recorded with the user who performed the action and the timestamp, creating a complete audit trail in the shipment's status history.
Errors
- Returns "Shipment not found" if the shipment ID doesn't exist
- Requires authentication (login_required)
- Validates user permissions on the brand
supplyAdvanceShipment(
input: AdvanceShipmentInput!
): SupplyShipment
Arguments
supplyAdvanceShipment.input ● AdvanceShipmentInput! non-null input
Parameters for AdvanceShipment
Type
SupplyShipment object
Represents a shipment in the supply chain system.
Shipments are physical movements of goods through the supply chain. They can be linked to purchase orders and track the movement of materials from origin to destination. Each shipment maintains its status, payment information, and relationship to other shipments (hierarchical parent-child structure).
Shipment Types
- **Shipment**: Direct shipment to a final destination (building/warehouse)
- **ASN**: Advanced Shipment Notice, typically an intermediate shipment to a port or hub
Status Lifecycle
Shipments progress through various statuses: pending, in_transit, at_destination, delivered, or canceled
Related Data
Each shipment includes associated items, status history, brand information, purchase order reference, and destination facility information. Shipments can have parent-child relationships for consolidated/split shipment scenarios.