Files
Distribution_GL/Models/JournalEntry.cs
T

62 lines
2.4 KiB
C#

using General_Ledger_Service.Enums;
namespace General_Ledger_Service.Models
{
public class JournalEntry
{
public long JournalId { get; set; }
public string JournalNo { get; set; } = string.Empty;
public int PeriodId { get; set; }
public DateOnly EntryDate { get; set; }
public string JournalType { get; set; } = string.Empty;
public string? SourceModule { get; set; }
public string? Reference { get; set; }
public string? Narration { get; set; }
public bool IsPosted { get; set; }
public bool IsReversed { get; set; }
public long? ReversalOfId { get; set; }
public JournalEntryStatus EntryStatus { get; set; }
public string? PreparedBy { get; set; }
public DateTime CreatedAt { get; set; }
public AccountingPeriod Period { get; set; } = null!;
public JournalEntry? ReversalOf { get; set; }
public ICollection<JournalEntryLine> Lines { get; set; } = new List<JournalEntryLine>();
}
public class JournalEntryLine
{
public long LineId { get; set; }
public long JournalId { get; set; }
public long AccountId { get; set; }
public decimal DebitAmount { get; set; }
public decimal CreditAmount { get; set; }
public string CurrencyCode { get; set; } = string.Empty;
public decimal ExchangeRate { get; set; }
public decimal BaseDebit { get; set; }
public decimal BaseCredit { get; set; }
public long? CostCenterId { get; set; }
public string? Memo { get; set; }
public DateTime CreatedAt { get; set; }
public JournalEntry Journal { get; set; } = null!;
public Account Account { get; set; } = null!;
public CostCenter? CostCenter { get; set; }
public Currency Currency { get; set; } = null!;
}
public class JournalCorrection
{
public long CorrectionId { get; set; }
public long OriginalJournalId { get; set; }
public long CorrectionJournalId { get; set; }
public JournalCorrectionType CorrectionType { get; set; }
public string Reason { get; set; } = string.Empty;
public string? CorrectedBy { get; set; }
public DateTime CreatedAt { get; set; }
public JournalEntry OriginalJournal { get; set; } = null!;
public JournalEntry CorrectionJournal { get; set; } = null!;
}
}