FruitBankHybridApp/FruitBank.Common
Loretta 1e41632599 EKÁER: add warning/error distinction, status, and filters
- Validation now distinguishes blocking errors from warnings; only errors block submission, warnings are shown but allow progress.
- Introduced EkaerSeverity, EkaerValidationMessage, and severity-aware extensions for validation results.
- Extended EkaerHistory.Status with GeneratedWithWarning and SentWithMissingData; added EkaerStatusExtensions for status categorization.
- Added EkaerHistoryFilter for server-side filtering; updated SignalR and controller interfaces accordingly.
- UI now displays error/warning messages with color/icons, supports new status tabs/filters, and restricts XML copying to submittable records.
- Refactored validation and error handling to use new severity logic; updated comments and minor code for clarity.
2026-06-12 09:00:26 +02:00
..
Databases Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Dtos Refactor EKÁER mapping: unify company info, doc updates 2026-06-03 16:58:47 +02:00
Entities EKÁER: add warning/error distinction, status, and filters 2026-06-12 09:00:26 +02:00
Enums Refactor PreOrder and CargoTruck models, add ICargoTruck 2026-05-30 16:26:59 +02:00
Helpers Update docs: enforce .md sync, clarify structure & TFMs 2026-03-29 09:26:16 +02:00
Interfaces EKÁER: add warning/error distinction, status, and filters 2026-06-12 09:00:26 +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 Add EKÁER XML support for outgoing orders, refactor config 2026-06-12 07:54:38 +02:00
SignalRs EKÁER grid: status enum fix, batch create, UI/UX, DB guard 2026-06-11 08:52:10 +02:00
docs Refactor EKÁER mapping: unify company info, doc updates 2026-06-03 16:58:47 +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 PartnerDepot and EkaerHistory entities, update tags 2026-06-05 06:18:33 +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