namespace CashLineERP.Contracts.IslamicFinance;

public sealed class IslamicFinanceReceivablesCaseResponse
{
    public long Id { get; set; }
    public string CaseNumber { get; set; } = string.Empty;
    public long FinancingRequestId { get; set; }
    public long CustomerPartyId { get; set; }
    public long PartnerLenderId { get; set; }
    public long? FacilityId { get; set; }
    public long ProductProfileId { get; set; }
    public string TransactionCurrencyCode { get; set; } = string.Empty;
    public decimal TotalReceivableAmount { get; set; }
    public decimal FinancedAmount { get; set; }
    public decimal AdvanceRatePercent { get; set; }
    public string StatusCode { get; set; } = string.Empty;
    public long? WorkflowInstanceId { get; set; }
    public DateTime CreatedAtUtc { get; set; }
    public long? CreatedByUserId { get; set; }
    public DateTime? SubmittedAtUtc { get; set; }
    public long? SubmittedByUserId { get; set; }
    public DateTime? ApprovedAtUtc { get; set; }
    public long? ApprovedByUserId { get; set; }
    public DateTime? ActivatedAtUtc { get; set; }
    public long? ActivatedByUserId { get; set; }
    public DateTime? UpdatedAtUtc { get; set; }
    public long? UpdatedByUserId { get; set; }
    public IReadOnlyCollection<IslamicFinanceReceivablesCaseLineResponse> Lines { get; set; } = [];
}
