示例#1
0
        /// <summary>
        /// Excluindo documento do responsável
        /// </summary>
        /// <param name="listaRespDocumento">Busca do banco os documentos anteriores</param>
        /// <param name="listaDocumentoInseridos">Documentos atuais</param>
        /// <param name="pes_id">pes_id do responsável</param>
        /// <param name="bancoCore"></param>
        private static void ExcluirDocumentoReponsavel
        (
            List <PES_PessoaDocumento> listaRespDocumento
            , List <PES_PessoaDocumento> listaDocumentoInseridos
            , Guid pes_id
            , TalkDBTransaction bancoCore
        )
        {
            foreach (PES_PessoaDocumento item in listaRespDocumento)
            {
                if (!listaDocumentoInseridos.Exists
                        (p =>
                        p.tdo_id == item.tdo_id
                        ))
                {
                    // Se o tipo de documento não existir mais, excluir.
                    PES_PessoaDocumento doc = new PES_PessoaDocumento {
                        pes_id = pes_id, tdo_id = item.tdo_id
                    };
                    PES_PessoaDocumentoBO.Delete(doc, bancoCore);

                    // Decrementa integridade do tipo de documento.
                    SYS_TipoDocumentacaoBO.DecrementaIntegridade(doc.tdo_id, bancoCore);
                }
            }
        }
示例#2
0
    /// <summary>
    /// Inserindo em uma lista os documentos referente
    /// ao responsável.
    /// </summary>
    /// <param name="pes_id">id da pessoa</param>
    /// <param name="documentoCPF">o número do CPF</param>
    /// <param name="documentoRG">o número do RG</param>
    /// <param name="documentoNIS">o número do NIS</param>
    /// <returns>uma lista dos documentos referente a pessoa</returns>
    private List <PES_PessoaDocumento> InserirDocumentoResponsavel(Guid pes_id, string documentoCPF, string documentoRG, string documentoNIS)
    {
        List <PES_PessoaDocumento> lista = new List <PES_PessoaDocumento>();

        // Caso for declarado o CPF, será inserindo uma lista.
        if (!string.IsNullOrEmpty(documentoCPF))
        {
            //Faz uma busca do id do tipo de documento (tdo_id).
            string docPadraoCPF = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TIPO_DOCUMENTACAO_CPF);

            PES_PessoaDocumento entityPessoaDocumento = new PES_PessoaDocumento
            {
                pes_id = pes_id
                ,
                tdo_id = new Guid(docPadraoCPF)
                ,
                psd_numero = documentoCPF
            };

            lista.Add(entityPessoaDocumento);
        }

        // Caso for declarado o RG, será inserindo em uma lista.
        if (!string.IsNullOrEmpty(documentoRG))
        {
            //Faz uma busca do id do tipo de documento (tdo_id).
            string docPadraoRG = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TIPO_DOCUMENTACAO_RG);

            PES_PessoaDocumento entityPessoaDocumento = new PES_PessoaDocumento
            {
                pes_id = pes_id
                ,
                tdo_id = new Guid(docPadraoRG)
                ,
                psd_numero = documentoRG
            };

            lista.Add(entityPessoaDocumento);
        }

        // Caso for declarado o NIS, será inserindo em uma lista.
        if (!string.IsNullOrEmpty(documentoNIS))
        {
            // ID do tipo de documento NIS.
            Guid tdo_idNis = ACA_ParametroAcademicoBO.ParametroValorGuidPorEntidade(eChaveAcademico.TIPO_DOCUMENTACAO_NIS, __SessionWEB.__UsuarioWEB.Usuario.ent_id);

            PES_PessoaDocumento entityPessoaDocumento = new PES_PessoaDocumento
            {
                pes_id = pes_id
                ,
                tdo_id = tdo_idNis
                ,
                psd_numero = documentoNIS
            };

            lista.Add(entityPessoaDocumento);
        }

        return(lista);
    }
示例#3
0
        /// <summary>
        /// Salva os tipos de documento do responsável
        /// </summary>
        /// <param name="pesRespDoc">entidade Pes_PessoaDocumento</param>
        /// <param name="pes_id"></param>
        /// <param name="bancoCore"></param>
        private static void SalvaDocumento(PES_PessoaDocumento pesRespDoc, Guid pes_id, TalkDBTransaction bancoCore)
        {
            // Verifica se já existe esse documento para essa pessoa.
            PES_PessoaDocumento docAux = new PES_PessoaDocumento
            {
                pes_id = pes_id,
                tdo_id = pesRespDoc.tdo_id
            };

            PES_PessoaDocumentoBO.GetEntity(docAux, bancoCore);

            // Salvar documento.
            PES_PessoaDocumento doc = new PES_PessoaDocumento
            {
                pes_id                 = pes_id,
                tdo_id                 = pesRespDoc.tdo_id,
                psd_numero             = pesRespDoc.psd_numero,
                IsNew                  = docAux.IsNew,
                psd_infoComplementares = docAux.psd_infoComplementares,
                psd_orgaoEmissao       = docAux.psd_orgaoEmissao,
                psd_dataEmissao        = docAux.psd_dataEmissao,
                unf_idEmissao          = docAux.unf_idEmissao,
                psd_situacao           = 1
            };

            PES_PessoaDocumentoBO.Save(doc, bancoCore);

            if (doc.IsNew)
            {
                // Incrementar a integridade do tipo de documento.
                SYS_TipoDocumentacaoBO.IncrementaIntegridade(doc.tdo_id, bancoCore);
            }
        }
示例#4
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);
        }
示例#5
0
    /// <summary>
    /// Retorna o documento do responsável
    /// </summary>
    /// <param name="pes_id">id da pessoa</param>
    /// <param name="docPadrao">tipo de documento (RG ou CPF)</param>
    /// <returns>número do documento</returns>
    private string RetornaDocumentoResponsavel(Guid pes_id, string docPadrao)
    {
        PES_PessoaDocumento entityPessoaDocumento = new PES_PessoaDocumento
        {
            pes_id = pes_id
            ,
            tdo_id = new Guid(docPadrao)
        };

        PES_PessoaDocumentoBO.GetEntity(entityPessoaDocumento);

        return(entityPessoaDocumento.psd_numero);
    }
示例#6
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);
        }
示例#7
0
        /// <summary>
        /// Decrementa a integridade do DocumentoPessoa no Core para a pessoa.
        /// </summary>
        /// <param name="bancoCore">Transação do Core</param>
        /// <param name="tdo_id">ID do tipo de documentação (NIS,CPF e RG)</param>
        /// <param name="pes_id">pes_id do responsável</param>
        private static void DecrementaIntegridadeDocumentoPessoa
        (
            TalkDBTransaction bancoCore,
            Guid tdo_id,
            Guid pes_id
        )
        {
            PES_PessoaDocumento doc = new PES_PessoaDocumento {
                pes_id = pes_id, tdo_id = tdo_id
            };

            // Decrementa integridade do tipo de documento.
            SYS_TipoDocumentacaoBO.DecrementaIntegridade(doc.tdo_id, bancoCore);
        }
示例#8
0
        /// <summary>
        /// Inseri os documentos do responsável em uma list
        /// </summary>
        /// <param name="dr">linha da tabela referente ao aluno</param>
        /// <param name="pes_id">id da pessoa (responsável)</param>
        /// <returns>uma list com os documentos do responsável</returns>
        private static List <PES_PessoaDocumento> InserirListDocumentoResp(DataRow dr, Guid pes_id)
        {
            List <PES_PessoaDocumento> listPessoaDoc = new List <PES_PessoaDocumento>();

            // Adiciona na list o documento RG do responsável.
            if (!string.IsNullOrEmpty(dr["numeroDocumentoRG"].ToString()))
            {
                PES_PessoaDocumento entityDocResp = new PES_PessoaDocumento
                {
                    pes_id     = pes_id,
                    tdo_id     = new Guid(dr["tipoDocumentoRG"].ToString()),
                    psd_numero = dr["numeroDocumentoRG"].ToString()
                };
                listPessoaDoc.Add(entityDocResp);
            }

            // Adiciona na list o documento CPF do responsável.
            if (!string.IsNullOrEmpty(dr["numeroDocumentoCPF"].ToString()))
            {
                PES_PessoaDocumento entityDocResp = new PES_PessoaDocumento
                {
                    pes_id     = pes_id,
                    tdo_id     = new Guid(dr["tipoDocumentoCPF"].ToString()),
                    psd_numero = dr["numeroDocumentoCPF"].ToString()
                };
                listPessoaDoc.Add(entityDocResp);
            }

            //Adiciona na list o documento NIS do responsável.
            if (!string.IsNullOrEmpty(dr["numeroDocumentoNIS"].ToString()))
            {
                PES_PessoaDocumento entityDocResp = new PES_PessoaDocumento
                {
                    pes_id     = pes_id,
                    tdo_id     = new Guid(dr["tipoDocumentoNIS"].ToString()),
                    psd_numero = dr["numeroDocumentoNIS"].ToString()
                };
                listPessoaDoc.Add(entityDocResp);
            }

            return(listPessoaDoc);
        }
示例#9
0
    /// <summary>
    /// Arruma a StructColaboradorFiliacao da mae, que vai retornar a estrutura com os dados necessários para salvar a pessoa no banco.
    /// </summary>
    public StructColaboradorFiliacao ArrumaStructMae()
    {
        if (ValidaCampoDocumento(false))
        {
            throw new ValidationException("Nome da mãe é obrigatório.");
        }

        StructColaboradorFiliacao colaborador = new StructColaboradorFiliacao();

        // se a textbox estiver vazia, nao há dados da mãe
        if (!string.IsNullOrEmpty(txtMae.Text))
        {
            PES_Pessoa entPessoa = new PES_Pessoa();
            List <PES_PessoaDocumento> lstDocumento = new List <PES_PessoaDocumento>();
            PES_PessoaDocumento        cpf          = new PES_PessoaDocumento
            {
                tdo_id = new Guid(SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TIPO_DOCUMENTACAO_CPF))
            };
            PES_PessoaDocumento rg = new PES_PessoaDocumento
            {
                tdo_id = new Guid(SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TIPO_DOCUMENTACAO_RG))
            };
            if (_VS_pes_idFiliacaoMae != Guid.Empty)
            {
                entPessoa.pes_id = _VS_pes_idFiliacaoMae;
                PES_PessoaBO.GetEntity(entPessoa);
            }
            else
            {
                entPessoa.IsNew = true;
                cpf.IsNew       = true;
                rg.IsNew        = true;
            }

            entPessoa.pes_nome     = txtMae.Text;
            entPessoa.pes_situacao = 1;

            // Adiciona dados do CPF
            if (!string.IsNullOrEmpty(txtCPFMae.Text))
            {
                if (!UtilBO._ValidaCPF(txtCPFMae.Text))
                {
                    throw new ValidationException("CPF da mãe é inválido.");
                }

                cpf.pes_id = _VS_pes_idFiliacaoMae;
                PES_PessoaDocumentoBO.GetEntity(cpf);
                cpf.psd_numero   = txtCPFMae.Text;
                cpf.psd_situacao = 1;
                lstDocumento.Add(cpf);
            }

            // Adiciona dados do Rg
            if (!string.IsNullOrEmpty(txtRGMae.Text))
            {
                rg.pes_id = _VS_pes_idFiliacaoMae;
                PES_PessoaDocumentoBO.GetEntity(rg);
                rg.psd_numero   = txtRGMae.Text;
                rg.psd_situacao = 1;
                lstDocumento.Add(rg);
            }

            colaborador.listaDocumentos = lstDocumento;
            colaborador.entPessoa       = entPessoa;
        }

        return(colaborador);
    }