01 — Quick Reference

Group Models
Voyages & Port Calls VesselVoyage · VoyagePortCall · VesselVoyageLeg · CallActivity · CallBerthVisit
Cargo & Calls CargoCallAllocation · CargoOperationFact · ManifestCargoSnapshot
Exceptions & Audit VoyageException · VoyageAudit
Vessels, Ports & Berths VoyageVessel · VoyagePort · VoyageTerminal · VoyageBerth · AgentAppointmentRef

Every model (15) — one line each

Model It records Key foreign keys
VoyagePort Local copy of a port —
VoyageVessel A vessel: identity, capacity, status (network authority) —
VoyageTerminal A terminal at a port VoyagePort
VoyageBerth A berth at a terminal, with its maximum draft VoyageTerminal
VesselVoyage A voyage of a vessel: schedule, state, version and snapshot hash VoyageVessel
VoyagePortCall One ordered call of a voyage at a port; agent appointment, ETA/ETD, ATA/ATD, version VesselVoyage, VoyagePort, VoyageTerminal, VoyageBerth
VesselVoyageLeg The sailing between two consecutive calls VesselVoyage, VoyagePortCall (from, to)
CallActivity A port service fact (berthage, towage, wharfage ...), verified with evidence; not a payable VoyagePortCall
CallBerthVisit Where the vessel lay (berth, anchorage, off berth) and when VoyagePortCall, VoyageBerth
CargoCallAllocation A manifest line matched to its load call and discharge call VesselVoyage, VoyagePortCall (load, discharge)
CargoOperationFact A loading or discharge tally record against an allocation CargoCallAllocation, VoyagePortCall
ManifestCargoSnapshot The manifest's effective cargo for a revision, as received —
AgentAppointmentRef The agency's appointment of an agent for a port, as received —
VoyageException A control exception (call mapping missing, tally variance ...) and its resolution VesselVoyage, VoyagePortCall
VoyageAudit Who did what to a voyage or a call VesselVoyage, VoyagePortCall

Vocabularies

  • VesselVoyage.status: DRAFT · CONFIRMED · UNDERWAY · COMPLETED · CANCELLED
  • VoyagePortCall.status: PLANNED · CONFIRMED · ARRIVED · DEPARTED · RECONCILED · CANCELLED
  • CallActivity.status: RECORDED · VERIFIED · CANCELLED
  • CallBerthVisit.position_type: BERTH · ANCHORAGE · OFF_BERTH; status: OPEN · CLOSED · CORRECTED
  • CargoCallAllocation.status: UNMAPPED · MAPPED · RECONCILED · VARIANCE · SUPERSEDED
  • CargoOperationFact.operation_type: LOAD · DISCHARGE; status: RECORDED · VERIFIED · DISPUTED · CANCELLED
  • VoyageException.exception_type: CALL_MAPPING_MISSING · CARGO_TALLY_VARIANCE · PORT_COST_VARIANCE · APPOINTMENT_MISMATCH · DEPARTURE_BLOCKED; status: OPEN · RESOLVED
  • ManifestCargoSnapshot.status: CURRENT · SUPERSEDED · CONFLICT · PENDING

Run, seed, regenerate

python server/run.py coast_06_voyage                    # http://localhost:5159
python -m codegen.cli all coast_06_voyage               # regenerate models, controllers and JSON after a schema change
python -m codegen.cli integration coast_06_voyage       # regenerate the integration package (handlers.py and rules.py are never overwritten)
python -m codegen.cli seed coast_06_voyage --reset      # reload the sample data
python scripts/build_diagram_viewer.py coast_06_voyage  # rebuild the interactive diagram