Esempio n. 1
0
        public void Update(AccountCutting accountCutting)
        {
            var originalAccountCutting = context.AccountCuttings.Find(accountCutting.Id);

            context.Entry(originalAccountCutting).CurrentValues.SetValues(accountCutting);
            context.SaveChanges();
        }
Esempio n. 2
0
        public void GenerateAllAccountCuttings(DateTime fromDate, DateTime toDate)
        {
            // Process accounts that have at least 1 transaction for the current month.
            List <Account> accountsToProcess = context.Accounts.Where(A => A.AccountTransactions
                                                                      .Where(T => T.TransactionDate > fromDate && T.TransactionDate < toDate)
                                                                      .Count() > 0
                                                                      ).ToList();

            foreach (Account account in accountsToProcess)
            {
                AccountCutting     accountCutting        = new AccountCutting();
                List <Transaction> transactionsToProcess = account.AccountTransactions.Where(T => T.TransactionDate > fromDate && T.TransactionDate < toDate).ToList();
                decimal            negatives             = transactionsToProcess.Select(T => T.Withdrawal == null ? Decimal.Zero : T.Withdrawal.Value).Sum();
                decimal            positives             = transactionsToProcess.Select(T => T.Deposit == null ? Decimal.Zero : T.Deposit.Value).Sum();
                accountCutting.CashPayment = negatives + positives;
                accountCutting.RealPayment = accountCutting.CashPayment;

                // Set fields and save data.
            }
        }
Esempio n. 3
0
 public void Remove(AccountCutting accountCutting)
 {
     context.AccountCuttings.Remove(accountCutting);
     context.SaveChanges();
 }
Esempio n. 4
0
 public void Add(AccountCutting accountCutting)
 {
     context.AccountCuttings.Add(accountCutting);
     context.SaveChanges();
 }