public OrderConfirmationViewModel Build(PageModel pageModel) { var model = pageModel.MapTo <OrderConfirmationViewModel>(); var order = _moduleECommerce.Orders.GetOrder(_requestModelAccessor.RequestModel.Cart.OrderCarrier.ExternalOrderID, SecurityToken.CurrentSecurityToken); if (order != null) { model.Order = _orderViewModelBuilder.Build(order); } return(model); }
public OrderConfirmationViewModel Build(PageModel pageModel) { var model = pageModel.MapTo <OrderConfirmationViewModel>(); var cartContext = _cartContextAccessor.CartContext; if (cartContext != null) { var order = _orderOverviewService.Get(cartContext.Cart.Order.SystemId); if (order != null) { model.Order = _orderViewModelBuilder.Build(order); } } return(model); }
private List <OrderDetailsViewModel> GetOrders(OrderHistoryViewModel model, int pageIndex, int pageSize, out int totalOrderCount) { var orders = new List <OrderDetailsViewModel>(); totalOrderCount = 0; var personId = _securityContextService.GetIdentityUserSystemId(); if (!ModuleECommerce.ExistsInstance || !personId.HasValue) { return(orders); } var searchRequest = new QueryRequest(_languageService.Get(CultureInfo.CurrentCulture).SystemId, ECommerceSearchDomains.Orders, Solution.Instance.SystemToken) { Paging = new Paging(pageIndex, pageSize) }; if (model.IsBusinessCustomer) { searchRequest.FilterTags.Add(new Tag(TagNames.OrganizationID, _personStorage.CurrentSelectedOrganization.SystemId)); if (model.ShowOnlyMyOrders || !model.HasApproverRole) { searchRequest.FilterTags.Add(new Tag(TagNames.PersonID, personId.Value)); } } else { searchRequest.FilterTags.Add(new Tag(TagNames.PersonID, personId.Value)); } searchRequest.ExcludeTags.Add(new Tag(TagNames.OrderStatus, (short)OrderState.Invalid)); searchRequest.ExcludeTags.Add(new Tag(TagNames.OrderStatus, (short)OrderState.Init)); searchRequest.Sortings.Add(new Sorting(TagNames.OrderNumber, SortDirection.Descending, SortingFieldType.String)); var responce = Solution.Instance.SearchService.Search(searchRequest); totalOrderCount = responce.TotalHitCount; foreach (var order in _moduleECommerce.Orders.GetOrders(responce.Hits.Select(x => new Guid(x.Id)), Solution.Instance.SystemToken)) { if (order.OrderStatus != (short)OrderState.Invalid && order.OrderStatus != (short)OrderState.Init) { orders.Add(_orderViewModelBuilder.Build(order)); } } return(orders); }
private List <OrderDetailsViewModel> GetOrders(OrderHistoryViewModel model, int pageIndex, int pageSize, out int totalOrderCount) { var orders = new List <OrderDetailsViewModel>(); totalOrderCount = 0; var personId = _securityContextService.GetIdentityUserSystemId(); if (!personId.HasValue) { return(orders); } using (var query = _dataserivce.CreateQuery <SalesOrder>()) { var queryResult = query.Filter(filter => { if (model.IsBusinessCustomer) { filter.OrganizationSystemId(_personStorage.CurrentSelectedOrganization.SystemId); if (model.ShowOnlyMyOrders || !model.HasApproverRole) { filter.PersonSystemId(personId.Value); } } else { filter.PersonSystemId(personId.Value); } }) .Sort(descriptor => descriptor.OrderNumber(Data.Queryable.SortDirection.Descending)); totalOrderCount = queryResult.Count(); var orderSystemIds = queryResult .Skip((pageIndex - 1) * pageSize) .Take(pageSize) .ToSystemIdList(); orders = _orderOverviewService.Get(orderSystemIds).Select(x => _orderViewModelBuilder.Build(x)).ToList(); } return(orders); }