public ActionResult Index([Bind(Exclude = "Transactions")] TransactionsWithFilter transactionFilter) { this.FilterTransactions(transactionFilter); ViewBag.PersonGuid = new SelectList(db.Persons, "PersonGuid", "LoginId", ((CustomPrincipal)User).PersonGuid); return(View(transactionFilter)); }
private void FilterTransactions(TransactionsWithFilter transactionFilter) { log.Error("Filter" + transactionFilter.PersonGuid); transactionFilter.Transactions = this.GetAllTransactions(); if (transactionFilter.PersonGuid != null) { transactionFilter.Transactions = transactionFilter.Transactions.Where( x => transactionFilter.PersonGuid == new Guid("00000000-0000-0000-0000-000000000000") || x.Person.PersonGuid == transactionFilter.PersonGuid); } var lstAllowTransactionFor = new List <string>(); if (transactionFilter.IsMonthlyEMI) { lstAllowTransactionFor.Add("Monthly EMI"); } if (transactionFilter.ReturnMoneySelf) { lstAllowTransactionFor.Add("Return Money(Self)"); } if (transactionFilter.ReturnMoneyThirdParty) { lstAllowTransactionFor.Add("Return Money(Third Party)"); } if (transactionFilter.InterestSelf) { lstAllowTransactionFor.Add("Interest(Self)"); } if (transactionFilter.InterestThirdParty) { lstAllowTransactionFor.Add("Interest(Third Party)"); } if (transactionFilter.WithDrawMoneySelf) { lstAllowTransactionFor.Add("WithDraw Money(Self)"); } if (transactionFilter.WithDrawMoneyThirdParty) { lstAllowTransactionFor.Add("WithDraw Money(Third Party)"); } if (transactionFilter.Sip) { lstAllowTransactionFor.Add("SIP"); } if (transactionFilter.Expense) { lstAllowTransactionFor.Add("Expense"); } if (lstAllowTransactionFor.Any()) { transactionFilter.Transactions = transactionFilter.Transactions.Where( x => lstAllowTransactionFor.Contains(x.TransactionFor.TranscationFor)).ToList().OrderBy(x => x.PersonGuid).OrderByDescending(x => x.TransactionDate).ToList(); } log.Error("After Filter :" + transactionFilter.Transactions.Count()); //if(transactionFilter.) }
public ActionResult Index() { ViewBag.PersonGuid = new SelectList(db.Persons, "PersonGuid", "LoginId", ((CustomPrincipal)User).PersonGuid); var obj = new TransactionsWithFilter() { PersonGuid = ((CustomPrincipal)User).PersonGuid, IsMonthlyEMI = true, InterestSelf = true, InterestThirdParty = true }; this.FilterTransactions(obj); return(View(obj)); }