namespace AccountsDAL.DTO.Account { // Was a scaffolded-but-never-wired shell (referenced nowhere else in the backend) mirroring the // legacy GB4 KPI-card shape 1:1, including two child list properties (InchargeWiseReceivableDTOs/ // AgeingWiseReceivableDTOs) that duplicated what AccountOutstandingSummaryReport/ // AccountAgeingSummaryReport already serve on their own — removed here rather than populated a // second time. Also dropped the GB4-era *Short string twins (server-formatted display strings); // confirmed via the FE template that nothing renders them — Angular's own number/currency pipes // already handle that client-side. // // Now backed by AccountOutstandingKpiReport (GetOutstandingKpiSummary). Semantics are // deliberately NOT a literal copy of legacy's own confusing ones (legacy's "ODReceivableAmount" // could exceed "ReceivableAmount" — not a true subset): every OD/overdue figure here is defined // as a strict subset of its own total (Receivable-side only), so QDReceivableAmount <= // ReceivableAmount and NoBillOverdue <= NumberOfBills always hold. UnAdjustedAmount is the // Payable side of the same PB.BALANCE sign split used by AccountOutstandingSummaryReport — the // FE's own table columns already label "Payable" as "Unadjusted", so this keeps that mapping // explicit rather than inventing a third, disconnected concept. // // ODPayableAmount/NoBillOverduePayable/PayableOverduePercent added for the Payable Dashboard // (no Receivable-side field renamed/removed — this DTO is already live behind the Receivable // Dashboard's KPI cards, so the only safe change is additive). Same subset guarantee as the // Receivable side: ODPayableAmount <= UnAdjustedAmount, NoBillOverduePayable <= NosUnAdjust. public class AccountReceivableDTO { public decimal ReceivableAmount { get; set; } public decimal ODReceivableAmount { get; set; } public decimal ODReceivablePercent { get; set; } public int NumberOfBills { get; set; } public int NoBillOverdue { get; set; } public decimal NoBillPercentage { get; set; } public decimal UnAdjustedAmount { get; set; } public int NosUnAdjust { get; set; } public decimal BalanceAmount { get; set; } public decimal ODPayableAmount { get; set; } public int NoBillOverduePayable { get; set; } public decimal PayableOverduePercent { get; set; } } }