public ActionResult History(int contribId) { var repo = new SimchaFundRepository(Properties.Settings.Default.ConStr); IEnumerable <Deposit> deposits = repo.GetDepositsById(contribId); IEnumerable <Contribution> contributions = repo.GetContributionsById(contribId); IEnumerable <Transaction> transactions = deposits.Select(d => new Transaction { Action = "Deposit", Amount = d.Amount, Date = d.Date }); if (contributions != null) { transactions.Concat(contributions.Select(c => new Transaction { Action = "Contribution for " + repo.GetSimchaById(c.SimchaId).SimchaName, Amount = c.Amount * -1, Date = (DateTime)repo.GetSimchaById(c.SimchaId).SimchaDate })); } transactions.OrderByDescending(t => t.Date); var vm = new HistoryViewModel(); vm.ContributorName = $"{repo.GetContributorById(contribId).FirstName} {repo.GetContributorById(contribId).LastName}"; vm.ContributorBalance = repo.GetContributorBalance(contribId); vm.Transactions = transactions; return(View(vm)); }
public ActionResult Deposit(Deposit deposit) { var repo = new SimchaFundRepository(Properties.Settings.Default.ConStr); repo.AddDeposit(deposit); TempData["Message"] = $"Deposited ${deposit.Amount} for {repo.GetContributorById(deposit.ContributorId).FirstName} {repo.GetContributorById(deposit.ContributorId).LastName}"; return(RedirectToAction("index")); }