public async System.Threading.Tasks.Task ShowInvoices(InvoiceIndexViewModel invoiceIndexViewModel) { var page = new InvoiceIndexPage(); await Navigation.PushAsync(page); NavigationPage.SetHasBackButton(page, true); page.BindingContext = invoiceIndexViewModel; }
// GET: Invoices public ActionResult Index(string searchInvoiceNumber, string currentFilterInvoiceNumber, string searchCustomer, string currentFilterCustomer, string searchDelivery, string currentFilterDelivery, int?page, string sortOrder) { InvoiceIndexViewModel iivm = new InvoiceIndexViewModel(); var invoices = from i in db.Invoices select i; Invoice invoice = new Invoice(); //ViewBag.CurrentSort = sortOrder; ViewBag.InvoiceSortParm = String.IsNullOrEmpty(sortOrder) ? "invoice_asc" : ""; ViewBag.CustomerSortParm = sortOrder == "cust" ? "cust_desc" : "cust"; if (searchCustomer != null || searchInvoiceNumber != null) { page = 1; } else { searchInvoiceNumber = currentFilterInvoiceNumber; searchCustomer = currentFilterCustomer; searchDelivery = currentFilterDelivery; } ViewBag.CurrentFilterInvoice = searchInvoiceNumber; ViewBag.CurrentFilterCustomer = searchCustomer; ViewBag.CurrentFilterDelivery = searchDelivery; if (!String.IsNullOrEmpty(searchInvoiceNumber)) { invoices = invoices.Where(i => i.InvoiceNumber.ToString().Contains(searchInvoiceNumber)); } if (!String.IsNullOrEmpty(searchCustomer)) { invoices = invoices.Where(i => i.LastName.ToUpper().Contains(searchCustomer.ToUpper()) || i.FirstName.ToUpper().Contains(searchCustomer.ToUpper())); } if (!string.IsNullOrEmpty(searchDelivery)) { invoices = invoices.Where(i => i.customerDeliveryAddress.DeliveryAddressInfo.ToUpper().Contains(searchDelivery.ToUpper()) || i.customerDeliveryAddress.StreetName.ToUpper().Contains(searchDelivery.ToUpper()) || i.customerDeliveryAddress.Town.ToUpper().Contains(searchDelivery.ToUpper())); } switch (sortOrder) { case "invoice_asc": invoices = invoices.OrderBy(s => s.InvoiceNumber); break; case "cust_desc": invoices = invoices.OrderByDescending(s => s.LastName); break; case "cust": invoices = invoices.OrderBy(s => s.LastName); break; default: invoices = invoices.OrderByDescending(s => s.InvoiceNumber); break; } var userDefinedInfo = db.UserDefinedSettings.Find(1); int pageSize = userDefinedInfo.IndexResultLength; int pageNumber = (page ?? 1); //ViewBag.Quotations = quotations.ToPagedList(pageNumber, pageSize); iivm.invoices = invoices.ToPagedList(pageNumber, pageSize); return(View(iivm)); }