/// <summary>
        /// Retorna um list de entidade PES_CertidaoCivil contendo
        /// todas as certidoes da pessoa que não foram excluídos
        /// logicamente, filtrados pelo id da pessoa
        /// </summary>
        /// <param name="pes_id">Id da pessoa</param>
        /// <returns></returns>
        public List <PES_CertidaoCivil> SelectBy_pes_id(Guid pes_id)
        {
            List <PES_CertidaoCivil>   lt = new List <PES_CertidaoCivil>();
            QuerySelectStoredProcedure qs = new QuerySelectStoredProcedure("NEW_PES_CertidaoCivil_SelectBy_Pessoa", _Banco);

            try
            {
                #region Parâmetros

                Param               = qs.NewParameter();
                Param.DbType        = DbType.Guid;
                Param.ParameterName = "@pes_id";
                Param.Size          = 16;
                Param.Value         = pes_id;
                qs.Parameters.Add(Param);

                #endregion

                qs.Execute();

                foreach (DataRow dr in qs.Return.Rows)
                {
                    PES_CertidaoCivil entity = new PES_CertidaoCivil();
                    lt.Add(DataRowToEntity(dr, entity));
                }
                return(lt);
            }
            finally
            {
                qs.Parameters.Clear();
            }
        }
Пример #2
0
        /// <summary>
        /// Método para carregar os dados da certidão civil
        /// apartir do Id da pessoa
        /// </summary>
        /// <param name="pes_id">Id da pessoa</param>
        public void CarregaCertidaoCivil(Guid pes_id)
        {
            List <PES_CertidaoCivil> lt = PES_CertidaoCivilBO.SelecionaPorPessoa(pes_id);

            PES_CertidaoCivil entityCertidaoCivil = new PES_CertidaoCivil();

            if (lt.Count > 0)
            {
                entityCertidaoCivil = (lt.Select(p => p.ctc_tipo).Distinct().Count() > 1
                                           ? lt.Find(
                                           p =>
                                           p.ctc_tipo ==
                                           Convert.ToByte(PES_CertidaoCivilBO.TipoCertidaoCivil.Casamento))
                                           : lt.FirstOrDefault());
            }

            CarregaCertidaoCivil(entityCertidaoCivil);
        }
        /// <summary>
        /// Retorna a entidade PES_CertidaoCivil
        /// filtrado por pessoa e tipo da certidão
        /// </summary>
        /// <param name="pes_id">Id da pessoa</param>
        /// <param name="ctc_tipo">Tipo da certidão</param>
        /// <returns></returns>
        public PES_CertidaoCivil SelecionaPorTipoCertidao(Guid pes_id, byte ctc_tipo)
        {
            QuerySelectStoredProcedure qs = new QuerySelectStoredProcedure("NEW_PES_CertidaoCivil_SelecionaTipoCertidao", _Banco);

            try
            {
                #region Parâmetros

                Param               = qs.NewParameter();
                Param.DbType        = DbType.Guid;
                Param.ParameterName = "@pes_id";
                Param.Size          = 16;
                Param.Value         = pes_id;
                qs.Parameters.Add(Param);

                Param               = qs.NewParameter();
                Param.DbType        = DbType.Byte;
                Param.ParameterName = "@ctc_tipo";
                Param.Size          = 1;
                Param.Value         = ctc_tipo;
                qs.Parameters.Add(Param);

                #endregion

                qs.Execute();

                DataTable         dt     = qs.Return;
                PES_CertidaoCivil entity = new PES_CertidaoCivil();

                if (dt.Rows.Count > 0)
                {
                    return(DataRowToEntity(dt.Rows[0], entity));
                }
                else
                {
                    return(entity);
                }
            }
            finally
            {
                qs.Parameters.Clear();
            }
        }
Пример #4
0
        /// <summary>
        /// Método para carregar os dados da certidao civil
        /// apartir da entidade de certidão cívil
        /// </summary>
        public void CarregaCertidaoCivil(PES_CertidaoCivil certidao)
        {
            _VS_ctc_id = certidao.ctc_id;
            _VS_pes_id = certidao.pes_id;

            txtMatricula.Text   = certidao.ctc_matricula;
            tbNumTerm.Text      = certidao.ctc_numeroTermo;
            tbFolha.Text        = certidao.ctc_folha;
            tbLivro.Text        = certidao.ctc_livro;
            tbDtEmissao.Text    = certidao.ctc_dataEmissao != new DateTime() ? certidao.ctc_dataEmissao.ToString("dd/MM/yyyy") : string.Empty;
            tbNomeCart.Text     = certidao.ctc_nomeCartorio;
            tbDistritoCart.Text = certidao.ctc_distritoCartorio;

            _txtCid_id.Value = certidao.cid_idCartorio.ToString();
            ////Carrega a cidade
            END_Cidade cidade = new END_Cidade {
                cid_id = certidao.cid_idCartorio
            };

            END_CidadeBO.GetEntity(cidade);
            tbCidadeCart.Text = cidade.cid_nome;

            if (rblTipoCertidao.Items.FindByValue(certidao.ctc_tipo.ToString()) != null)
            {
                rblTipoCertidao.SelectedValue = certidao.ctc_tipo.ToString();
            }
            else if (rblTipoCertidao.Items.Count > 0)
            {
                rblTipoCertidao.SelectedValue = rblTipoCertidao.Items[0].Value;
            }

            lblCertidao.Text = rblTipoCertidao.SelectedItem.Text;

            ddlUF.SelectedValue = certidao.unf_idCartorio.ToString();

            chbGemeos.Checked = certidao.ctc_gemeo;
        }
Пример #5
0
        public static bool Save
        (
            PES_Pessoa entityPessoa
            , PES_PessoaDeficiencia entityPessoaDeficiencia
            , DataTable dtEndereco
            , DataTable dtContato
            , DataTable dtDocumento
            , PES_CertidaoCivil entityCertidaoCivil
            , Guid pai_idAntigo
            , Guid cid_idAntigo
            , StructColaboradorFiliacao PaiAntigo
            , StructColaboradorFiliacao MaeAntigo
            , Guid tes_idAntigo
            , Guid tde_idAntigo
            , RHU_Colaborador entityColaborador
            , DataTable dtCargoFuncao
            , DataTable dtCargoDisciplina
            , bool bSalvarUsuario
            , bool bSalvarLive
            , SYS_Usuario entityUsuario
            , bool bEnviaEmail
            , string sNomePortal
            , string sHost
            , string sEmailSuporte
            , Guid ent_idUsuario
            , ACA_Docente entityDocente
            , string[] arquivosPermitidos
            , int tamanhoMaximoKB
            , CFG_Arquivo entFoto
            , bool ExcluirImagemAtual
        )
        {
            TalkDBTransaction bancoCore   = new PES_PessoaDAO()._Banco.CopyThisInstance();
            TalkDBTransaction bancoGestao = new ACA_DocenteDAO()._Banco.CopyThisInstance();

            bancoCore.Open(IsolationLevel.ReadCommitted);
            bancoGestao.Open(IsolationLevel.ReadCommitted);

            try
            {
                //Limpa o cache do docente
                CacheManager.Factory.Remove(string.Format(ModelCache.DOCENTE_POR_ENTIDADE_PESSOA_MODEL_KEY, entityColaborador.ent_id, entityPessoa.pes_id));

                //Verifica se os dados da pessoa serão sempre salvos em maiúsculo.
                string sSalvarMaiusculo        = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.SALVAR_SEMPRE_MAIUSCULO);
                bool   Salvar_Sempre_Maiusculo = !string.IsNullOrEmpty(sSalvarMaiusculo) && Convert.ToBoolean(sSalvarMaiusculo);

                var y = from DataRow dr in dtCargoFuncao.Rows
                        where dr.RowState == DataRowState.Deleted
                        select dr;

                if (dtCargoFuncao.Rows.Count == 0 || y.Count() == dtCargoFuncao.Rows.Count)
                {
                    throw new ValidationException("É obrigatório o preenchimento de pelo menos um vínculo de trabalho do docente.");
                }

                string sPadraoUsuarioDocente = ACA_ParametroAcademicoBO.ParametroValorPorEntidade(eChaveAcademico.PAR_GRUPO_PERFIL_DOCENTE, ent_idUsuario);

                //Integraçao como o live
                UserLive entityUserLive = null;
                if (bSalvarLive)
                {
                    entityUserLive = new UserLive(eTipoUserLive.Docente);

                    //Cria o usuário docente para integraçao como o live
                    ManageUserLive live = new ManageUserLive();
                    entityUserLive.email = entityUsuario.usu_email;
                    entityUserLive.senha = entityUsuario.usu_senha;

                    //Caso seja alteração carrega as turma
                    //TODO: Fazer método específico para buscar apenas pelo doc_id.
                    DataTable dtTurmas = entityDocente.doc_id > 0 ?
                                         TUR_TurmaBO.GetSelectBy_Pesquisa_TodosTipos
                                             (Guid.Empty, Guid.Empty, Guid.Empty, Guid.Empty, 0, 0, 0, 0, 0, 0, "", entityDocente.doc_id, false) : new DataTable();

                    //Obtendo CPF do docente
                    string tdo_id = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TIPO_DOCUMENTACAO_CPF);

                    var x = from DataRow dr in dtDocumento.Rows
                            where dr.RowState != DataRowState.Deleted && dr["tdo_id"].ToString() == tdo_id
                            select dr["numero"].ToString();

                    //Carrega primeira matricula ativa associada ao cargo de docente do colaborador
                    var mat = from DataRow dr in dtCargoFuncao.Rows
                              where dr.RowState != DataRowState.Deleted && dr["situacao_id"].ToString() == "1"
                              select dr["coc_matricula"].ToString();

                    //Carrega os tipos de disciplinas
                    var tipo_dis = from DataRow dr in dtCargoDisciplina.Rows
                                   where dr.RowState != DataRowState.Deleted
                                   select dr["tds_id"].ToString();

                    DataTable dtTipoDisciplinas = tipo_dis.Count() > 0 ?
                                                  ACA_TipoDisciplinaBO.SelecionaTipoDisciplinaPorTipoDisciplina
                                                      (Convert.ToInt32(tipo_dis.First()), bancoGestao, ent_idUsuario) : new DataTable();

                    if (x.Count() > 0)
                    {
                        DadosUserDocente dadosDocente = new DadosUserDocente
                        {
                            nome = entityPessoa.pes_nome
                            ,
                            CPF = x.First()
                            ,
                            matricula = mat.Count() > 0 ? mat.First() : string.Empty
                            ,
                            turma = dtTurmas.Rows.Count > 0 ? dtTurmas.Rows[0]["tur_cod_desc_nome"].ToString() : string.Empty
                            ,
                            serie = dtTurmas.Rows.Count > 0 ? dtTurmas.Rows[0]["crp_descricao"].ToString() : string.Empty
                            ,
                            disciplina = dtTipoDisciplinas.Rows.Count > 0 ? dtTipoDisciplinas.Rows[0]["tds_nome"].ToString() : string.Empty
                        };
                        entityUserLive.dadosUserDocente = dadosDocente;
                    }
                    else
                    {
                        if (!live.VerificarContaEmailExistente(entityUserLive))
                        {
                            throw new ArgumentException("CPF é um documento obrigatório, para integração do docente com live.");
                        }
                    }
                }

                RHU_ColaboradorBO.Save(entityPessoa
                                       , entityPessoaDeficiencia
                                       , dtEndereco
                                       , dtContato
                                       , dtDocumento
                                       , entityCertidaoCivil
                                       , pai_idAntigo
                                       , cid_idAntigo
                                       , PaiAntigo
                                       , MaeAntigo
                                       , tes_idAntigo
                                       , tde_idAntigo
                                       , entityColaborador
                                       , dtCargoFuncao
                                       , dtCargoDisciplina
                                       , bSalvarUsuario
                                       , bSalvarLive
                                       , entityUsuario
                                       , entityUserLive
                                       , sPadraoUsuarioDocente
                                       , bEnviaEmail
                                       , sNomePortal
                                       , sHost
                                       , sEmailSuporte
                                       , ent_idUsuario
                                       , bancoCore
                                       , bancoGestao
                                       , arquivosPermitidos
                                       , tamanhoMaximoKB
                                       , entFoto
                                       , ExcluirImagemAtual);

                entityDocente.col_id = entityColaborador.col_id;

                if (entityDocente.Validate())
                {
                    Save(entityDocente, bancoGestao);
                }
                else
                {
                    throw new ValidationException(GestaoEscolarUtilBO.ErrosValidacao(entityDocente));
                }

                return(true);
            }
            catch (Exception err)
            {
                bancoGestao.Close(err);
                bancoCore.Close(err);

                throw;
            }
            finally
            {
                bancoGestao.Close();
                bancoCore.Close();
            }
        }
Пример #6
0
    /// <summary>
    /// Salva dados do aluno
    /// </summary>
    private void Salvar(bool novo)
    {
        try
        {
            string msgErro;
            if (lblMessage.Text == string.Empty && !UCGridContato1.SalvaConteudoGrid(out msgErro))
            {
                UCGridContato1._MensagemErro.Visible = false;
                lblMessage.Text = msgErro;
                return;
            }

            PES_Pessoa entityPessoa = new PES_Pessoa
            {
                pes_nome = txtNome.Text
                ,
                cid_idNaturalidade = string.IsNullOrEmpty(_txtCid_id.Value) ? Guid.Empty : new Guid(_txtCid_id.Value)
                ,
                pes_dataNascimento = string.IsNullOrEmpty(txtDataNasc.Text) ? new DateTime() : Convert.ToDateTime(txtDataNasc.Text)
                ,
                pes_racaCor = UCComboRacaCor1._Combo.SelectedValue == "-1" ? Convert.ToByte(null) : Convert.ToByte(UCComboRacaCor1._Combo.SelectedValue)
                ,
                pes_sexo = UCComboSexo1._Combo.SelectedValue == "-1" ? Convert.ToByte(null) : Convert.ToByte(UCComboSexo1._Combo.SelectedValue)
                ,
                pes_estadoCivil = UCComboEstadoCivil1._Combo.SelectedValue == "-1" ? Convert.ToByte(null) : Convert.ToByte(UCComboEstadoCivil1._Combo.SelectedValue)
                ,
                pes_situacao = 1
                ,
                IsNew = true
            };

            PES_PessoaDeficiencia entityPessoaDeficiencia = new PES_PessoaDeficiencia
            {
                tde_id = new Guid(UCComboTipoDeficiencia1._Combo.SelectedValue)
            };

            END_Cidade cid = new END_Cidade
            {
                cid_id = new Guid(_txtCid_idCertidao.Value)
            };
            END_CidadeBO.GetEntity(cid);

            PES_CertidaoCivil entityCertidaoCivil = new PES_CertidaoCivil
            {
                ctc_tipo = 1
                ,
                cid_idCartorio = new Guid(_txtCid_idCertidao.Value)
                ,
                unf_idCartorio = cid.unf_id
                ,
                ctc_distritoCartorio = txtDistritoCertidao.Text
                ,
                ctc_dataEmissao = string.IsNullOrEmpty(txtDataEmissao.Text) ? new DateTime() : Convert.ToDateTime(txtDataEmissao.Text)
                ,
                ctc_folha = txtFolha.Text
                ,
                ctc_livro = txtLivro.Text
                ,
                ctc_numeroTermo = txtNumeroTermo.Text
            };

            END_Endereco entityEndereco;
            string       numero;
            string       complemento;
            string       msg;

            bool cadastraEndereco = UCEnderecos1.RetornaEnderecoCadastrado(out entityEndereco, out numero, out complemento, out msg);

            if (!cadastraEndereco)
            {
                throw new ValidationException(msg);
            }

            DataTable dtEndereco = string.IsNullOrEmpty(entityEndereco.end_cep) ? new DataTable() : UCEnderecos1._VS_enderecos;

            ACA_Aluno entityAluno = new ACA_Aluno
            {
                ent_id = __SessionWEB.__UsuarioWEB.Usuario.ent_id
                ,
                alu_situacao = _ddlSituacao.SelectedValue == "-1" ? Convert.ToByte(0) : Convert.ToByte(_ddlSituacao.SelectedValue)
                ,
                IsNew = true
            };

            ACA_AlunoCurriculo entityAlunoCurriculo = new ACA_AlunoCurriculo
            {
                esc_id = UCFiltroEscolas1._ComboUnidadeEscola.SelectedValue.Split(';')[0] == "-1" ? Convert.ToInt32(null) : Convert.ToInt32(UCFiltroEscolas1._ComboUnidadeEscola.SelectedValue.Split(';')[0])
                ,
                uni_id = UCFiltroEscolas1._ComboUnidadeEscola.SelectedValue.Split(';')[1] == "-1" ? Convert.ToInt32(null) : Convert.ToInt32(UCFiltroEscolas1._ComboUnidadeEscola.SelectedValue.Split(';')[1])
                ,
                cur_id = UCComboCurriculoPeriodo1._Combo.SelectedValue.Split(';')[0] == "-1" ? Convert.ToInt32(null) : Convert.ToInt32(UCComboCurriculoPeriodo1._Combo.SelectedValue.Split(';')[0])
                ,
                crr_id = UCComboCurriculoPeriodo1._Combo.SelectedValue.Split(';')[1] == "-1" ? Convert.ToInt32(null) : Convert.ToInt32(UCComboCurriculoPeriodo1._Combo.SelectedValue.Split(';')[1])
                ,
                crp_id = UCComboCurriculoPeriodo1._Combo.SelectedValue.Split(';')[2] == "-1" ? Convert.ToInt32(null) : Convert.ToInt32(UCComboCurriculoPeriodo1._Combo.SelectedValue.Split(';')[2])
                ,
                alc_matriculaEstadual = txtMatriculaEstadual.Text
                ,
                alc_situacao = _ddlSituacao.SelectedValue == "-1" ? Convert.ToByte(0) : Convert.ToByte(_ddlSituacao.SelectedValue)
            };

            if (ACA_AlunoBO.Save_CadastroRapido(entityPessoa
                                                , entityPessoaDeficiencia
                                                , dtEndereco
                                                , UCGridContato1._VS_contatos
                                                , entityCertidaoCivil
                                                , txtMae.Text
                                                , txtCPFMae.Text
                                                , txtPai.Text
                                                , txtCPFPai.Text
                                                , rfvMatriculaEstadual.Enabled
                                                , entityAluno
                                                , entityAlunoCurriculo
                                                , null
                                                , null))
            {
                ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Insert, "alu_id: " + entityAluno.alu_id);
                __SessionWEB.PostMessages = UtilBO.GetErroMessage(String.Format("Aluno incluído com sucesso."), UtilBO.TipoMensagem.Sucesso);

                Response.Redirect("CadastroRapido.aspx", false);
                HttpContext.Current.ApplicationInstance.CompleteRequest();

                string redirect = novo ?
                                  "~/Academico/Aluno/CadastroRapido.aspx" :
                                  "~/Academico/Aluno/Busca.aspx";

                Response.Redirect(redirect, false);
                Context.ApplicationInstance.CompleteRequest();
            }
            else
            {
                lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o aluno.", UtilBO.TipoMensagem.Erro);
            }
        }
        catch (ThreadAbortException)
        {
        }
        catch (ValidationException ex)
        {
            UCEnderecos1.AtualizaEnderecos();
            lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
        }
        catch (ArgumentException ex)
        {
            UCEnderecos1.AtualizaEnderecos();
            lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
        }
        catch (DuplicateNameException ex)
        {
            UCEnderecos1.AtualizaEnderecos();
            lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
        }
        catch (Exception ex)
        {
            UCEnderecos1.AtualizaEnderecos();
            ApplicationWEB._GravaErro(ex);
            lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o aluno.", UtilBO.TipoMensagem.Erro);
        }
    }