FruitBankHybridApp/FruitBank.Common/Entities
Loretta 5b0b080b5a [LOADED_DOCS: 3 files, no new loads]
Rename ShallowCopy to FlatCopy, add polymorph support

- Renamed all "ShallowCopy" serializer presets and references to "FlatCopy" for clarity and consistency.
- Expanded documentation to clarify flat serialization use cases, especially for delta-update and partial-write scenarios.
- Added EnablePolymorphDetectFeature to AcBinarySerializableAttribute and updated all constructor overloads.
- Set UsePolymorphType = true in AcBinarySourceGenerator to enable polymorphic type support by default.
- Updated all [AcBinarySerializable(...)] usages to include new feature flags, explicitly disabling property filter and polymorph detection for affected types.
- Improved comments and documentation for maintainability.
2026-05-15 08:40:53 +02:00
..
Files.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
MeasuringItemPalletBase.cs Enable source-generated binary serialization & AOT 2026-03-07 14:05:39 +01:00
OrderItemPallet.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
Pallet.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
Partner.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
README.md Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Shipping.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
ShippingDocument.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
ShippingDocumentToFiles.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
ShippingItem.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
ShippingItemPallet.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
StockQuantityHistoryExt.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
StockTaking.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
StockTakingItem.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40:53 +02:00
StockTakingItemPallet.cs [LOADED_DOCS: 3 files, no new loads] 2026-05-15 08:40: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.

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.