//! Data Transfer Objects der Application-Schicht. //! //! DTOs aggregieren Domänenobjekte zu **Use-Case-Antworten** und //! beschreiben die Eingaben für Sync-Operationen. Sie bleiben bewusst //! im Application-Layer (nicht im Domain-Layer), weil sie eine //! Use-Case-Sicht auf die Daten sind, kein Stück Geschäftslogik — //! ein anderer Use-Case darf eine andere Projektion liefern. //! //! Serde- und (optional) utoipa-Annotationen erlauben, dieselbe //! Struktur direkt als HTTP-Antwort zu serialisieren — das spart eine //! zweite Schicht handgeschriebener API-DTOs. pub mod car; pub mod complete; pub mod credit; pub mod delivery_action; pub mod delivery_details; pub mod delivery_report; pub mod delivery_order; pub mod note; pub mod payment_method; pub mod scan; pub mod service; pub mod tour_details; pub mod tour_summary; pub mod tour_sync; pub use car::{ AssignCarRequest, CarResponse, CarsList, CreateCarRequest, UpdateCarRequest, }; pub use complete::CompleteDeliveryAcknowledgements; pub use credit::{CreditAction, DeliveryCreditEventRequest, DeliveryCreditResponse}; pub use delivery_report::{ DeliveryReportData, ReportAttachment, ReportCompletion, ReportContact, ReportCreditAudit, ReportItem, ReportNote, ReportScanAudit, ReportService, }; pub use delivery_action::{CancelDeliveryRequest, DeliveryResponse, HoldDeliveryRequest}; pub use delivery_details::DeliveryDetails; pub use delivery_order::{ DeliveryOrderEntry, SetDeliveryOrderRequest, SetDeliveryOrderResponse, }; pub use note::{ CreateDeliveryNoteRequest, DeliveryNoteResponse, UpdateDeliveryNoteRequest, }; pub use payment_method::{ CreatePaymentMethodRequest, PaymentMethodResponse, PaymentMethodsList, UpdatePaymentMethodRequest, }; pub use scan::{ ApplyScansRequest, ApplyScansResponse, ScanEvent, ScanResult, ScanResultStatus, }; pub use service::{ CreateServiceRequest, DeliveryServiceResponse, ServiceResponse, ServicesList, SetDeliveryServiceRequest, UpdateServiceRequest, }; pub use tour_details::{DeliveryWithItems, TourDetails}; pub use tour_summary::TourSummary; pub use tour_sync::{ SyncContactChannel, SyncContactSource, SyncDelivery, SyncDeliveryItem, SyncTourRequest, };