Пример #1
0
        public async Task <IActionResult> AddToCart([FromBody] OrderEntity orderEntity)
        {
            _logService.LogMessage("Add to Cart Entity received at endpoint : api/AddToCart, User ID : " + orderEntity.CustomerId);
            int    UserId    = (Request.Headers.ContainsKey("CustomerId") ? int.Parse(HttpContext.Request.Headers["CustomerId"]) : 0);
            string UserToken = (Request.Headers.ContainsKey("AuthToken") ? Convert.ToString(HttpContext.Request.Headers["AuthToken"]) : "");

            OrderEntityValidator orderEntityValidator = new OrderEntityValidator(UserId, UserToken, _placeOrderActions);
            ValidationResult     validationResult     = orderEntityValidator.Validate(orderEntity);

            if (!validationResult.IsValid)
            {
                return(BadRequest(validationResult.ToString("; ")));
            }
            else
            {
                var result = await Task <int> .Run(() => _placeOrderActions.AddtoCartItems(orderEntity));

                if (result == 0)
                {
                    return(BadRequest("Failed to add the items in Cart as Items already exist"));
                }
            }
            return(Ok("Item added to cart successfully"));
        }