コード例 #1
0
        public RetornoBase <bool> Realizar(Operacao.AjusteLivro ajusteLivro)
        {
            var retorno = new RetornoBase <bool>();

            var livro = ajusteLivro.Fabricar();

            if (livro.EstaEmEstadoIntegro())
            {
                var aoAlterar = repLivro.Alterar(livro);
                retorno.Valor = aoAlterar.Valor;
                if (aoAlterar.Problemas.Count > 0)
                {
                    retorno.Mensagem = "Não foi possível ajustar o livro.";
                    retorno.Problemas.AddRange(aoAlterar.Problemas);
                }
            }
            else
            {
                retorno.Mensagem = "Os dados do livro não foram devidamente informados.";
                retorno.Problemas.AddRange(livro.Problemas);
            }

            return(retorno);
        }
コード例 #2
0
        public RetornoBase <bool> Realizar(AjusteLivro ajusteLivro)
        {
            var retorno = new RetornoBase <bool>();

            var editora = new Editora(ajusteLivro.Editora.EditoraId, ajusteLivro.Editora.Nome, ajusteLivro.Editora.Site);
            var autores = new List <Autor>();

            foreach (var tautor in ajusteLivro.Autores)
            {
                autores.Add(new Autor(
                                tautor.AutorId,
                                new Dominio.Descritores.TNomePessoa(tautor.Nome, tautor.Sobrenome),
                                new Dominio.Descritores.TEmail(tautor.Email)
                                ));
            }

            var livro = new Livro(ajusteLivro.LivroId, ajusteLivro.Titulo, ajusteLivro.Estante, ajusteLivro.AnoPublicacao, editora, autores);

            if (livro.EstaEmEstadoIntegro())
            {
                var aoAlterar = repLivro.Alterar(livro);
                retorno.Valor = aoAlterar.Valor;
                if (aoAlterar.Problemas.Count > 0)
                {
                    retorno.Mensagem = "Não foi possível ajustar o livro.";
                    retorno.Problemas.AddRange(aoAlterar.Problemas);
                }
            }
            else
            {
                retorno.Mensagem = "Os dados do livro não foram devidamente informados.";
                retorno.Problemas.AddRange(livro.Problemas);
            }

            return(retorno);
        }