コード例 #1
0
ファイル: Reserve.cs プロジェクト: kofrasa/BudgetPal
        public Dictionary<DateTime, CashFlow> GetCashFlowByDate(Period period)
        {
            var cashflow = new Dictionary<DateTime, CashFlow>();
            var flow = new CashFlow();

            foreach (var t in Document.GetTransactions(period, this))
            {
                if (!cashflow.ContainsKey(t.Date))
                    cashflow.Add(t.Date, flow = new CashFlow());

                flow = cashflow[t.Date];

                if (t.Source == this)
                    flow.Outflow += t.Amount;
                else
                    flow.Inflow += t.Amount;

                cashflow[t.Date] = flow;
            }
            return cashflow;
        }
コード例 #2
0
ファイル: Reserve.cs プロジェクト: kofrasa/BudgetPal
        public Dictionary<ITransactable, CashFlow> GetCashFlowByContribution(Period period)
        {
            var cashflow = new Dictionary<ITransactable, CashFlow>();
            var flow = new CashFlow();
            ITransactable obj = null;

            foreach (var t in Document.GetTransactions(period, this))
            {
                obj = (t.Source == this) ? t.Target : t.Source;

                if (!cashflow.ContainsKey(obj))
                    cashflow.Add(obj, flow = new CashFlow());

                flow = cashflow[obj];

                if (t.Source == this)
                    flow.Outflow += t.Amount;
                else
                    flow.Inflow += t.Amount;

                cashflow[obj] = flow;
            }
            return cashflow;
        }