public ActionResult AddContribution(List<ContributeForm> form, int simchaId) { SimchaFundManager manager = new SimchaFundManager(Properties.Settings.Default.ConStr); foreach (ContributeForm cF in form) { if (cF.Contribute && manager.GetSimchaAndContributors(cF.ContributorId, simchaId).Count()== 0) { manager.AddContribution(cF.ContributorId, cF.Contribution, simchaId); } else if (cF.Contribute && cF.Contribution != (double)manager.GetSimchaAndContributors(cF.ContributorId, simchaId).FirstOrDefault().Contribution) { manager.UpdateContribution(cF.ContributorId, cF.Contribution, simchaId); } else if (!cF.Contribute) { manager.DeleteContribution(cF.ContributorId, simchaId); } } return Redirect("Simchas"); }
public ActionResult ShowHistory(int contributorId, int? simchaId) { SimchaFundManager manager = new SimchaFundManager(Properties.Settings.Default.ConStr); ShowHistoryViewModel model = new ShowHistoryViewModel(); string firstName = manager.GetContributors(contributorId).FirstOrDefault(c => c.Id == contributorId).FirstName; string lastName = manager.GetContributors(contributorId).FirstOrDefault(c => c.Id == contributorId).LastName; model.ContributorName = firstName + " " + lastName; model.Balance = manager.GetBalance(contributorId); model.History = manager.GetDeposits(contributorId).Select(d => new ShowHistoryProperties { Name = "Deposit", Date = d.Date, Amount = d.Amount, }).Concat(manager.GetSimchaAndContributors(contributorId, simchaId).Select(s => new ShowHistoryProperties { Name = "Contribution To The " + manager.GetASimchas(s.SimchaId).Name + " Simcha", Date = s.Date, Amount = s.Contribution, })).OrderByDescending(h => h.Date); return View(model); }
public ActionResult Email(int? contributorId, int? simchaId) { SimchaFundManager manager = new SimchaFundManager(Properties.Settings.Default.ConStr); EmailViewModel model = new EmailViewModel(); IEnumerable<SimchaAndContributors> sam = manager.GetSimchaAndContributors(contributorId, simchaId); model.Contributors = sam.Select(c => manager.GetContributors(c.ContributorId).FirstOrDefault()).OrderBy(c => c.LastName); model.Simcha = manager.GetSimchas(simchaId).FirstOrDefault().Name; return View(model); }