Commit Graph

8 Commits

Author SHA1 Message Date
Loretta e9438e4374 Ekaer validation tightened, SignalR tags, doc updates
- Enforce `weight > 0` and `value > 0` for each trade item in `EkaerTradeCardValidator` (NAV 2021+ requirement); add tests for zero/missing values.
- Add grid layout roaming tags (90010–90012) to `AcSignalRTags` for key-value layout storage.
- Suppress info-level logging for SignalR ping messages in `AcBinaryHubProtocol`.
- Update EKÁER and SignalR documentation with new rules, tags, and latest legal references (2026-07).
- Add new build/test scripts to `settings.local.json`.
2026-07-10 15:36:58 +02:00
Loretta ad7d5813cb 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
Loretta 52541628f9 Add EKÁER XML support for outgoing orders, refactor config
- Introduced IEkaerSettings interface and refactored code to use it for DI/testability
- Added support for generating EKÁER XML from outgoing orders (OrderDto)
- Extended service and mapper interfaces for outgoing order handling
- Implemented MapOrder and value calculation for order items
- Replaced UnloadLocation with Site in EkaerCompanyInfo for general site usage
- Updated tests, SignalR/controller interfaces, and UI to support new features and signatures
- Improved documentation and code clarity throughout
2026-06-12 07:54:38 +02:00
Loretta d2fadaa136 Add EKÁER history grid, detail view, and entity support
- Introduced `EkaerHistory` entity with status enum and new properties for EKÁER declaration lifecycle tracking.
- Added CRUD methods for `EkaerHistory` in controller interface and SignalR client.
- Implemented `GridEkaerHistory` and `GridEkaerDetail` components for displaying EKÁER records and trade card details.
- Enhanced `TradeCardItemType` with `IId<int>` for grid compatibility.
- Improved AcSignalRDataSource to skip server refresh for tagless/local data sources.
- Updated settings to include .NET 9 runtime install commands.
2026-06-10 16:24:53 +02:00
Loretta aed36a71cb Improve SignalR client deserialization and docs
- Enhanced error handling in streaming methods of AcSignalRClientBase: deserialization errors are now logged and skipped instead of throwing.
- SignalResponseDataMessage.GetResponseData<T>() now throws InvalidCastException on type mismatch (was silent/null before).
- Updated README to document new casting and error behavior.
- Added Bash(dotnet workload *) command to settings.local.json.
- Removed GeneratedCode attribute from LocationType.cs.
2026-06-07 07:19:47 +02:00
Loretta d2bdf7e4eb 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
Loretta 3db26fbfa3 Add EKÁER submit/validation layer with tests
Introduced IEkaerSubmitService and EkaerSubmitService for orchestrated EKÁER trade card validation and submission, with result encapsulation via EkaerSubmitResult. Added IEkaerTradeCardValidator and EkaerTradeCardValidator for schema and business rule validation. Comprehensive unit tests cover validation logic and submission flow. All code is generic and project-agnostic.
2026-06-02 15:23:42 +02:00
Loretta a4cd8f3f0f Add NAV/EKÁER reporting layer to AyCode.Services
- Nav/ base layer: INav* interfaces, NavAuthHelper (SHA-512 passwordHash +
  requestSignature in UTC), NavXmlHelper (UTF-8 XML), NavReportServiceBase
  (HTTP POST + (de)serialize + error handling), NavReportException.
- Nav/Ekaer/: 62 XSD-generated models (Models/ + Models/Common/ — separate
  namespaces resolve the TradeCardType enum-vs-class clash), 5 partial adapters
  binding the generated types to the Nav interfaces, EkaerManageService +
  EkaerQueryService.
- Nav/docs/: ekaermanagement.xsd + common.xsd + LLM-friendly extracts
  (INTERFACE / TRADECARD / OPERATIONS / VALIDATION).
- AyCode.Services.Tests/Nav/: NavAuthHelper verified against the official EKÁER
  PDF test vector + adapter interface-mapping tests (10 pass).
- csproj: register Nav/docs *.xsd and *.md.
2026-06-01 15:40:35 +02:00