Ejemplo n.º 1
0
        /// <summary>
        /// Retorna ID da entidade de pessoa do responsável por CPF.
        /// </summary>
        /// <param name="cpf">Número de CPF.</param>
        /// <returns></returns>
        public static Guid RetornaIdPessoaResponsavelPorCPF(string cpf)
        {
            // Faz uma busca do id do tipo de documento (tdo_id).
            string docPadraoCPF = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TIPO_DOCUMENTACAO_CPF);
            Guid   PadraoCPF    = new Guid(docPadraoCPF);

            // Verifica se existe uma pessoa cadastro com o número de CPF informado.
            PES_PessoaDocumento pessoaResponsavel = PES_PessoaDocumentoBO.GetEntityBy_Documento(cpf, PadraoCPF);

            return(pessoaResponsavel.pes_id);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Valida o CPF do responsável
        /// 1º verifica se o CPF é válido.
        /// 2º verifica se já existe uma pessoa cadastra com mesmo número de CPF.
        /// </summary>
        /// <param name="responsavelCPF">numero do documento - CPF</param>
        /// <param name="tra_id"></param>
        /// <param name="ListValidacoesDoc">Lista das validações dos reponsáveis</param>
        /// <param name="ent_id">Id da entidade do usuário logado.</param>
        /// <param name="ListSalvar">Lista de responsaveis que estao sendo salvos, para nao considerar o mesmo documento</param>
        /// <returns>
        /// Retorna o pes_id novo caso não tenha uma pessoa cadastrada com número do CPF.
        /// </returns>
        private static Guid Valida_Responsavel_CPF(List <PES_PessoaDocumento> responsavelCPF, Int32 tra_id, ref List <string> ListValidacoesDoc, Guid ent_id, Guid pes_id, List <StructCadastro> ListSalvar)
        {
            // Faz uma busca do id do tipo de documento (tdo_id).
            string docPadraoCPF = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TIPO_DOCUMENTACAO_CPF);
            Guid   PadraoCPF    = new Guid(docPadraoCPF);

            foreach (PES_PessoaDocumento item in responsavelCPF)
            {
                if (item.tdo_id == PadraoCPF)
                {
                    // Faz a validação do número do Cpf
                    if (!UtilBO._ValidaCPF(item.psd_numero))
                    {
                        string msg;
                        Int32  tra_idMae = TipoResponsavelAlunoParametro.tra_idMae(ent_id);
                        Int32  tra_idPai = TipoResponsavelAlunoParametro.tra_idPai(ent_id);

                        if (!(tra_id == tra_idMae) && !(tra_id == tra_idPai))
                        {
                            msg = "O responsável ";
                        }
                        else
                        {
                            msg = (tra_id == tra_idMae) ? "A mãe " : "O pai ";
                        }

                        ListValidacoesDoc.Add(msg + "possui o número do CPF inválido.");
                    }

                    // Verifica se existe uma pessoa cadastrada com o número de CPF informado.
                    PES_PessoaDocumento pessoaResponsavel = PES_PessoaDocumentoBO.GetEntityBy_Documento(item.psd_numero, PadraoCPF);

                    // Se encontrou uma pessoa diferente com o mesmo numero de CPF
                    // e nao eh nenhuma das outras pessoas que tambem estao sendo salvas...
                    if (pessoaResponsavel.pes_id != Guid.Empty &&
                        pessoaResponsavel.pes_id != pes_id &&
                        !ListSalvar.Any(p => p.entPessoa.pes_id == pessoaResponsavel.pes_id))
                    {
                        // Retorna a pessoa cadastrada com o mesmo numero de CPF
                        return(pessoaResponsavel.pes_id);
                    }
                    else
                    {
                        // Retorno a propria pessoa
                        return(pes_id);
                    }
                }
            }
            return(pes_id);
        }