public RetornoBase <LivroDTO> Realizar(Operacao.LocalizaLivro localizaLivro)
        {
            var retorno = new RetornoBase <LivroDTO>();

            var aoLocalizarLivro = repLivro.Localizar(localizaLivro.LivroId);

            if (aoLocalizarLivro.Problemas.Count > 0)
            {
                retorno.Mensagem = "Não foi possível localizar o livro.";
                retorno.Problemas.AddRange(aoLocalizarLivro.Problemas);
            }
            else
            {
                retorno.Valor = LivroDTO.Fabricar(aoLocalizarLivro.Valor);
            }

            return(retorno);
        }
        public RetornoBase <TLivro> Realizar(LocalizaLivro localizaLivro)
        {
            var retorno = new RetornoBase <TLivro>();

            var aoLocalizarLivro = repLivro.Localizar(localizaLivro.LivroId);

            if (aoLocalizarLivro.Problemas.Count > 0)
            {
                retorno.Mensagem = "Não foi possível localizar o livro.";
                retorno.Problemas.AddRange(aoLocalizarLivro.Problemas);
            }
            else
            {
                var livro  = retorno.Valor;
                var tlivro = new TLivro();

                tlivro.LivroId       = livro.LivroId;
                tlivro.Titulo        = livro.Titulo;
                tlivro.Estante       = livro.Estante;
                tlivro.AnoPublicacao = livro.AnoPublicacao;
                tlivro.EditoraId     = livro.EditoraId;
                tlivro.Editora       = new TEditora()
                {
                    EditoraId = livro.Editora.EditoraId,
                    Nome      = livro.Editora.Nome,
                    Site      = livro.Editora.Site
                };
                foreach (var autor in livro.Autores)
                {
                    tlivro.Autores.Add(new TAutor()
                    {
                        AutorId   = autor.AutorId,
                        Nome      = autor.Nome,
                        Sobrenome = autor.Sobrenome,
                        Email     = autor.Email
                    });
                }

                retorno.Valor = tlivro;
            }

            return(retorno);
        }