public IPagedList <AmazonOrder> Search(AmazonOrderSearchModel model) { var queryOver = _session.QueryOver <AmazonOrder>(); if (!String.IsNullOrWhiteSpace(model.SearchText)) { queryOver = queryOver.Where(o => o.AmazonOrderId.IsInsensitiveLike(model.SearchText, MatchMode.Anywhere) || o.BuyerName.IsInsensitiveLike(model.SearchText, MatchMode.Anywhere) || o.BuyerEmail.IsInsensitiveLike(model.SearchText, MatchMode.Anywhere)); } if (model.DateFrom.HasValue) { queryOver = queryOver.Where(o => o.PurchaseDate > model.DateFrom); } if (model.DateTo.HasValue) { queryOver = queryOver.Where(o => o.PurchaseDate < model.DateTo); } if (model.ShippingStatus.HasValue) { queryOver = queryOver.Where(o => o.Status == model.ShippingStatus.GetEnumByValue <AmazonOrderStatus>()); } return(queryOver.OrderBy(o => o.Id).Desc.Paged(model.Page)); }
public IPagedList <AmazonOrder> Search(AmazonOrderSearchModel model, int page = 1, int pageSize = 10) { var query = new AmazonOrderSearchQuery(model); return(_orderSearcher.Search(query.GetQuery(), page, pageSize, query.GetFilter(), new Sort(new SortField("id", SortField.INT, true)))); }
public AmazonOrderSearchQuery(AmazonOrderSearchModel model) { SearchText = model.SearchText; OrderId = model.AmazonOrderId; DateFrom = model.DateFrom; DateTo = model.DateTo; Status = model.ShippingStatus; }
public void OrdersController_Orders_ShouldCallSearch() { var dateTime = DateTime.Now; var model = new AmazonOrderSearchModel() { DateFrom = dateTime, DateTo = dateTime, ShippingStatus = ShippingStatus.Pending }; var result = _ordersController.Orders(model); A.CallTo(() => _amazonOrderSearchService.Search(model, model.Page, _ecommerceSettings.DefaultPageSize)).MustHaveHappened(); }
public void OrdersController_Index_ShouldCallSearch() { var dateTime = DateTime.Now; var model = new AmazonOrderSearchModel() { DateFrom = dateTime, DateTo = dateTime, ShippingStatus = ShippingStatus.Pending }; var result = _ordersController.Index(model); A.CallTo(() => _amazonOrderSearchService.Search(model)).MustHaveHappened(); }
private AmazonOrderSearchModel PrepareModel(AmazonOrderSearchModel model) { ViewData["AmazonOrderDetailsUrl"] = _amazonAppSettings.AmazonOrderDetailsUrl; ViewData["ShippingStatuses"] = GeneralHelper.GetEnumOptionsWithEmpty <ShippingStatus>(); model.Results = new PagedList <AmazonOrder>(null, 1, _ecommerceSettings.DefaultPageSize); try { model.Results = _amazonOrderSearchService.Search(model); } catch (Exception) { model.Results = _amazonOrderService.Search(); } return(model); }
public ActionResult Orders(AmazonOrderSearchModel model) { return(PartialView(PrepareModel(model))); }
public ActionResult Index(AmazonOrderSearchModel model) { ViewData["AmazonManageOrdersUrl"] = _amazonAppSettings.AmazonManageOrdersUrl; return(View(PrepareModel(model))); }