public IEnumerable <string> ListarEmails(int numeroEncontro, EnTipoExpositor tipo)
        {
            var sb = new StringBuilder();

            sb.Append(" select");
            sb.Append("    PES.EMAIL");
            sb.Append(" from ENCONTRO ENC");
            sb.Append("   inner join PESSOA PES on (ENC.ID_PESSOA = PES.ID)");
            sb.Append(" where ENC.NUM_ENCONTRO = " + numeroEncontro);

            if (tipo == EnTipoExpositor.expSocio)
            {
                sb.Append(" and PES.CODIGO_FICHA IS NOT NULL");
            }

            if (tipo == EnTipoExpositor.expVisitante)
            {
                sb.Append(" and PES.CODIGO_VISITA IS NOT NULL");
            }

            if (tipo == EnTipoExpositor.expCadSocio)
            {
                sb.Append(" and PES.CODIGO_SOCIO IS NOT NULL");
            }

            sb.Append(" order by PES.EMAIL");

            return(_uow.Connection.Query <string>(sb.ToString(), null).ToList());
        }
示例#2
0
        public override void Salvar()
        {
            try
            {
                int?idProfissao = Funcoes.StrToIntNull(txtIdProfissao.Text);
                _model.ProfissaoId = idProfissao;

                int?idCidade = Funcoes.StrToIntNull(txtIdCidade.Text);
                _model.CidadeId = idCidade;
                _model.Codigo   = Convert.ToInt32(txtCodigo.Text);
                _model.CPF      = txtCPF.Text;

                if (rbCadSocio.Checked)
                {
                    _tipoExpositor = EnTipoExpositor.expCadSocio;
                }
                else if (rbExpSocio.Checked)
                {
                    _tipoExpositor = EnTipoExpositor.expSocio;
                }
                else if (rbExpVisitante.Checked)
                {
                    _tipoExpositor = EnTipoExpositor.expVisitante;
                }

                _session.ServicePessoa.Salvar(_model, _tipoExpositor);
                base.Salvar();
                CarregarConsulta(_model.Id);
                txtTexto.Focus();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
示例#3
0
        private IEnumerable <PessoaPesquisa> Filtrar(PessoaFiltro pessoaFiltro, EnTipoExpositor enTipoExpositor, int id = 0)
        {
            IQueryable <PessoaPesquisa> resultado;

            if (enTipoExpositor == EnTipoExpositor.expCadSocio)
            {
                resultado = _repositorioPessoa.ListarCadastroSocios();
            }
            else if (enTipoExpositor == EnTipoExpositor.expSocio)
            {
                resultado = _repositorioPessoa.ListarSociosExpositores();
            }
            else if (enTipoExpositor == EnTipoExpositor.expExpositores)
            {
                resultado = _repositorioPessoa.ListarExpositoresVisitantes();
            }
            else
            {
                resultado = _repositorioPessoa.ListarTodosExpositores();
            }

            if (!string.IsNullOrWhiteSpace(pessoaFiltro.Nome))
            {
                resultado = resultado.Where(x => x.Nome.Contains(pessoaFiltro.Nome.ToUpper()));
            }

            if (!string.IsNullOrWhiteSpace(pessoaFiltro.CPF))
            {
                resultado = resultado.Where(x => x.CPF == pessoaFiltro.CPF.SoNumeros());
            }

            if (!string.IsNullOrWhiteSpace(pessoaFiltro.RG))
            {
                resultado = resultado.Where(x => x.RG == pessoaFiltro.RG);
            }

            if (!string.IsNullOrWhiteSpace(pessoaFiltro.Telefone))
            {
                resultado = resultado.Where(x => x.Telefone == pessoaFiltro.Telefone);
            }

            if (id > 0)
            {
                resultado = resultado.Where(x => x.Id == id);
            }

            return(resultado.ToList());
        }
示例#4
0
        public frmVisitante(EnTipoExpositor tipoExpositor, bool Pesquisar = false, string texto = "")
        {
            InitializeComponent();

            btnPesquisar.Visible = Pesquisar;
            txtTexto.Text        = texto;

            switch (tipoExpositor)
            {
            case EnTipoExpositor.expSocio:
                _tipoExpositor     = EnTipoExpositor.expSocio;
                this.Text          = "Cadastro de Sócios Expositores";
                rbExpSocio.Checked = true;
                break;

            case EnTipoExpositor.expVisitante:
                _tipoExpositor         = EnTipoExpositor.expVisitante;
                this.Text              = "Cadastro de Expositores Visitantes";
                rbExpVisitante.Checked = true;
                break;

            case EnTipoExpositor.expCadSocio:
                _tipoExpositor     = EnTipoExpositor.expCadSocio;
                this.Text          = "Cadastro de Sócios";
                rbCadSocio.Checked = true;
                break;

            case EnTipoExpositor.expTodos:
                _tipoExpositor = EnTipoExpositor.expTodos;
                this.Text      = "Cadastro de Pessoas";
                break;

            case EnTipoExpositor.expExpositores:
                _tipoExpositor = EnTipoExpositor.expExpositores;
                this.Text      = "Cadastro de Pessoas";
                break;

            default:
                break;
            }

            Iniciar(texto);

            if (btnPesquisar.Visible && dgvDados.RowCount > 0)
            {
                dgvDados.Focus();
            }
        }
        public List <Pessoa> ListarEmails(int numeroEncontro, EnTipoExpositor tipo)
        {
            var sb = new StringBuilder();

            sb.Append(" select");
            sb.Append("    PES.EMAIL");
            sb.Append(" from ENCONTRO ENC");
            sb.Append("   inner join PESSOA PES on (ENC.ID_PESSOA = PES.ID)");
            sb.Append(" where ENC.NUM_ENCONTRO = " + numeroEncontro);

            if (tipo == EnTipoExpositor.expSocio)
            {
                sb.Append(" and PES.CODIGO_FICHA > 0");
            }

            if (tipo == EnTipoExpositor.expVisitante)
            {
                sb.Append(" and PES.CODIGO_VISITA > 0");
            }

            if (tipo == EnTipoExpositor.expCadSocio)
            {
                sb.Append(" and PES.CODIGO_SOCIO > 0");
            }

            sb.Append(" order by PES.EMAIL");

            var lista = new List <Pessoa>();

            using (_banco = new BancoFB())
            {
                _banco.RetornoReader(sb.ToString());
                while (_banco.Read())
                {
                    var model = new Pessoa();
                    model.Email = _banco.CampoStr("EMAIL");

                    if (model.Email.Trim() != "")
                    {
                        lista.Add(model);
                    }
                }
            }
            return(lista);
        }
示例#6
0
        public Pessoa Pesquisar(int id, string descricao, TipoConsulta tipo, EnTipoExpositor tipoExpositor)
        {
            Pessoa model = new Pessoa();

            if (tipo == TipoConsulta.Id)
            {
                model = _session.ServicePessoa.RetornarPorId(id);
            }
            if (tipo == TipoConsulta.Descricao)
            {
                if (!string.IsNullOrWhiteSpace(descricao))
                {
                    var lista = _session.ServicePessoa.ListarPorNome(descricao);

                    if (lista.Count == 1)
                    {
                        model = _session.ServicePessoa.RetornarPorId(lista.Single().Id);
                    }
                    else
                    {
                        var frm = new frmVisitante(tipoExpositor, true, descricao);
                        frm.ShowDialog();
                        if (frm.DialogResult == DialogResult.OK)
                        {
                            model = _session.ServicePessoa.RetornarPorId(Funcoes.IdRetorno);
                        }
                    }
                }
            }

            if (tipo == TipoConsulta.Tela)
            {
                var frm = new frmVisitante(tipoExpositor, true, "");
                frm.ShowDialog();
                if (frm.DialogResult == DialogResult.OK)
                {
                    model = _session.ServicePessoa.RetornarPorId(Funcoes.IdRetorno);
                }
            }
            return(model);
        }
示例#7
0
        public Pessoa ObterPorCPF(string cpf, EnTipoExpositor enTipoExpositor)
        {
            var model = _repositorioPessoa.RetornarTodos()
                        .Where(x => x.CPF == cpf.SoNumeros());

            if (enTipoExpositor == EnTipoExpositor.expCadSocio)
            {
                model.Where(x => x.CodigoSocio.HasValue);
            }

            if (enTipoExpositor == EnTipoExpositor.expExpositores)
            {
                model.Where(x => x.CodigoFicha.HasValue);
            }

            if (enTipoExpositor == EnTipoExpositor.expVisitante)
            {
                model.Where(x => x.CodigoVisita.HasValue);
            }

            return(model.FirstOrDefault());
        }
        public Pessoa ObterPorCPF(string cpf, EnTipoExpositor enTipoExpositor)
        {
            using (_banco = new BancoFB())
            {
                int id = 0;
                var sb = new StringBuilder();
                sb.AppendLine("SELECT ID FROM Pessoa where CPF = '" + cpf + "'");

                if (enTipoExpositor == EnTipoExpositor.expCadSocio)
                {
                    sb.AppendLine(" AND CODIGO_SOCIO IS NOT NULL");
                }
                if (enTipoExpositor == EnTipoExpositor.expSocio)
                {
                    sb.AppendLine(" AND CODIGO_FICHA IS NOT NULL");
                }
                if (enTipoExpositor == EnTipoExpositor.expVisitante)
                {
                    sb.AppendLine(" AND CODIGO_VISITA IS NOT NULL");
                }

                _banco.RetornoReader(sb.ToString());
                if (_banco.Read())
                {
                    id = _banco.CampoInt32("Id");
                }
                _banco.CloseReader();

                if (id > 0)
                {
                    return(ObterPorid(id));
                }
                else
                {
                    return(null);
                }
            }
        }
        private IQueryable <PessoaPesquisa> RetornarPesquisa(EnTipoExpositor enTipoExpositor)
        {
            var sb = new StringBuilder();

            sb.AppendLine("SELECT ID, NOME, CPF, RG, TELEFONE, CODIGO_FICHA, CODIGO_VISITA, CODIGO_SOCIO FROM PESSOA");

            if (enTipoExpositor == EnTipoExpositor.expSocio)
            {
                sb.AppendLine(" WHERE CODIGO_FICHA IS NOT NULL");
            }

            if (enTipoExpositor == EnTipoExpositor.expCadSocio)
            {
                sb.AppendLine(" WHERE CODIGO_SOCIO IS NOT NULL");
            }

            if (enTipoExpositor == EnTipoExpositor.expVisitante)
            {
                sb.AppendLine(" WHERE CODIGO_VISITA IS NOT NULL");
            }

            return(_uow.Connection.Query <PessoaPesquisa>(sb.ToString(), null).AsQueryable());
        }
示例#10
0
        public void Salvar(Pessoa model, EnTipoExpositor tipoExpositor)
        {
            if (string.IsNullOrWhiteSpace(model.Nome))
            {
                throw new Exception("Informe o Nome!");
            }

            if (!Validacao.ValidarCPF(model.CPF))
            {
                throw new Exception("CPF inválido");
            }

            model.CPF = model.CPF.SoNumeros();
            model.CEP = model.CEP.SoNumeros();

            if (model.Id == 0)
            {
                //var sequenciaServico = new ServicoSequencia(); // SequenciaServico();
                if (tipoExpositor == EnTipoExpositor.expCadSocio)
                {
                    model.CodigoSocio = _session.ServiceSequencia.IncrementarProximoNumero("SOCIO", "Cadastro de Sócios");
                }
                if (tipoExpositor == EnTipoExpositor.expSocio)
                {
                    model.CodigoFicha = _session.ServiceSequencia.IncrementarProximoNumero("PESSOA", "Expositor do Clube");
                }
                if (tipoExpositor == EnTipoExpositor.expVisitante)
                {
                    model.CodigoVisita = _session.ServiceSequencia.IncrementarProximoNumero("EXP_VISITA", "Expositor Visitante");
                }
                _repositorioPessoa.Adicionar(ref model);
            }
            else
            {
                _repositorioPessoa.Alterar(model);
            }
        }
示例#11
0
        private List <Pessoa> Filtrar(PessoaFiltro filtro, EnTipoExpositor tipo, int id = 0)
        {
            using (_banco = new BancoFB())
            {
                var sb = new StringBuilder();
                sb.AppendLine("SELECT P.ID, P.NOME, P.CPF, P.TELEFONE, P.CODIGO_SOCIO, P.CODIGO_FICHA, P.CODIGO_VISITA FROM Pessoa P");
                sb.AppendLine(" LEFT JOIN Cidade C ON P.ID_CIDADE = C.ID ");
                sb.AppendLine(" WHERE P.ID IS NOT NULL ");

                if (!string.IsNullOrWhiteSpace(filtro.CPF))
                {
                    sb.AppendLine(" AND P.CPF containing('" + filtro.CPF + "')");
                }

                if (!string.IsNullOrWhiteSpace(filtro.Nome))
                {
                    sb.AppendLine(" AND P.NOME containing('" + filtro.Nome + "')");
                }

                if (!string.IsNullOrWhiteSpace(filtro.NomeCidade))
                {
                    sb.AppendLine(" AND C.DESCRICAO containing('" + filtro.NomeCidade + "')");
                }

                if (!string.IsNullOrWhiteSpace(filtro.RG))
                {
                    sb.AppendLine(" AND P.RG containing('" + filtro.RG + "')");
                }

                if (!string.IsNullOrWhiteSpace(filtro.Telefone))
                {
                    sb.AppendLine(" AND P.TELEFONE containing('" + filtro.Telefone + "')");
                }

                if (!string.IsNullOrWhiteSpace(filtro.UF))
                {
                    sb.AppendLine(" AND C.UF containing('" + filtro.UF + "')");
                }

                if (tipo == EnTipoExpositor.expSocio)
                {
                    sb.AppendLine(" AND P.CODIGO_FICHA IS NOT NULL");
                }

                if (tipo == EnTipoExpositor.expCadSocio)
                {
                    sb.AppendLine(" AND P.CODIGO_SOCIO IS NOT NULL");
                }

                if (tipo == EnTipoExpositor.expVisitante)
                {
                    sb.AppendLine(" AND P.CODIGO_VISITA IS NOT NULL");
                }

                if (tipo == EnTipoExpositor.expExpositores)
                {
                    sb.AppendLine(" AND ((P.CODIGO_VISITA IS NOT NULL) OR (P.CODIGO_FICHA IS NOT NULL))");
                }

                if (id > 0)
                {
                    sb.AppendLine(" AND P.ID = " + id);
                }

                sb.AppendLine(" ORDER BY P.NOME");

                _banco.RetornoReader(sb.ToString());

                List <Pessoa> lista = new List <Pessoa>();
                while (_banco.Read())
                {
                    var model = new Pessoa();
                    model.Id       = _banco.CampoInt32("Id");
                    model.Codigo   = model.Id;
                    model.Nome     = _banco.CampoStr("Nome");
                    model.CPF      = _banco.CampoStr("CPF");
                    model.Telefone = _banco.CampoStr("Telefone");

                    lista.Add(model);
                }
                ;
                _banco.CloseReader();

                return(lista);
            }
        }
示例#12
0
 public List <string> ListarEmails(int numeroEncontro, EnTipoExpositor tipo)
 {
     return(_repositorioPessoa.ListarEmails(numeroEncontro, tipo).ToList());
 }