FruitBankHybridApp/FruitBank.Common
Loretta 25265c02f8 Add platform env-badge to app title via IAppTitleService
Introduced IAppTitleService for platform-agnostic environment badge in the app title ("[PROD]" or "[DEV] FruitBank"), with implementations for Web (document.title), MAUI (window title), and server (no-op). Registered the service per platform in DI. MainLayout now updates the title reactively on environment changes via FruitBankConstClient.IsProdChanged. Improved event handling and prevented redundant environment hydration calls. No business logic affected; changes are UI/infrastructure only.
2026-07-14 07:04:10 +02:00
..
Databases Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Dtos site, license plate 2026-06-27 01:56:58 +02:00
Entities xml download 2026-07-10 12:54:58 +02:00
Enums OrderDraft feature 2026-06-23 23:33:18 +02:00
Helpers Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Interfaces Add environment guard & EKÁER NAV submit; test safety 2026-07-13 19:00:13 +02:00
Loggers Update logger SignalR hub to use LogItemClient wire type 2026-07-13 08:38:37 +02:00
Models Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Services Enable server-roaming for grid layouts; EKÁER depot guard 2026-07-10 15:37:26 +02:00
SignalRs Add environment guard & EKÁER NAV submit; test safety 2026-07-13 19:00:13 +02:00
docs Switch archive policy to year-month buckets (LLMP-DEC-67) 2026-06-15 18:01:44 +02:00
DocumentType.cs ShippingDocumentToFiles fix; 2025-10-19 15:08:02 +02:00
FruitBank.Common.csproj Add XML doc standards; enable compiler-generated files 2026-05-23 09:27:29 +02:00
FruitBankConstClient.cs Add platform env-badge to app title via IAppTitleService 2026-07-14 07:04:10 +02: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