Introduced CargoPartner and CargoTruck entities for logistics, updated Shipping and IShipping to link to carrier and vehicles, and enhanced UI grids for selection and validation. Updated documentation and glossary to reflect new logistics model and terminology. Removed obsolete Shippings navigation from CargoPartner. |
||
|---|---|---|
| .. | ||
| Databases | ||
| Dtos | ||
| Entities | ||
| Enums | ||
| Helpers | ||
| Interfaces | ||
| Loggers | ||
| Models | ||
| Services | ||
| SignalRs | ||
| docs | ||
| DocumentType.cs | ||
| FruitBank.Common.csproj | ||
| FruitBankConstClient.cs | ||
| README.md | ||
README.md
FruitBank.Common
@project { type = "product" own-dep-projects = [ "AyCode.Core, AyCode.Entities, AyCode.Interfaces, AyCode.Models, AyCode.Services, AyCode.Utils (in AyCode.Core repo)", "Mango.Nop.Core (in Mango.Nop Libraries repo)" ] }
Shared domain library for the FruitBank nopCommerce plugin. Contains entities, DTOs, interfaces, measurement helpers, SignalR tags, and constants for fruit & vegetable wholesale operations.
Folder Structure
| Folder | Purpose |
|---|---|
Databases/ |
Local in-memory database abstraction for offline/cached data |
Dtos/ |
Binary-serializable DTOs for Order, OrderItem, Product, StockQuantityHistory |
Entities/ |
Domain entities: Shipping, Partner, measurement pallets, inventory |
Enums/ |
MeasuringStatus and DocumentType enums |
Helpers/ |
Measurement aggregation utilities |
Interfaces/ |
SignalR endpoint contracts, measurement traits, entity interfaces |
Loggers/ |
SignalR client log writer |
Models/ |
Authentication state, measurement view models |
Services/ |
Measurement service base, credential persistence |
SignalRs/ |
SignalR method tags (numeric constants) |
Key Files (Root)
FruitBankConstClient.cs— Global constants: BaseUrl, SignalR hubs, database table names, email templates, system settings.DocumentType.cs— Enum: ShippingDocument, OrderConfirmation, Invoice.
Key Domain Concepts
- Shipping = INBOUND (supplier → warehouse), Order = OUTBOUND (warehouse → customer)
- "Pallet" = measurement record, always created even for non-measurable products
- NetWeight = GrossWeight − PalletWeight − (TrayQuantity × TareWeight)
- See
docs/GLOSSARY.mdfor full terminology