예제 #1
0
        public Anunciante ObterPorId(Identidade id)
        {
            using (SqlConnection cn = new SqlConnection(StringDeConexao))
            {
                var select =
                    @"
                            SELECT [AnuncianteId]
                              ,[Nome]
                              ,[Sobrenome]
                              ,[Logradouro]
                              ,[Bairro]
                              ,[Cidade]
                              ,[Estado]
                              ,[Cep]
                              ,[Email]
                              ,[DDDTelefonePrincipal]
                              ,[TelefonePrincipal]
                              ,[DDDTelefoneComercial]
                              ,[TelefoneComercial]
                              ,[DDDCelular]
                              ,[Celular]
                            FROM [dbo].[Anunciante]
                            WHERE AnuncianteId = @id
                        ";

                var result = cn.QueryFirstOrDefault(select, new { id = id.ToString() });

                if (result == null)
                {
                    return(null);
                }

                var nome = Nome.Novo(result.Nome, result.Sobrenome);

                var endereco = Endereco.Novo(result.Logradouro, result.Bairro,
                                             result.Cidade, result.Estado, result.Cep);

                var email = Email.Novo(result.Email);

                var contatos = AgendaTelefonica.Nova(
                    Telefone.Novo(result.DDDTelefonePrincipal, result.TelefonePrincipal),
                    Telefone.Novo(result.DDDTelefoneComercial, result.TelefoneComercial),
                    Telefone.Novo(result.DDDCelular, result.Celular));

                Anunciante anunciante = new Anunciante(new Identidade(Guid.Parse(result.AnuncianteId.ToString())),
                                                       nome, endereco, email, contatos);

                return(anunciante);
            }
        }
        public Guid InserirAnunciante()
        {
            var nome     = Nome.Novo("José Roberto", "Araújo");
            var endereco = Endereco.Novo("Rua do Paraíso", "Saúde", "São Paulo", "SP", 04123010);
            var email    = Email.Novo("*****@*****.**");
            var contatos = AgendaTelefonica.Nova(Telefone.Novo(11, "123456789"),
                                                 Telefone.Novo(11, "123456789"), Telefone.Novo(11, "123456789"));

            var id = new Identidade();

            var anunciante = new Anunciante(id, nome, endereco, email, contatos);

            _repositorio.Salvar(anunciante);

            var anuncianteResult = _repositorio.ObterPorId(id);

            Console.WriteLine(anuncianteResult.Nome);

            return(id.Id);
        }
예제 #3
0
        public void PersistirUmNovoAnuncianteTest()
        {
            var identidade       = Guid.NewGuid();
            var nome             = Nome.Novo("Gustavo", "Fontes");
            var endereco         = Endereco.Novo("Av. paulista", "Jardins", "São Paulo", "SP", 012345678);
            var email            = Email.Novo("*****@*****.**");
            var agendaTelefonica = AgendaTelefonica
                                   .Nova(
                Telefone.Novo(11, "12345678"),
                Telefone.Novo(11, "12345678"),
                Telefone.Novo(11, "123456789")
                );

            var novoAnunciante = new Anunciante(identidade, nome, endereco, email, agendaTelefonica);

            _repositorio.Salvar(novoAnunciante);

            var anunciante = _repositorio.ObterPor(identidade);

            anunciante.Should().NotBeNull();
        }