private static async Task AddCartItem(CartEntity cart, IPromotionsApplayer promotionsApplayer, CartItemEntity cartItem)
        {
            var existingCartItem = cart.Items.FirstOrDefault(ci => ci.Id == cartItem.Id);

            if (cartItem.IsWeighable)
            {
                cartItem.Quantity = (cartItem.Quantity / cartItem.QuantityInterval) * cartItem.QuantityInterval;
            }
            if (existingCartItem == null)
            {
                cart.Items.Add(cartItem);
            }
            else
            {
                existingCartItem.Quantity = Math.Max(existingCartItem.Quantity, cartItem.Quantity);
            }

            await promotionsApplayer.ApplayOnItem(cart, cartItem);
        }