Ejemplo n.º 1
0
        private void getUserStatistics(User currentUser)
        {
            int      numberOfTransactions = 0;
            int      totalIncome          = 0;
            int      totalSpendings       = 0;
            string   latestImportDate     = "";
            string   todaysDate           = DateTime.Now.ToString("yyyy-MM-dd");
            DateTime todayDate            = Convert.ToDateTime(todaysDate);

            usernameLabel.Content = currentUser.getUsername();
            foreach (var transactions in SavedTransactions.getSavedTransactionsBank())
            {
                if (transactions.getAccountNumber().Equals(currentUser.getAccountNumber()))
                {
                    numberOfTransactions++;
                    latestImportDate = transactions.getWriteDate();//always overwrites it --- todo (more logic needed lulz)
                    if (transactions.getTransactionPrice() > 0)
                    {
                        totalIncome += transactions.getTransactionPrice();
                    }
                    else
                    {
                        totalSpendings += transactions.getTransactionPrice();
                    }
                }
            }
            if (latestImportDate.Length > 12)
            {
                lastImportDateLabel.Content = latestImportDate.Substring(0, 12);
            }
            else
            {
                lastImportDateLabel.Content = latestImportDate;
            }
            noTransactionsLabel.Content = numberOfTransactions;
            DateTime importDate;

            if (latestImportDate.Length > 0)
            {
                importDate = Convert.ToDateTime(latestImportDate);
                float diffTicks = (todayDate - importDate).Days;
                if (diffTicks >= 30)
                {
                    urgencyLabel.Content    = "Recommended!";
                    urgencyLabel.Foreground = new SolidColorBrush(Color.FromRgb(217, 30, 24));
                }
                else
                {
                    urgencyLabel.Content    = "Not urgent";
                    urgencyLabel.Foreground = new SolidColorBrush(Color.FromRgb(46, 204, 113));
                }
            }
            else
            {
                urgencyLabel.Content        = "You haven't imported yet!";
                lastImportDateLabel.Content = "You haven't imported yet!";
            }
        }
        public ITransaction Get(object id)
        {
            var transaction = SavedTransactions.FirstOrDefault(i => i.Identifier == id);

            if (transaction == null)
            {
                transaction = CompletedTransactions.FirstOrDefault(i => i.Identifier == id);
            }
            if (transaction == null)
            {
                transaction = VoidedTransactions.FirstOrDefault(i => i.Identifier == id);
            }
            if (transaction == null)
            {
                throw new KeyNotFoundException($"{id} not found in the Transaction store.");
            }
            return(transaction);
        }
 private void DeleteTransaction(ITransaction transaction)
 {
     SavedTransactions.RemoveAll(i => i.Identifier == transaction.Identifier);
     VoidedTransactions.RemoveAll(i => i.Identifier == transaction.Identifier);
     CompletedTransactions.RemoveAll(i => i.Identifier == transaction.Identifier);
 }
 public void StoreIncompleted(ITransaction transaction)
 {
     DeleteTransaction(transaction);
     SavedTransactions.Add(transaction);
 }