/// <summary> /// Obtém uma Pessoa pelo Código da Pessoa /// </summary> /// <param name="codigoPessoa"></param> /// <returns></returns> public Pessoa Obter(int codigoPessoa) { ContatoDados objContatoDados = new ContatoDados(); SqlCommand comando = new SqlCommand("select * from Pessoa where CodigoPessoa = @codigoPessoa", base.Conectar()); SqlParameter parametroCodigoPessoa = new SqlParameter("@codigoPessoa", codigoPessoa); parametroCodigoPessoa.DbType = System.Data.DbType.Int32; comando.Parameters.Add(parametroCodigoPessoa); SqlDataReader leitorDados = comando.ExecuteReader(System.Data.CommandBehavior.CloseConnection); Pessoa objPessoa = null; if (leitorDados.Read()) { objPessoa = new Pessoa(); objPessoa.CodigoPessoa = codigoPessoa; if (leitorDados["CodigoContato"] != DBNull.Value) objPessoa.Contato_CodigoContato = Convert.ToInt32(leitorDados["CodigoContato"]); else objPessoa.Contato_CodigoContato = null; if (objPessoa.Contato_CodigoContato.HasValue) objPessoa.Contato = objContatoDados.Obter(objPessoa.Contato_CodigoContato.Value); else objPessoa.Contato = null; objPessoa.CodigoCasaLar = Convert.ToInt32(leitorDados["CodigoCasaLar"]); objPessoa.Nome = leitorDados["Nome"].ToString(); objPessoa.Sexo = leitorDados["Sexo"].ToString(); objPessoa.CPF = leitorDados["CPF"].ToString(); objPessoa.RG = leitorDados["RG"].ToString(); objPessoa.TituloEleitor = leitorDados["TituloEleitor"].ToString(); objPessoa.DataNascimento = Convert.ToDateTime(leitorDados["DataNascimento"]); objPessoa.Nacionalidade = leitorDados["Nacionalidade"].ToString(); objPessoa.Naturalidade = leitorDados["Naturalidade"].ToString(); objPessoa.Foto = leitorDados["Foto"].ToString(); objPessoa.TipoPessoa = leitorDados["TipoPessoa"].ToString(); objPessoa.Ativo = Convert.ToBoolean(leitorDados["Ativo"]); } leitorDados.Close(); leitorDados.Dispose(); return objPessoa; }
/// <summary> /// Este método retorna uma lista de Pessoa /// </summary> /// <returns></returns> public List<Pessoa> Listar() { ContatoDados objContatoDados = new ContatoDados(); SqlCommand comando = new SqlCommand("select * from Pessoa order by Nome asc ", base.Conectar()); SqlDataReader leitorDados = comando.ExecuteReader(System.Data.CommandBehavior.CloseConnection); List<Pessoa> pessoaLista = new List<Pessoa>(); Pessoa objPessoa = null; while (leitorDados.Read()) { objPessoa = new Pessoa(); objPessoa.CodigoPessoa = Convert.ToInt32(leitorDados["CodigoPessoa"]); if (leitorDados["CodigoContato"] != DBNull.Value) objPessoa.Contato_CodigoContato = Convert.ToInt32(leitorDados["CodigoContato"]); else objPessoa.Contato_CodigoContato = null; if (objPessoa.Contato_CodigoContato.HasValue) objPessoa.Contato = objContatoDados.Obter(objPessoa.Contato_CodigoContato.Value); else objPessoa.Contato = null; objPessoa.CodigoCasaLar = Convert.ToInt32(leitorDados["CodigoCasaLar"]); objPessoa.Nome = leitorDados["Nome"].ToString(); objPessoa.Sexo = leitorDados["Sexo"].ToString(); objPessoa.CPF = leitorDados["CPF"].ToString(); objPessoa.RG = leitorDados["RG"].ToString(); objPessoa.TituloEleitor = leitorDados["TituloEleitor"].ToString(); objPessoa.DataNascimento = Convert.ToDateTime(leitorDados["DataNascimento"]); objPessoa.Nacionalidade = leitorDados["Nacionalidade"].ToString(); objPessoa.Naturalidade = leitorDados["Naturalidade"].ToString(); objPessoa.Foto = leitorDados["Foto"].ToString(); objPessoa.TipoPessoa = leitorDados["TipoPessoa"].ToString(); objPessoa.Ativo = Convert.ToBoolean(leitorDados["Ativo"]); pessoaLista.Add(objPessoa); } leitorDados.Close(); leitorDados.Dispose(); return pessoaLista; }
public Pessoa Salvar(Pessoa objPessoa) { SqlCommand comando = new SqlCommand(); comando.Connection = base.Conectar(); comando.CommandType = System.Data.CommandType.Text; if (!objPessoa.CodigoPessoa.HasValue) { comando.CommandText = @"INSERT INTO Pessoa (CodigoContato, CodigoCasaLar, Nome, Sexo, CPF, RG, TituloEleitor, DataNascimento, Nacionalidade, Naturalidade, Foto, TipoPessoa, ativo) VALUES (@contato_CodigoContato, @codigoCasaLar, @nome, @sexo, @cpf, @rg, @tituloEleitor, @dataNascimento, @nacionalidade, @naturalidade, @foto, @tipoPessoa, @ativo)"; } else { comando.CommandText = @"UPDATE Pessoa SET CodigoContato = @contato_CodigoContato, CodigoCasaLar = @codigoCasaLar, Nome = @nome, Sexo = @sexo, CPF = @cpf, RG = @rg, TituloEleitor = @tituloEleitor, DataNascimento = @dataNascimento, Nacionalidade = @nacionalidade, Naturalidade = @naturalidade, Foto = @foto, TipoPessoa = @tipoPessoa, Ativo = @ativo WHERE CodigoPessoa = @codigoPessoa"; } if (objPessoa.CodigoPessoa.HasValue) { SqlParameter parametroCodigo = new SqlParameter("@codigoPessoa", objPessoa.CodigoPessoa.Value); parametroCodigo.DbType = System.Data.DbType.Int32; comando.Parameters.Add(parametroCodigo); } //Salva o Contato SqlParameter parametroContato_CodigoContato = new SqlParameter("@contato_CodigoContato", System.Data.DbType.Int32); if (objPessoa.Contato_CodigoContato.HasValue) { parametroContato_CodigoContato.Value = objPessoa.Contato_CodigoContato.Value; } else { //Caso possua entidade Contato possua valor Cadastra if (objPessoa.Contato != null) { ContatoDados objContatoDados = new ContatoDados(); objPessoa.Contato = objContatoDados.Salvar(objPessoa.Contato); parametroContato_CodigoContato.Value = objPessoa.Contato.CodigoContato.Value; } //Caso não possua entidade Contato possua valor não Cadastra else { parametroContato_CodigoContato.Value = DBNull.Value; } } SqlParameter parametroCodigoCasaLar = new SqlParameter("@codigoCasaLar", System.Data.DbType.Int32); parametroCodigoCasaLar.Value = objPessoa.CodigoCasaLar.Value; SqlParameter parametroNome = new SqlParameter("@nome", objPessoa.Nome); parametroNome.DbType = System.Data.DbType.String; SqlParameter parametroSexo = new SqlParameter("@sexo", objPessoa.Sexo); parametroSexo.DbType = System.Data.DbType.String; SqlParameter parametroCPF = new SqlParameter("@cpf", objPessoa.CPF); parametroCPF.DbType = System.Data.DbType.String; SqlParameter parametroRG = new SqlParameter("@rg", objPessoa.RG); parametroRG.DbType = System.Data.DbType.String; SqlParameter parametroTituloEleitor = new SqlParameter("@tituloEleitor", System.Data.DbType.String); if (!String.IsNullOrEmpty(objPessoa.TituloEleitor)) parametroTituloEleitor.Value = objPessoa.TituloEleitor; else parametroTituloEleitor.Value = DBNull.Value; SqlParameter parametroDataNascimento = new SqlParameter("@dataNascimento", objPessoa.DataNascimento); parametroDataNascimento.DbType = System.Data.DbType.DateTime; SqlParameter parametroNacionalidade = new SqlParameter("@nacionalidade", objPessoa.Nacionalidade); parametroNacionalidade.DbType = System.Data.DbType.String; SqlParameter parametroNaturalidade = new SqlParameter("@naturalidade", objPessoa.Naturalidade); parametroNaturalidade.DbType = System.Data.DbType.String; //TODO: Maycon armazenar foto SqlParameter parametroFoto = new SqlParameter("@foto", System.Data.SqlDbType.Image); if (!String.IsNullOrEmpty(objPessoa.Foto)) parametroFoto.Value = objPessoa.Foto; else parametroFoto.Value = DBNull.Value; SqlParameter parametroTipoPessoa = new SqlParameter("@tipoPessoa", objPessoa.TipoPessoa); parametroTipoPessoa.DbType = System.Data.DbType.String; SqlParameter parametroAtivo = new SqlParameter("@ativo", System.Data.DbType.String); if (objPessoa.Ativo.HasValue) parametroAtivo.Value = objPessoa.Ativo.Value; else parametroAtivo.Value = true; comando.Parameters.Add(parametroContato_CodigoContato); comando.Parameters.Add(parametroCodigoCasaLar); comando.Parameters.Add(parametroNome); comando.Parameters.Add(parametroSexo); comando.Parameters.Add(parametroCPF); comando.Parameters.Add(parametroRG); comando.Parameters.Add(parametroTituloEleitor); comando.Parameters.Add(parametroDataNascimento); comando.Parameters.Add(parametroNaturalidade); comando.Parameters.Add(parametroNacionalidade); comando.Parameters.Add(parametroFoto); comando.Parameters.Add(parametroTipoPessoa); comando.Parameters.Add(parametroAtivo); comando.ExecuteNonQuery(); if (!objPessoa.CodigoPessoa.HasValue) { Pessoa objPessoaInserida = this.ObterUltima(); objPessoa.CodigoPessoa = objPessoaInserida.CodigoPessoa; return objPessoa; //return this.ObterUltimaPessoaInserida(); } else { return objPessoa; } }