Files
ERP_Distribution/Distribution/Models/GlPostingLog.cs
HarithaRandunu ca81e9bc42 feat: add General Ledger integration and financial reporting features
- Implemented General Ledger client component for managing GL integration.
- Created a dedicated page for General Ledger configuration.
- Developed Finance Report client component for generating various financial reports.
- Added report blocks for structured display of financial data.
- Introduced API endpoints for fetching GL accounts and financial reports.
- Updated navigation to include links for GL integration and financial reports.
- Enhanced permissions to manage GL and view financial reports.
- Updated appsettings to include General Ledger API configuration.
2026-10-20 18:54:30 +05:30

25 lines
1020 B
C#

namespace Distribution.Models
{
public enum GlPostingStatus { Pending, Posted, Failed }
/// <summary>
/// One row per journal entry Distribution sends to the General Ledger service. (Event, SourceId) is unique,
/// so a business event can never be posted twice; Failed rows keep their payload and can be retried.
/// </summary>
public class GlPostingLog : Template
{
public string Event { get; set; } = string.Empty;
public Guid SourceId { get; set; }
public string Reference { get; set; } = string.Empty;
public GlPostingStatus Status { get; set; } = GlPostingStatus.Pending;
/// <summary>The journal entry body (without periodId, which is resolved from EntryDate at send time).</summary>
public string PayloadJson { get; set; } = string.Empty;
public string? GlJournalNo { get; set; }
public string? Error { get; set; }
public int Attempts { get; set; }
public DateTime? LastAttemptAt { get; set; }
}
}