Map<String, dynamic> toJson() => { 'idempotencyKey': idempotencyKey, 'fromLocationId': fromLocationId, 'toLocationId': toLocationId, 'items': [for (final p in items) p.toJson()], 'note': ?note, };