public async Task <IActionResult> GetCustomerOrderDetails(int Id) { CustomerOrderDetailsViewModel CustomerOrderDetailsViewModel = new CustomerOrderDetailsViewModel() { CustomerOrderHeader = await _db.CustomerOrderHeader.FirstOrDefaultAsync(m => m.Id == Id), CustomerOrderDetails = await _db.CustomerOrderDetails.Where(m => m.OrderId == Id).ToListAsync() }; CustomerOrderDetailsViewModel.CustomerOrderHeader.ApplicationUser = await _db.ApplicationUser.FirstOrDefaultAsync(u => u.Id == CustomerOrderDetailsViewModel.CustomerOrderHeader.UserId); return(PartialView("_IndividualCustomerOrderDetails", CustomerOrderDetailsViewModel)); }
public async Task <IActionResult> Confirm(int id) { var claimsIdentity = (ClaimsIdentity)User.Identity; var claim = claimsIdentity.FindFirst(ClaimTypes.NameIdentifier); CustomerOrderDetailsViewModel CustomerOrderDetailsViewModel = new CustomerOrderDetailsViewModel() { CustomerOrderHeader = await _db.CustomerOrderHeader.Include(o => o.ApplicationUser).FirstOrDefaultAsync(o => o.Id == id && o.UserId == claim.Value), CustomerOrderDetails = await _db.CustomerOrderDetails.Where(o => o.OrderId == id).ToListAsync() }; return(View(CustomerOrderDetailsViewModel)); }
public async Task <IActionResult> AllOrdersHistory(int productPage = 1) { var claimsIdentity = (ClaimsIdentity)User.Identity; var claim = claimsIdentity.FindFirst(ClaimTypes.NameIdentifier); CustomerOrderListViewModel CustomerOrderListVM = new CustomerOrderListViewModel() { Orders = new List <CustomerOrderDetailsViewModel>() }; // List<CustomerOrderHeader> CustomerOrderHeaderList = _db.CustomerOrderHeader.Include(o => o.ApplicationUser).Where(u => u.UserId == u.ApplicationUser.Id).ToList(); List <CustomerOrderHeader> CustomerOrderHeaderList = new List <CustomerOrderHeader>(); CustomerOrderHeaderList = _db.CustomerOrderHeader.Include(o => o.ApplicationUser).Where(u => u.Status == SD.StatusReady || u.Status == SD.StatusCompleted || u.Status == SD.StatusCancelled || u.Status == SD.StatusSubmitted || u.Status == SD.StatusInProcess).ToList(); foreach (CustomerOrderHeader item in CustomerOrderHeaderList) { CustomerOrderDetailsViewModel individual = new CustomerOrderDetailsViewModel { CustomerOrderHeader = item, CustomerOrderDetails = _db.CustomerOrderDetails.Where(o => o.OrderId == item.Id).ToList() }; item.ApplicationUser = _db.ApplicationUser.Find(item.UserId); CustomerOrderListVM.Orders.Add(individual); } var count = CustomerOrderListVM.Orders.Count; CustomerOrderListVM.Orders = CustomerOrderListVM.Orders.OrderByDescending(p => p.CustomerOrderHeader.Id) .Skip((productPage - 1) * PageSize) .Take(PageSize).ToList(); CustomerOrderListVM.PagingInfo = new PagingInfo { CurrentPage = productPage, ItemsPerPage = PageSize, TotalItem = count, urlParam = "/Admin/AllOrders/AllOrdersHistory?productPage=:" }; return(View(CustomerOrderListVM)); }
public async Task <IActionResult> PrepareOrder(int productPage = 1) { List <CustomerOrderDetailsViewModel> CustomerOrderDetailsVM = new List <CustomerOrderDetailsViewModel>(); List <CustomerOrderHeader> CustomerOrderHeaderList = await _db.CustomerOrderHeader.Where(o => o.Status == SD.StatusSubmitted || o.Status == SD.StatusInProcess).OrderByDescending(u => u.PickUpTime).ToListAsync(); foreach (CustomerOrderHeader item in CustomerOrderHeaderList) { CustomerOrderDetailsViewModel individual = new CustomerOrderDetailsViewModel { CustomerOrderHeader = item, CustomerOrderDetails = await _db.CustomerOrderDetails.Where(o => o.OrderId == item.Id).ToListAsync() }; CustomerOrderDetailsVM.Add(individual); } return(View(CustomerOrderDetailsVM.OrderBy(o => o.CustomerOrderHeader.PickUpTime).ToList())); }
public async Task <IActionResult> OrderHistory(int productPage = 1) { var claimsIdentity = (ClaimsIdentity)User.Identity; var claim = claimsIdentity.FindFirst(ClaimTypes.NameIdentifier); CustomerOrderListViewModel CustomerOrderListVM = new CustomerOrderListViewModel() { Orders = new List <CustomerOrderDetailsViewModel>() }; List <CustomerOrderHeader> CustomerOrderHeaderList = await _db.CustomerOrderHeader.Include(o => o.ApplicationUser).Where(u => u.UserId == claim.Value).ToListAsync(); foreach (CustomerOrderHeader item in CustomerOrderHeaderList) { CustomerOrderDetailsViewModel individual = new CustomerOrderDetailsViewModel { CustomerOrderHeader = item, CustomerOrderDetails = await _db.CustomerOrderDetails.Where(o => o.OrderId == item.Id).ToListAsync() }; CustomerOrderListVM.Orders.Add(individual); } var count = CustomerOrderListVM.Orders.Count; CustomerOrderListVM.Orders = CustomerOrderListVM.Orders.OrderByDescending(p => p.CustomerOrderHeader.Id) .Skip((productPage - 1) * PageSize) .Take(PageSize).ToList(); CustomerOrderListVM.PagingInfo = new PagingInfo { CurrentPage = productPage, ItemsPerPage = PageSize, TotalItem = count, urlParam = "/Customer/CustomerOrder/OrderHistory?productPage=:" }; return(View(CustomerOrderListVM)); }
public async Task <IActionResult> OrderDelivery(int productPage = 1, string searchEmail = null, string searchPhone = null, string searchName = null) { CustomerOrderListViewModel CustomerOrderListVM = new CustomerOrderListViewModel() { Orders = new List <CustomerOrderDetailsViewModel>() }; StringBuilder param = new StringBuilder(); param.Append("/Customer/CustomerOrder/OrderDelivery?productPage=:"); param.Append("&searchName="); if (searchName != null) { param.Append(searchName); } List <CustomerOrderHeader> CustomerOrderHeaderList = new List <CustomerOrderHeader>(); if (searchName != null || searchEmail != null || searchPhone != null) { var user = new ApplicationUser(); if (searchName != null) { CustomerOrderHeaderList = await _db.CustomerOrderHeader.Include(o => o.ApplicationUser) .Where(u => u.PickupName.ToLower().Contains(searchName.ToLower())) .OrderByDescending(o => o.OrderDate).ToListAsync(); } } else { CustomerOrderHeaderList = await _db.CustomerOrderHeader.Include(o => o.ApplicationUser).Where(u => u.Status == SD.StatusReady).ToListAsync(); } foreach (CustomerOrderHeader item in CustomerOrderHeaderList) { CustomerOrderDetailsViewModel individual = new CustomerOrderDetailsViewModel { CustomerOrderHeader = item, CustomerOrderDetails = await _db.CustomerOrderDetails.Where(o => o.OrderId == item.Id).ToListAsync() }; CustomerOrderListVM.Orders.Add(individual); } var count = CustomerOrderListVM.Orders.Count; CustomerOrderListVM.Orders = CustomerOrderListVM.Orders.OrderByDescending(p => p.CustomerOrderHeader.Id) .Skip((productPage - 1) * PageSize) .Take(PageSize).ToList(); CustomerOrderListVM.PagingInfo = new PagingInfo { CurrentPage = productPage, ItemsPerPage = PageSize, TotalItem = count, urlParam = param.ToString() }; return(View(CustomerOrderListVM)); }