FruitBankHybridApp/FruitBank.Common
Loretta aecd54ffdd [LOADED_DOCS: 4 files, no new loads]
Refactor docs: topic folders, TOON, XCUT, protocol sync

- Migrated all topic documentation into dedicated folders with canonical `README.md`, `ISSUES.md`, and `TODO.md` per topic (e.g., `LOGGING/`, `SIGNALR/`, `BINARY/`, `TOON/`).
- Added comprehensive TOON serializer documentation: design, format, options, attributes, inference, issues, and TODOs.
- Introduced `XCUT` folder for cross-cutting issues and TODOs, with canonical entries and topic cross-references.
- Updated all references and navigation to use new folder-based doc paths; fixed links and clarified doc structure.
- Enhanced AI agent protocol: enforce session skill preloading, `[LOADED_DOCS: ...]` short-name prefix, and mandatory `docs-check` skill for doc/code sync.
- Updated `.csproj` to include all `README.md` files for IDE visibility.
- Improved and clarified SignalR, grid, and project-level documentation.
- Minor code/test tweaks and doc content corrections for consistency.
2026-04-24 21:54:04 +02:00
..
Databases Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Dtos Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Entities Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Enums Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Helpers Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Interfaces Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Loggers Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Models Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Services Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
SignalRs Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
docs [LOADED_DOCS: 4 files, no new loads] 2026-04-24 21:54:04 +02:00
DocumentType.cs ShippingDocumentToFiles fix; 2025-10-19 15:08:02 +02:00
FruitBank.Common.csproj Merge branch 'main' into FruitBank_v0.0.8.0 2026-03-28 16:23:29 +01:00
FruitBankConstClient.cs Improve docs, naming, and reference handling for Toon/DTOs 2026-01-16 09:28:17 +01:00
README.md Add structured metadata and update doc references 2026-03-30 08:54:33 +02:00

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.md for full terminology