public virtual async Task <IHttpActionResult> SaveEditedOrder(EditOrderParam param) { if (param == null) { return(BadRequest($"{nameof(param)} cannot be empty")); } var vm = await OrderHistoryViewService.SaveEditedOrderAsync(param.OrderNumber, RequestUtils.GetBaseUrl(Request).ToString()); return(Ok(vm)); }
public virtual async Task <IHttpActionResult> CancelEditOrder(EditOrderParam param) { if (param == null) { return(BadRequest($"{nameof(param)} cannot be empty")); } await OrderHistoryViewService.CancelEditingOrderAsync(param.OrderNumber).ConfigureAwait(false); return(Ok(true)); }
public virtual async Task <IHttpActionResult> EditOrder(EditOrderParam param) { if (param == null) { return(BadRequest($"{nameof(param)} cannot be empty")); } var vm = await OrderHistoryViewService.CreateEditingOrderViewModel(param.OrderNumber).ConfigureAwait(false); return(Ok(vm)); }
public virtual async Task <IHttpActionResult> AddOrderToCustomer(string id) { if (string.IsNullOrEmpty(id)) { return(BadRequest("No order found.")); } var viewModel = await OrderHistoryViewService.UpdateOrderCustomerAsync(new UpdateOrderCustomerParam { CultureInfo = ComposerContext.CultureInfo, CustomerId = ComposerContext.CustomerId, Scope = ComposerContext.Scope, OrderNumber = id }); return(Ok(viewModel)); }
public virtual async Task <IHttpActionResult> GetPastOrders(GetOrdersParam param) { if (param == null) { return(BadRequest("No request found.")); } var viewModel = await OrderHistoryViewService.GetOrderHistoryViewModelAsync(new GetCustomerOrdersParam { CultureInfo = ComposerContext.CultureInfo, CustomerId = ComposerContext.CustomerId, Scope = ComposerContext.Scope, Page = param.Page, OrderTense = OrderTense.PastOrders }); return(Ok(viewModel)); }
public virtual async Task <IHttpActionResult> CancelOrder([FromBody] string orderNumber) { if (string.IsNullOrEmpty(orderNumber)) { return(BadRequest($"{nameof(orderNumber)} cannot be empty")); } var param = new CancelOrderParam() { Scope = ComposerContext.Scope, CultureInfo = ComposerContext.CultureInfo, CustomerId = ComposerContext.CustomerId, OrderNumber = orderNumber }; var vm = await OrderHistoryViewService.CancelOrder(param).ConfigureAwait(false); return(Ok(vm)); }
public virtual async Task <IHttpActionResult> GetGuestOrderByNumber(GetGuestOrderRequest param) { if (param == null) { return(BadRequest("No request found.")); } var viewModel = await OrderHistoryViewService.GetOrderDetailViewModelForGuestAsync(new GetOrderForGuestParam { OrderNumber = param.OrderNumber, Scope = ComposerContext.Scope, CultureInfo = ComposerContext.CultureInfo, CountryCode = ComposerContext.CountryCode, BaseUrl = RequestUtils.GetBaseUrl(Request).ToString(), Email = param.Email }); return(Ok(viewModel)); }
public virtual async Task <IHttpActionResult> GetGuestOrderDetailsUrl(GetGuestOrderViewModel request) { if (request == null) { return(BadRequest("No request body found.")); } var orderDetailUrl = OrderUrlProvider.GetGuestOrderDetailsUrl(ComposerContext.CultureInfo); var orderDetailViewModel = await OrderHistoryViewService.GetOrderDetailViewModelForGuestAsync(new GetOrderForGuestParam { OrderNumber = request.OrderNumber, Email = request.Email, Scope = ComposerContext.Scope, CultureInfo = ComposerContext.CultureInfo, CountryCode = ComposerContext.CountryCode, BaseUrl = RequestUtils.GetBaseUrl(Request).ToString() }); if (orderDetailViewModel == null) { return(NotFound()); } var token = GuestOrderTokenizer.GenerateOrderToken(new OrderToken { Email = request.Email, OrderNumber = request.OrderNumber }); var url = UrlFormatter.AppendQueryString(orderDetailUrl, new NameValueCollection { { "token", token } }); var vm = new GuestOrderDetailsViewModel { Url = url }; return(Ok(vm)); }
public virtual ActionResult OrderDetails(string id) { if (string.IsNullOrEmpty(id)) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound)); } var vm = OrderHistoryViewService.GetOrderDetailViewModelAsync(new GetCustomerOrderParam { OrderNumber = id, CustomerId = ComposerContext.CustomerId, Scope = ComposerContext.Scope, CultureInfo = ComposerContext.CultureInfo, CountryCode = ComposerContext.CountryCode, BaseUrl = RequestUtils.GetBaseUrl(Request).ToString() }).Result; if (vm == null) { return(new HttpUnauthorizedResult()); } return(View("OrderDetailsContainer", vm)); }