- Introduced EkaerConsignment model for direction-agnostic mapping (inbound/outbound), centralizing normalization and aggregation. - Refactored IShippingToEkaerMapper and service interfaces to use new model and expose obligation evaluation. - Added EkaerReportability logic for robust, threshold-based reporting obligation checks with error handling. - Updated UI and SignalR to support detailed creation results and user feedback for skipped entries. - Enhanced tests and documentation to cover new mapping, evaluation, and legal context. - Minor config/protocol adjustments for improved reliability. |
||
|---|---|---|
| .. | ||
| EkaerCreateResult.cs | ||
| GenericAttributeDto.cs | ||
| MeasuringProductDto.cs | ||
| OrderDto.cs | ||
| OrderItemDto.cs | ||
| ProductDto.cs | ||
| README.md | ||
| StockQuantityHistoryDto.cs | ||
README.md
Dtos
Binary-serializable DTOs for efficient SignalR communication. All marked with [AcBinarySerializable].
Key Files
OrderDto.cs— Order with items, measurement status, auditing, receipt date, GenericAttributes. Computed: IsMeasured, IsComplete, MeasuringStatus, RevisorId.OrderItemDto.cs— Order line item with OrderItemPallet collection. Computed: NetWeight, GrossWeight, AverageWeight, AverageWeightIsValid, IsMeasured, IsAudited.ProductDto.cs— Product with GenericAttribute-backed properties: IsMeasurable, Tare, AverageWeight, AverageWeightTreshold, IncomingQuantity, NetWeight.StockQuantityHistoryDto.cs— Stock history with net weight adjustments and inconsistency detection.GenericAttributeDto.cs— Key-value attribute wrapper. Polymorphic: KeyGroup = owner type, EntityId = owner ID.
Why DTOs Exist
nopCommerce entities (Order, OrderItem, Product) are extended with measurement logic via these DTOs. The DTOs add computed properties and GenericAttribute access that the raw nopCommerce entities don't have.