Flightcases & Kits
Barcoded flightcase pack/seal/dispatch/return lifecycle and warehouse UI.
Overview
Flightcases group barcoded assets into dispatchable units — lighting kits, road cases, hybrid kits, and transport boxes. The lifecycle covers configuration, pack/unpack, seal/unseal, dissolve, dispatch, return, and repack.
Warehouse UI routes:
| Route | Purpose |
|---|---|
/flightcases |
Flightcase index |
/flightcases/{flightcase} |
Detail and status |
/flightcases/{flightcase}/pack |
Pack UI |
/flightcases/{flightcase}/repack/{rental} |
Repack-on-return for a rental |
CatalogueItem-level flightcase templates configure default pack lists and policies at /catalogue-items/{catalogue_item} (flightcase config tab) and via GET/PUT /api/v1/catalogue_items/{catalogue_item}/flightcase_template.
Flightcase modes
| Mode | Behaviour |
|---|---|
| Kit | Contents held from individual availability as a unit |
| Hybrid | Mixed fixed/variable contents |
| Transport | Road case / flight case; supports dissolve-on-dispatch |
Lifecycle
open → sealed → dispatched → returned → (repack) → open
| Event | Description |
|---|---|
| Pack / unpack | Add or remove barcoded items while open |
| Seal / unseal | Lock flightcase with compliance manifest |
| Dissolve | Manual dissolve with warn-and-resolve for nested packing |
| Dissolve-on-dispatch | Transport mode — flightcase dissolves when dispatched |
| Dispatch / return | Kit dispatch and kit return tie flightcase to a rental |
| Repack-on-return | Editable scan mode repack after return |
Temporary flightcases can be created ad hoc for one-off jobs (POST /api/v1/flightcases/temporary).
Compliance manifest
Sealed flightcases carry a compliance manifest listing packed serial numbers. Retrieve via GET /api/v1/flightcases/{flightcase}/compliance.
Dissolve-on-dispatch
Transport flightcases configured for dissolve-on-dispatch unpack their contents into the dispatch workflow automatically — the flightcase record completes while assets move to the rental.
Repack-on-return
After kit return, repack-on-return lets operators scan items back into the flightcase (POST /api/v1/flightcases/repack/start and per-item repack). UI trigger at /flightcases/{flightcase}/repack/{rental}.
Plugin and webhook seams
Flightcase pack, seal, dissolve, dispatch, return, and repack events appear in the webhook catalogue for integrations (barcode scanners, WMS, etc.).
Using it in the app
Navigation
| Screen | Route | Nav | Gate |
|---|---|---|---|
| Flightcases index | /flightcases |
Warehouse → Flightcases ("Cases, flightcases & kits") | flightcases.view |
| Flightcase show | /flightcases/{flightcase} |
— | flightcases.view + warehouse |
| Pack | /flightcases/{flightcase}/pack |
— | flightcases.pack |
| Repack | /flightcases/{flightcase}/repack/{rental} |
— | flightcases.create + rentals.edit |
| CatalogueItem flightcase config | /catalogue-items/{catalogue_item}/flightcase-config |
CatalogueItem tab (barcoded catalogue items) | View all; save needs flightcases.manage_templates |
CatalogueItem flightcase config tab
Tab: Flightcase Config (barcoded catalogue items only)
| Field | Purpose |
|---|---|
| Flightcaseable | Whether the catalogue item can act as a flightcase |
| Availability Mode | Kit / Hybrid / Transport behaviour |
| Check-in Mode | How returns are processed |
| Max Nesting Depth | Nested flightcase limit |
| Repack on Return | Enable repack workflow after kit return |
| Warehouse Addable at Dispatch | Allow adds during dispatch |
| Warehouse Add Default Charge | Default charge for warehouse adds |
| Template Slots | CatalogueItem, quantity, binding for default pack list |
Save Flightcase Config requires flightcases.manage_templates. Without it the form is view-only with a warning banner.
Flightcases index
Scan barcode field resolves an existing flightcase or housing — may navigate to show, open pack, or start repack.
Filters: search, warehouse, mode chips (Transport / Kit / Hybrid), status chips (defaults to Active)
Table: Barcode, Name, Status, Mode, Warehouse, Type (Temporary / CatalogueItem-backed), Items
Scan-create and repack-from-return flows require flightcases.create and rentals.edit respectively.
Pack page
Route: /flightcases/{flightcase}/pack
Scan-to-pack workflow while the flightcase is open:
- Strict checklist vs free list scan modes (configured on the flightcase)
- Inline conflict dialog when a scan hits an asset already elsewhere — options include transfer, auto-return, and nesting resolution
- Seal when packing is complete
Flightcase show
Actions (each policy-gated): Pack items, Repack session, Seal, Dissolve, Unseal (requires reason), Dispatch (kit/transport), Return kit, Verify check-in, Flag damage on return, Transfer items, Save scan mode
Panels: barcode, status, mode, check-in mode, scan mode, warehouse, contents tree, audit timeline
Flag damage on return: after kit return, a Flag damage on return panel lists returned assets. Flagging an asset repairs it (reason: Damage) and holds it out of availability. Contents still packed in the kit remain reserved until unpacked; the conflict policy rejects flagging still-packed components.
Dissolve-on-dispatch: transport flightcases configured for this mode dissolve automatically when dispatched from a rental — contents move to the dispatch workflow; the flightcase record completes.
Seal / unseal: sealed flightcases carry a compliance manifest; unseal prompts for a reason.
Flightcase contents overrun scan
The scheduled command signals:scan-flightcase-overruns (daily) detects still-packed sub-hired contents past their virtual-stock return deadline. It is notification-only — it fires a manager notification once per membership via the contents_overrun_notified_at marker and never mutates stock or raises repairs.
Repack-on-return
Route: /flightcases/{flightcase}/repack/{rental}
Editable scan mode after kit return — scan items back into the flightcase with lineage preserved. Also reachable from the index scan box ("start repack from return" modal).
Rental Assets tab
Route: /rentals/{id}/assets (visible for Order or Quote+Reserved)
Sub-tabs: Functions, Allocate, Prepare, Book out, Check in
| Workflow | Flightcase behaviour |
|---|---|
| Dispatch | Transport dissolve-on-dispatch; kit dispatch ties flightcase to rental; amendment modal for held items under WarnPartial policy |
| Verify check-in | Post-return verification on kit flightcases |
| Repack split view | Shows repack progress with lineage after return |
Set flightcase (bulk Functions menu) assigns flightcases to rental lines. Dispatch and return reuse the same flightcase policies as standalone flightcase pages (flightcases.dispatch, flightcases.return, plus rentals.edit).
Permissions summary
| Permission | UI effect |
|---|---|
flightcases.view |
Index, show, Warehouse nav link |
flightcases.create |
Temporary flightcases, repack sessions |
flightcases.pack |
Pack page |
flightcases.seal / dissolve / transfer |
Show page actions |
flightcases.dispatch / return |
Dispatch/return (also needs rentals.edit on rental) |
flightcases.manage_templates |
CatalogueItem flightcase config save |
rentals.edit |
Assets tab mutations, repack |
Related documentation
- Flightcases API — full REST lifecycle
- Assets — barcoded asset inventory
- Rentals — dispatch and return on order lines