コード例 #1
0
        /// <summary>
        /// Construct a Statement from source OFX data - StatementResponse object (credit card account)
        /// </summary>
        /// <param name="sourceOFX">OFX CreditCardStatementResponse object retrieved from FI</param>
        public Statement(CreditCardStatementResponse statementResponse)
        {
            // Parse account information
            OwningAccount = Account.Create(statementResponse.CCACCTFROM);

            // Parse currency into a string
            Currency = statementResponse.CURDEF.ToString();

            // Parse statement date range
            StartDate = OFXUtils.DateFromOFX(statementResponse.BANKTRANLIST.DTSTART);
            EndDate   = OFXUtils.DateFromOFX(statementResponse.BANKTRANLIST.DTEND);

            // Parse account balance
            AccountBalance = OFXUtils.DecimalStringToFixedInt(statementResponse.LEDGERBAL.BALAMT);

            // Convert OFX transactions into our normalized Transaction objects
            if (statementResponse.BANKTRANLIST.STMTTRN != null)
            {
                var unorderedTransactions = from ofxTransaction in statementResponse.BANKTRANLIST.STMTTRN
                                            select new Transaction(ofxTransaction);

                Transactions = new List <Transaction>(unorderedTransactions.OrderByDescending(trans => trans.PostDate));
            }
            else
            {
                Transactions = new List <Transaction>();
            }
        }
コード例 #2
0
ファイル: Statement.cs プロジェクト: rhadman/SoDotCash
        /// <summary>
        /// Construct a Statement from source OFX data - StatementResponse object (credit card account)
        /// </summary>
        /// <param name="sourceOFX">OFX CreditCardStatementResponse object retrieved from FI</param>
        public Statement(CreditCardStatementResponse statementResponse)
        {
            // Parse account information
            OwningAccount = Account.Create(statementResponse.CCACCTFROM);

            // Parse currency into a string
            Currency = statementResponse.CURDEF.ToString();

            // Parse statement date range
            StartDate = OFXUtils.DateFromOFX(statementResponse.BANKTRANLIST.DTSTART);
            EndDate = OFXUtils.DateFromOFX(statementResponse.BANKTRANLIST.DTEND);

            // Parse account balance
            AccountBalance = OFXUtils.DecimalStringToFixedInt(statementResponse.LEDGERBAL.BALAMT);

            // Convert OFX transactions into our normalized Transaction objects
            if (statementResponse.BANKTRANLIST.STMTTRN != null)
            {
                var unorderedTransactions = from ofxTransaction in statementResponse.BANKTRANLIST.STMTTRN
                    select new Transaction(ofxTransaction);

                Transactions = new List<Transaction>(unorderedTransactions.OrderByDescending(trans => trans.PostDate));
            }
            else
                Transactions = new List<Transaction>();
        }