public async Task <IActionResult> ConvertToMemberOrder([FromBody] ODataActionParameters value)
        {
            if (!value.ContainsKey(Constants.Order.OrderId))
            {
                return((IActionResult) new BadRequestObjectResult((object)value));
            }
            if (string.IsNullOrEmpty(value[Constants.Order.OrderId].ToString()))
            {
                return((IActionResult) new BadRequestObjectResult((object)value));
            }
            if (string.IsNullOrEmpty(value[Constants.Order.CustomerId].ToString()))
            {
                return((IActionResult) new BadRequestObjectResult((object)value));
            }
            if (string.IsNullOrEmpty(value[Constants.Order.CustomerEmail].ToString()))
            {
                return((IActionResult) new BadRequestObjectResult((object)value));
            }


            var orderId    = value[Constants.Order.OrderId].ToString();
            var customerId = value[Constants.Order.CustomerId].ToString();
            var email      = value[Constants.Order.CustomerEmail].ToString();

            var arg = new ConvertGuestOrderToMemberOrderArgument
            {
                CustomerId    = customerId,
                OrderId       = orderId,
                CustomerEmail = email
            };

            var order = await this.Command <ConvertGuestOrderToMemberOrderCommand>().Process(this.CurrentContext, arg);

            return(order == null ? new ObjectResult(false) : new ObjectResult(true));
        }
예제 #2
0
 public async Task <Order> Process(CommerceContext commerceContext, ConvertGuestOrderToMemberOrderArgument arg)
 {
     using (CommandActivity.Start(commerceContext, this))
     {
         return(await _commerceCommander.Pipeline <IConvertGuestOrderToMemberOrderPipeline>().Run(arg, commerceContext.GetPipelineContextOptions()));
     }
 }