public ActionResult AffiliatedOrderList(DataSourceRequest command, AffiliatedOrderListModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageAffiliates)) return AccessDeniedView(); var affiliate = _affiliateService.GetAffiliateById(model.AffliateId); if (affiliate == null) throw new ArgumentException("No affiliate found with the specified id"); DateTime? startDateValue = (model.StartDate == null) ? null : (DateTime?)_dateTimeHelper.ConvertToUtcTime(model.StartDate.Value, _dateTimeHelper.CurrentTimeZone); DateTime? endDateValue = (model.EndDate == null) ? null : (DateTime?)_dateTimeHelper.ConvertToUtcTime(model.EndDate.Value, _dateTimeHelper.CurrentTimeZone).AddDays(1); OrderStatus? orderStatus = model.OrderStatusId > 0 ? (OrderStatus?)(model.OrderStatusId) : null; PaymentStatus? paymentStatus = model.PaymentStatusId > 0 ? (PaymentStatus?)(model.PaymentStatusId) : null; ShippingStatus? shippingStatus = model.ShippingStatusId > 0 ? (ShippingStatus?)(model.ShippingStatusId) : null; var orders = _orderService.SearchOrders( createdFromUtc: startDateValue, createdToUtc: endDateValue, os: orderStatus, ps: paymentStatus, ss: shippingStatus, affiliateId: affiliate.Id, pageIndex: command.Page - 1, pageSize: command.PageSize); var gridModel = new DataSourceResult { Data = orders.Select(order => { var orderModel = new AffiliateModel.AffiliatedOrderModel(); orderModel.Id = order.Id; orderModel.OrderStatus = order.OrderStatus.GetLocalizedEnum(_localizationService, _workContext); orderModel.PaymentStatus = order.PaymentStatus.GetLocalizedEnum(_localizationService, _workContext); orderModel.ShippingStatus = order.ShippingStatus.GetLocalizedEnum(_localizationService, _workContext); orderModel.OrderTotal = _priceFormatter.FormatPrice(order.OrderTotal, true, false); orderModel.CreatedOn = _dateTimeHelper.ConvertToUserTime(order.CreatedOnUtc, DateTimeKind.Utc); return orderModel; }), Total = orders.TotalCount }; return Json(gridModel); }
public ActionResult AffiliatedOrderList(int affiliateId, GridCommand command) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageAffiliates)) return AccessDeniedView(); var affiliate = _affiliateService.GetAffiliateById(affiliateId); if (affiliate == null) throw new ArgumentException("No affiliate found with the specified id"); var orders = _orderService.GetOrdersByAffiliateId(affiliate.Id, command.Page - 1, command.PageSize); var model = new GridModel<AffiliateModel.AffiliatedOrderModel> { Data = orders.Select(order => { var orderModel = new AffiliateModel.AffiliatedOrderModel(); orderModel.Id = order.Id; orderModel.OrderStatus = order.OrderStatus.GetLocalizedEnum(_localizationService, _workContext); orderModel.PaymentStatus = order.PaymentStatus.GetLocalizedEnum(_localizationService, _workContext); orderModel.ShippingStatus = order.ShippingStatus.GetLocalizedEnum(_localizationService, _workContext); orderModel.OrderTotal = _priceFormatter.FormatPrice(order.OrderTotal, true, false); orderModel.CreatedOn = _dateTimeHelper.ConvertToUserTime(order.CreatedOnUtc, DateTimeKind.Utc); return orderModel; }), Total = orders.TotalCount }; return new JsonResult { Data = model }; }