public async Task <Response <OrderResponse> > SetOrderPaymentState(SetOrderPaymentStateRequest request) { var order = await _uow.Orders.FindAsync(new Guid(request.OrderId)); if (order == null) { return(new Response <OrderResponse>(ResponseStatus.NotFound, null, ResponseMessagesConstans.CannotFindOrder)); } order.PaymentState = request.PaymentState; order = await _uow.Orders.FindAndReplaceAsync(order.Id, order); var user = await _uow.Users.FindAsync(new Guid(order.Customer.UserId)); if (user != null) { await _mailingLibrary.SendChangePaymentStateEmail(order, user); } var response = _mapService.MapOrder(order); return(new Response <OrderResponse>(ResponseStatus.Ok, response)); }
public async Task <IHttpActionResult> SetPaymentState([FromBody] SetOrderPaymentStateRequest request) { var response = await _orderService.SetOrderPaymentState(request); return(new CreateResult(response)); }