FruitBankHybridApp/FruitBank.Common/Entities
Loretta 0a1287ce67 Refactor EKÁER mapping: unify company info, doc updates
- Introduced ICompanyInfoBase for standardized company/partner data; refactored PartnerBase and interfaces to implement it
- Replaced EkaerMappingOptions with EkaerCompanyInfo; updated all usages, constructors, and tests
- Refactored EKÁER mapping logic to use ICompanyInfoBase; improved normalization and address handling
- Added regex/validation for plate numbers and country codes; new error codes
- Added Currency to PartnerBase; updated grids to display it
- Updated ProductDto doc for GTIN/VTSZ data model issue
- Enabled validation in CargoTruck grid
- Added DMODEL topic docs: TOPIC_CODES.md, DATAMODEL_ISSUES.md, README.md
- Removed obsolete files and updated settings.local.json
- General code and doc improvements for maintainability
2026-06-03 16:58:47 +02:00
..
CargoPartner.cs Add CargoPartner/CargoTruck entities and logistics links 2026-05-31 14:00:44 +02:00
CargoTruck.cs Refactor EKÁER mapping: unify company info, doc updates 2026-06-03 16:58:47 +02:00
CustomerCredit.cs Refactor partner model, add CargoPartner/Truck entities 2026-05-28 17:47:53 +02:00
Files.cs Refactor partner model, add CargoPartner/Truck entities 2026-05-28 17:47:53 +02:00
MeasuringItemPalletBase.cs Enable source-generated binary serialization & AOT 2026-03-07 14:05:39 +01:00
OrderItemPallet.cs Refactor partner model, add CargoPartner/Truck entities 2026-05-28 17:47:53 +02:00
Pallet.cs Refactor partner model, add CargoPartner/Truck entities 2026-05-28 17:47:53 +02:00
Partner.cs Refactor partner model, add CargoPartner/Truck entities 2026-05-28 17:47:53 +02:00
PartnerBase.cs Refactor EKÁER mapping: unify company info, doc updates 2026-06-03 16:58:47 +02:00
Preorder.cs Enhance ToonDescription docs for PreOrder entities 2026-05-30 17:07:29 +02:00
PreorderItem.cs Enhance ToonDescription docs for PreOrder entities 2026-05-30 17:07:29 +02:00
README.md Add CargoPartner/CargoTruck entities and logistics links 2026-05-31 14:00:44 +02:00
Shipping.cs Deduplicate property overrides; Shipping carrier nullable 2026-05-31 14:52:40 +02:00
ShippingDocument.cs Deduplicate property overrides; Shipping carrier nullable 2026-05-31 14:52:40 +02:00
ShippingDocumentToFiles.cs Refactor partner model, add CargoPartner/Truck entities 2026-05-28 17:47:53 +02:00
ShippingItem.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
ShippingItemPallet.cs Refactor partner model, add CargoPartner/Truck entities 2026-05-28 17:47:53 +02:00
StockQuantityHistoryExt.cs Refactor partner model, add CargoPartner/Truck entities 2026-05-28 17:47:53 +02:00
StockTaking.cs Refactor partner model, add CargoPartner/Truck entities 2026-05-28 17:47:53 +02:00
StockTakingItem.cs Refactor partner model, add CargoPartner/Truck entities 2026-05-28 17:47:53 +02:00
StockTakingItemPallet.cs Refactor partner model, add CargoPartner/Truck entities 2026-05-28 17:47:53 +02:00

README.md

Entities

Domain entities for inbound/outbound goods tracking and inventory. All map to fb-prefixed database tables.

Shipping (Inbound)

  • Shipping.cs — Physical delivery event (truck arrival). Table: fbShipping.
  • ShippingDocument.cs — Supplier delivery note/invoice. Table: fbShippingDocument.
  • ShippingItem.cs — Product line on document with declared vs measured discrepancies. Table: fbShippingItem.
  • ShippingItemPallet.cs — Measurement record for incoming goods. Table: fbShippingItemPallet.
  • ShippingDocumentToFiles.cs — Many-to-many link: document ↔ file with DocumentType. Table: fbShippingDocumentToFiles.
  • Partner.cs — External supplier with address and tax info. Table: fbPartner.

Cargo / Logistics

  • CargoPartner.cs — Freight/haulage partner (carrier). Distinct from Partner (supplier) — this is the transport side. Has CargoTrucks and Shippings collections. Table: fbCargoPartner.
  • CargoTruck.cs — Individual truck belonging to a CargoPartner (LicencePlate, CountryCode, IsTrailer for trailers). Table: fbCargoTruck.

Order (Outbound)

  • OrderItemPallet.cs — Measurement record for outgoing goods with RevisorId for audit. Table: fbOrderItemPallet.

Inventory

  • StockTaking.cs — Inventory session record. Table: fbStockTaking.
  • StockTakingItem.cs — Line item reconciling snapshot vs measured quantities. Table: fbStockTakingItem.
  • StockTakingItemPallet.cs — Measurement record for inventory. Table: fbStockTakingItemPallet.
  • StockQuantityHistoryExt.cs — Extended weight metadata for stock reconciliation.

Shared

  • MeasuringItemPalletBase.cs — Abstract base for all three measurement hierarchies. Defines NetWeight formula, validation methods, CreatorId/ModifierId tracking.
  • Pallet.cs — Physical pallet type definition (name, size, weight). Table: fbPallet.
  • Files.cs — Uploaded file with OCR-extracted RawText. Table: fbFiles.

Critical: "Pallet" Naming

Despite the name, XxxItemPallet entities are measurement records, NOT physical pallets. They are ALWAYS created for every item. For non-measurable products, weights = 0.0 and only TrayQuantity is tracked.