private bool ValidaQuantidadeItens(Ordem ordem)
        {
            foreach (var livro in ordem.Livros)
            {
                var livroUnitario = _livroRepositorio.Get(livro.Id);
                if (livroUnitario.Quantidade < livro.QuantidadeItensSelecionados) return false;
            }

            return true;
        }
        public void Post(Ordem ordem)
        {
            if (!ModelState.IsValid) throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            if (!ValidaQuantidadeItens(ordem)) throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Sua compra possui uma quantidade de itens inválidos!."));

            foreach (var livro in ordem.Livros)
            {
                var livroUnitario = _livroRepositorio.Get(livro.Id);
                livroUnitario.Quantidade -= livro.QuantidadeItensSelecionados;
                _livroRepositorio.Update(livroUnitario);
                CarrinhoComprasHub.Value.Clients.All.updateProdutoCount(livroUnitario);
            }

            var adicionado = _ordemRepositorio.Add(ordem);
            AdminHub.Value.Clients.All.ordemCompraEntregue(adicionado);
        }