/// <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); }
/// <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); }