Exemplo n.º 1
0
        public void Apply(GeneralLedgerEntry generalLedgerEntry, ChartOfAccounts chartOfAccounts)
        {
            var(accountsPayable, inventoryInTransit) =
                PurchaseOrderItems.Aggregate((new Credit(new AccountNumber(2150)), new Debit(new AccountNumber(1400))),
                                             Accumulate);

            generalLedgerEntry.ApplyCredit(accountsPayable, chartOfAccounts);
            generalLedgerEntry.ApplyDebit(inventoryInTransit, chartOfAccounts);
            generalLedgerEntry.ApplyTransaction(this);
        }
Exemplo n.º 2
0
            public void Apply(GeneralLedgerEntry generalLedgerEntry, AccountIsDeactivated accountIsDeactivated)
            {
                foreach (var credit in _credits)
                {
                    generalLedgerEntry.ApplyCredit(credit, accountIsDeactivated);
                }

                foreach (var debit in _debits)
                {
                    generalLedgerEntry.ApplyDebit(debit, accountIsDeactivated);
                }
            }
Exemplo n.º 3
0
 public void Apply(GeneralLedgerEntry entry, ChartOfAccounts chartOfAccounts)
 {
     entry.ApplyDebit(new Debit(new AccountNumber(1000), new Money(5m)), chartOfAccounts);
     entry.ApplyCredit(new Credit(new AccountNumber(3000), new Money(5m)), chartOfAccounts);
     entry.ApplyTransaction(this);
 }