Esempio n. 1
0
 public EditTransactionViewModel(IEnumerable <Category> categories, BankAccountTransaction transaction)
 {
     CategoryList = new SelectList(categories, "Id", "Name", transaction.CategoryId);
     Amount       = new AmountViewModel(transaction.Amount);
     Posted       = (transaction.Posted.HasValue) ? transaction.Posted.Value : transaction.Posted;
     Reconciled   = transaction.Reconciled;
 }
Esempio n. 2
0
        public bool AddBankAccountTransaction(BankAccountTransactionDTO baDTO)
        {
            var flag = true;

            try
            {
                using (var entities = new ManiMotorsEntities1())
                {
                    var bTran = new BankAccountTransaction()
                    {
                        BankAccountTypeID = baDTO.BankAccountTypeID,
                        TransactionType   = baDTO.TransactionType,
                        Amount            = baDTO.Amount,
                        Description       = baDTO.Description,
                        TransactionDate   = baDTO.TransactionDate,
                        CreatedDate       = baDTO.CreatedDate,
                        Createdby         = baDTO.CreatedBy,
                        Modifiedby        = baDTO.ModifiedBy,
                        ModifiedDate      = baDTO.ModifiedDate,
                        Type = baDTO.Type,
                    };
                    entities.BankAccountTransactions.Add(bTran);
                    entities.SaveChanges();
                    flag = true;
                }
            }
            catch (Exception ex)
            {
                flag = false;
                throw ex;
            }

            return(flag);
        }
 public IBankAccountTransactionBuilder WithBankAccountID(int bankAccountID)
 {
     _bankAccountTransaction = _bankAccountTransaction with {
         BankAccountID = bankAccountID
     };
     return(this);
 }
Esempio n. 4
0
 public EditTransactionViewModel GetTransactionEditor(BankAccountTransaction transaction)
 {
     return(new EditTransactionViewModel(
                db.Categories.ToList(),
                transaction
                ));
 }
Esempio n. 5
0
        public ListDTO <BankAccountTransactionDTO> AddTransaction(BankAccount bank, double amount, string type)
        {
            var accountTransaction = new BankAccountTransaction();

            accountTransaction.From            = bank.CurrencyName;
            accountTransaction.To              = bank.CurrencyName;
            accountTransaction.Ammount         = amount;
            accountTransaction.IdBankAccount   = bank.Id;
            accountTransaction.IdFlatRateFee   = 0;
            accountTransaction.Status          = "Done";
            accountTransaction.Date            = DateTime.Now;
            accountTransaction.TransactionType = type;
            _context.BankAccountTransaction.Add(accountTransaction);
            _context.SaveChanges();

            bankAccountTransaction.Items = new List <BankAccountTransactionDTO>();
            var bankList = _context.BankAccountTransaction;

            foreach (var item in bankList)
            {
                var items = _mapper.Map <BankAccountTransactionDTO>(item);
                bankAccountTransaction.Items.Add(items);
            }
            return(bankAccountTransaction);
        }
Esempio n. 6
0
        /// <summary>
        /// Adds a new transaction for the customer account and update account balance
        /// </summary>
        public static void MakeTransaction(string iban, float amount)
        {
            try
            {
                BankdbContext context = new BankdbContext();

                var account = context.BankAccount.Where(a => a.Iban == iban).SingleOrDefault();
                if (account != null)
                {
                    BankAccountTransaction newTransaction = new BankAccountTransaction
                    {
                        Iban      = iban,
                        Amount    = (decimal)amount,
                        TimeStamp = DateTime.Today
                    };

                    account.Balance += (decimal)amount;

                    context.BankAccount.Update(account);
                    context.BankAccountTransaction.Add(newTransaction);
                    context.SaveChanges();
                    Console.WriteLine($"Transaction of the amount of {amount} done for account {iban}. Current balance is: {account.Balance}");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
     public IBankAccountTransactionBuilder WithDescription(string description)
     {
         _bankAccountTransaction = _bankAccountTransaction with {
             Description = description
         };
         return(this);
     }
 }
Esempio n. 8
0
        protected override Transaction CreateTransaction(TransactionType type)
        {
            Transaction transaction = null;

            transaction = new BankAccountTransaction();

            return(transaction);
        }
Esempio n. 9
0
 public TransactionViewModel(BankAccountTransaction transaction, IFormatProvider formatProvider)
 {
     Id         = transaction.Id;
     Amount     = transaction.Amount.ToString("C", formatProvider);
     Category   = transaction.Category.Name;
     Added      = transaction.Added.Value.ToString("d");
     Posted     = (transaction.Posted.HasValue) ? transaction.Posted.Value.ToString("d") : "";
     Reconciled = transaction.Reconciled.ToString();
 }
Esempio n. 10
0
 public TransactionViewModel(BankAccountTransaction transaction, IFormatProvider formatProvider, ICollection <Category> categories)
 {
     Id                = transaction.Id;
     Amount            = transaction.Amount.ToString("C", formatProvider);
     Category          = transaction.Category.Name;
     Added             = transaction.Added.Value.ToString("d");
     Posted            = (transaction.Posted.HasValue) ? transaction.Posted.Value.ToString("d") : "";
     Reconciled        = transaction.Reconciled.ToString();
     TransactionEditor = new EditTransactionViewModel(categories, transaction);
 }
 public IBankAccountTransactionBuilder WithTestData(int bankAccountTransactionID = Constants.UnknownRecordID)
 {
     _bankAccountTransaction = _bankAccountTransaction with
     {
         BankAccountTransactionID = bankAccountTransactionID,
         BankAccountID            = 10,
         Description = "Test Transaction"
     };
     return(this);
 }
Esempio n. 12
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void buttonAddActivity_Click(object sender, RoutedEventArgs e)
        {
            var date = textBoxDate.Text;

            if (!BankUtils.ValidateDate(date))
            {
                MessageBox.Show("Virheellinen päivämäärä!");
                return;
            }
            float amount;

            if (!float.TryParse(textBoxAmount.Text, out amount))
            {
                MessageBox.Show("Virheellinen summa!");
                return;
            }

            var transaction = new BankAccountTransaction(date, amount);
            var account     = _bank.GetBankAccount(_customer.BankAccountNumber);

            account.AddBankAccountTransaction(transaction);

            List <BankAccountTransaction> items = (List <BankAccountTransaction>)listViewActivities.ItemsSource;

            if (items == null)
            {
                items = new List <BankAccountTransaction>();
            }
            items.Add(transaction);


            listViewActivities.ItemsSource = items;

            CollectionView view = (CollectionView)CollectionViewSource.GetDefaultView(listViewActivities.ItemsSource);

            view.SortDescriptions.Add(new SortDescription("Date", ListSortDirection.Ascending));

            textBoxAmount.Clear();
        }
Esempio n. 13
0
        //Add New Transaction for Customer (iban)
        public Tuple <int, string, string> MakeATransaction(string iban, decimal _sum, decimal updatedTotal)
        {
            using (var db = new BankdbContext()) {
                using (var transaction = db.Database.BeginTransaction()) {
                    try {
                        //add new transaction
                        var newTransaction = new BankAccountTransaction()
                        {
                            Iban      = iban,
                            Amount    = _sum,
                            TimeStamp = DateTime.Now
                        };
                        db.BankAccountTransaction.Add(newTransaction);
                        int _t = db.SaveChanges();

                        //update balance of the account
                        var bankAcccount = db.BankAccount.Where(ba => ba.Iban == iban).FirstOrDefault();
                        bankAcccount.Balance = updatedTotal;
                        db.BankAccount.Update(bankAcccount);
                        int _ba = db.SaveChanges();
                        if (_t > 0 && _ba > 0)
                        {
                            transaction.Commit();
                            return(new Tuple <int, string, string>(1, "Transaction made successfully!", "Success"));
                        }
                        else
                        {
                            transaction.Rollback();
                            return(new Tuple <int, string, string>(1, "Transaction not made successfully!", "Failure"));
                        }
                    } catch (Exception e) {
                        Console.WriteLine(e.ToString());
                        transaction.Rollback();
                        return(new Tuple <int, string, string>(3, "Error occurred in transaction creation!", "Failure"));
                    }
                }
            }
        }