Exemplo n.º 1
0
        private void AddTransaction()
        {
            AccountTransactions trans = new AccountTransactions();

            trans.Description     = "Unit Test";
            trans.AccountName     = "Savings";
            trans.Balanced        = true;
            trans.ID              = 2;
            trans.TransactionDate = DateTime.Parse("3/1/2008");
            Transaction t1 = new Transaction();

            t1.Amount            = 1234;
            t1.TransactionBudget = "Other";
            t1.Categories.Add("Cat1");
            Transaction t2 = new Transaction();

            t2.Amount            = 4321;
            t2.TransactionBudget = "Other1";
            t2.Categories.Add("Cat2");
            t2.Categories.Add("Cat3");
            trans.Transactions.Add(t1);
            trans.Transactions.Add(t2);

            da.AddTransaction(trans);
        }
Exemplo n.º 2
0
        public void DeleteTransaction(AccountTransactions trans)
        {
            //Remove from the list
            foreach (AccountTransactions t in _transactions)
            {
                if (t.ID == trans.ID)
                {
                    _transactions.Remove(t);
                    break;
                }
            }
            //Query for the correct node in the _accountFile
            var transaction = (from accounttrans in _accountFile.Descendants("transaction")
                               where (int)accounttrans.Attribute("id") == trans.ID
                               select accounttrans);

            //Pass it to remove
            transaction.Remove();
            //Save
            System.Xml.XmlTextWriter writer = new System.Xml.XmlTextWriter(_fileName, null);
            writer.Formatting = System.Xml.Formatting.Indented;
            _accountFile.WriteTo(writer);
            _reloadTransactions = true;
            writer.Close();
        }
Exemplo n.º 3
0
        public void AddTransaction(AccountTransactions trans)
        {
            //add the transaction into the list
            trans.ID = (++_maxTransID);

            _transactions.Add(trans);
            XElement element = new XElement("transaction",
                                            new XAttribute("date", trans.TransactionDate.ToShortDateString()),
                                            new XAttribute("id", trans.ID),
                                            new XAttribute("description", trans.Description),
                                            new XAttribute("AccountType", trans.AccountName),
                                            new XAttribute("Balanced", trans.Balanced));

            foreach (Transaction t in trans.Transactions)
            {
                XElement AmountElement = new XElement("amount");
                AmountElement.Add(new XAttribute("total", t.Amount),
                                  new XAttribute("budget", t.TransactionBudget));
                foreach (string cat in t.Categories)
                {
                    AmountElement.Add(new XElement("category",
                                                   new XAttribute("title", cat)));
                }
                element.Add(AmountElement);
            }
            //write the file
            _accountFile.Element("account").Add(element);
            System.Xml.XmlTextWriter writer = new System.Xml.XmlTextWriter(_fileName, null);
            writer.Formatting = System.Xml.Formatting.Indented;
            _accountFile.WriteTo(writer);
            _reloadTransactions = true;
            writer.Close();
        }
Exemplo n.º 4
0
        public void BalanceTransaction(int TransactionID)
        {
            // Find this transaction in the list and set it to be balanced
            AccountTransactions t = GetTransaction(TransactionID);

            t.Balanced = true;
            UpdateTransaction(t);
        }
Exemplo n.º 5
0
        public void TestUpdateTransaction()
        {
            da = new CDataAccess(fileName);
            Assert.IsNotNull(da);
            da.ReadAllTransations();
            AddTransaction();
            Assert.That(da.Transactions.Count == 3);

            AccountTransactions trans = new AccountTransactions();

            trans.Description     = "Unit Test";
            trans.ID              = 2;
            trans.AccountName     = "Savings";
            trans.Balanced        = true;
            trans.TransactionDate = DateTime.Parse("4/1/2008");
            Transaction t1 = new Transaction();

            t1.Amount            = 1235;
            t1.TransactionBudget = "Other";
            t1.Categories.Add("Cat1");
            Transaction t2 = new Transaction();

            t2.Amount            = 5321;
            t2.TransactionBudget = "Other1";
            t2.Categories.Add("Cat2");
            t2.Categories.Add("Cat4");
            trans.Transactions.Add(t1);
            trans.Transactions.Add(t2);

            da.UpdateTransaction(trans);
            da.ReadAllTransations();

            Assert.That(da.Transactions.Count == 3);
            Assert.That(da.Transactions[2].Description == "Unit Test");
            Assert.That(da.Transactions[2].ID == 2);
            Assert.That(da.Transactions[2].Balanced == true);
            Assert.That(da.Transactions[2].AccountName == "Savings");
            Assert.That(da.Transactions[2].TransactionDate == DateTime.Parse("4/1/2008"));
            Assert.That(da.Transactions[2].Transactions.Count == 2);
            Assert.That(da.Transactions[2].Transactions[0].Amount == 1235);
            Assert.That(da.Transactions[2].Transactions[0].TransactionBudget == "Other");
            Assert.That(da.Transactions[2].Transactions[0].Categories.Count == 1);
            Assert.That(da.Transactions[2].Transactions[0].Categories[0] == "Cat1");
            Assert.That(da.Transactions[2].Transactions[1].Amount == 5321);
            Assert.That(da.Transactions[2].Transactions[1].TransactionBudget == "Other1");
            Assert.That(da.Transactions[2].Transactions[1].Categories.Count == 2);
            Assert.That(da.Transactions[2].Transactions[1].Categories[0] == "Cat2");
            Assert.That(da.Transactions[2].Transactions[1].Categories[1] == "Cat4");
            DeleteTransaction();
        }
Exemplo n.º 6
0
        private void DeleteTransaction()
        {
            AccountTransactions trans = new AccountTransactions();

            trans.Description     = "Unit Test";
            trans.ID              = 2;
            trans.TransactionDate = DateTime.Parse("4/1/2008");
            Transaction t1 = new Transaction();

            t1.Amount            = 1235;
            t1.TransactionBudget = "Other";
            t1.Categories.Add("Cat1");
            Transaction t2 = new Transaction();

            t2.Amount            = 5321;
            t2.TransactionBudget = "Other1";
            t2.Categories.Add("Cat2");
            t2.Categories.Add("Cat4");
            trans.Transactions.Add(t1);
            trans.Transactions.Add(t2);

            da.DeleteTransaction(trans);
        }
Exemplo n.º 7
0
 /// <summary>
 /// Updates a single transaction in the list
 /// </summary>
 /// <param name="trans">the updated transaction (keys on id)</param>
 public void UpdateTransaction(AccountTransactions trans)
 {
     DeleteTransaction(trans);
     AddTransaction(trans);
 }