コード例 #1
0
ファイル: UCComboDocente.ascx.cs プロジェクト: Mualumene/SGP
    /// <summary>
    /// Mostra os docentes não excluídos logicamente no dropdownlist, podendo
    /// fazer a busca considerando ou desconsiderando a escola unidade e os bloqueados.
    /// </summary>
    public void _Load_By_esc_uni_id(string esc_uni_id, byte doc_situacao)
    {
        try
        {
            int esc_id = 0;
            int uni_id = 0;

            if (!string.IsNullOrEmpty(esc_uni_id))
            {
                esc_id = Convert.ToInt32(esc_uni_id.Split(';')[0]);
                uni_id = Convert.ToInt32(esc_uni_id.Split(';')[1]);
            }
            _ddlDocente.Items.Clear();

            _ddlDocente.DataTextField = "doc_nome";

            DataTable dt = ACA_DocenteBO.SelecionaPorEscola(esc_id, uni_id, __SessionWEB.__UsuarioWEB.Usuario.ent_id);
            _MostrarMessageSelecione = true;
            _ddlDocente.DataSource   = dt;
            _ddlDocente.DataBind();
        }
        catch
        {
            throw;
        }
    }
コード例 #2
0
ファイル: Busca.aspx.cs プロジェクト: Mualumene/SGP
    protected void _grvDocente_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "Deletar")
        {
            try
            {
                int  index  = int.Parse(e.CommandArgument.ToString());
                long doc_id = Convert.ToInt64(_grvDocente.DataKeys[index].Values["doc_id"]);

                ACA_Docente entity = new ACA_Docente {
                    doc_id = doc_id
                };
                ACA_DocenteBO.GetEntity(entity);

                if (ACA_DocenteBO.Delete(entity))
                {
                    _grvDocente.PageIndex = 0;
                    _grvDocente.DataBind();
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Delete, "doc_id: " + doc_id);
                    _lblMessage.Text = UtilBO.GetErroMessage("Docente excluído com sucesso.", UtilBO.TipoMensagem.Sucesso);
                }
            }
            catch (ValidationException ex)
            {
                _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar excluir o docente.", UtilBO.TipoMensagem.Erro);
            }
        }
    }
コード例 #3
0
ファイル: UCComboDocente.ascx.cs プロジェクト: Mualumene/SGP
 /// <summary>
 /// Carrega o combo com os professores que possuem a função informado para a escola
 /// </summary>
 /// <param name="esc_id">ID  da escola</param>
 /// <param name="uni_id"> ID da unidade</param>
 /// <param name="fun_id">ID da função</param>
 /// <param name="doc_id">ID do docente especifico(pode ser ignorado o filtro)</param>
 public void LoadBy_Funcao(Int32 esc_id, Int32 uni_id, Int32 fun_id, Int64 doc_id = 0)
 {
     _ddlDocente.Items.Clear();
     _ddlDocente.DataSource   = ACA_DocenteBO.SelecionaDocentesPorFuncaoEscola(esc_id, uni_id, fun_id, doc_id);
     _MostrarMessageSelecione = true;
     _ddlDocente.DataBind();
     _CancelaSelect = true;
 }
コード例 #4
0
ファイル: UCComboDocente.ascx.cs プロジェクト: Mualumene/SGP
    /// <summary>
    /// Método que carrega os docentes
    /// </summary>
    /// <param name="esc_id">Id da escola</param>
    private void CarregarDocente(int esc_id)
    {
        _ddlDocente.Items.Clear();
        _MostrarMessageSelecione = true;
        _CancelaSelect           = false;

        _ddlDocente.DataTextField = "doc_nome";

        DataTable dt = ACA_DocenteBO.GetSelectBy_EscolaCargo(esc_id, __SessionWEB.__UsuarioWEB.Usuario.ent_id);

        _ddlDocente.DataSource = dt;
        _ddlDocente.DataBind();
    }
コード例 #5
0
ファイル: UCComboDocente.ascx.cs プロジェクト: Mualumene/SGP
    /// <summary>
    /// Método que carrega os docentes
    /// </summary>
    /// <param name="esc_id">Id da escola</param>
    public void CarregarDocentePorTurma(int esc_id, long tur_id)
    {
        _ddlDocente.Items.Clear();
        _MostrarMessageSelecione = true;
        _CancelaSelect           = false;

        _ddlDocente.DataTextField = "doc_nome";

        DataTable dt = ACA_DocenteBO.SelecionaPorTurma(__SessionWEB.__UsuarioWEB.Usuario.ent_id, esc_id, tur_id);

        _ddlDocente.DataSource = dt;
        _ddlDocente.DataBind();
    }
コード例 #6
0
ファイル: UCComboDocente.ascx.cs プロジェクト: Mualumene/SGP
    /// <summary>
    /// Método que carrega os docentes e seus respectivos cargos da turma
    /// </summary>
    /// <param name="esc_id">Id da escola</param>
    /// <param name="tur_id">ID da turma</param>
    private void CarregarDocenteExibindoCargo_Turma(int esc_id, long tur_id)
    {
        _ddlDocente.Items.Clear();
        _CancelaSelect = false;

        _ddlDocente.Items.Insert(0, new ListItem("-- Selecione um docente --", "-1;-1;-1;-1", true));
        _ddlDocente.AppendDataBoundItems = true;

        _ddlDocente.DataTextField  = "doc_NomeCargo";
        _ddlDocente.DataValueField = "doc_col_crg_coc_id";
        cpvCombo.ValueToCompare    = "-1;-1;-1;-1";

        DataTable dt = ACA_DocenteBO.GetSelectBy_Turma_EscolaCargo_ExibindoCargo(esc_id, tur_id, __SessionWEB.__UsuarioWEB.Usuario.ent_id);

        _ddlDocente.DataSource = dt;
        _ddlDocente.DataBind();
    }
コード例 #7
0
        /// <summary>
        /// Pesquisa os docentes
        /// </summary>
        private void Pesquisar()
        {
            try
            {
                // quantidade de itens por página
                string qtItensPagina = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.QT_ITENS_PAGINACAO);
                int    itensPagina   = string.IsNullOrEmpty(qtItensPagina) ? ApplicationWEB._Paginacao : Convert.ToInt32(qtItensPagina);
                // mostra essa quantidade no combobox
                UCComboQtdePaginacao1.Valor = itensPagina;
                // atribui essa quantidade para o grid
                grvDocente.PageSize = itensPagina;
                // atualiza o grid
                int tdsId = -1;
                if (ddlDisciplina.Items.Count > 0 && ddlDisciplina.SelectedIndex > 0)
                {
                    tdsId = Convert.ToInt32(ddlDisciplina.SelectedValue);
                }
                //grvDocente.PageIndex = 0;
                //odsDocente.SelectParameters.Clear();
                //odsDocente.SelectMethod = "SelectBy_PesquisaEscola";
                //odsDocente.DataObjectTypeName = "MSTech.GestaoEscolar.Entities.ACA_Docente";
                //odsDocente.TypeName = "MSTech.GestaoEscolar.BLL.ACA_DocenteBO";

                //odsDocente.SelectParameters.Add("escId", IdEscola.ToString());
                //odsDocente.SelectParameters.Add("nome", txtNome.Text.Trim());
                //odsDocente.SelectParameters.Add("matricula", txtMatricula.Text.Trim());
                //odsDocente.SelectParameters.Add("cpf", txtCPF.Text.Trim());
                //odsDocente.SelectParameters.Add("tdsId", tdsId.ToString());

                grvDocente.DataSource = ACA_DocenteBO.SelectBy_PesquisaEscola(IdEscola, txtNome.Text, txtMatricula.Text, txtCPF.Text, tdsId);
                grvDocente.DataBind();
                fdsResultado.Visible = true;
            }
            catch (ValidationException ex)
            {
                lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar os docentes.", UtilBO.TipoMensagem.Erro);
            }
        }
コード例 #8
0
ファイル: UCComboDocente.ascx.cs プロジェクト: Mualumene/SGP
    /// <summary>
    /// Carrega o combo com os professores que podem lecionar a matéria (tds_id) ou que
    /// sejam especialistas, caso no crg_especialista seja passado true.
    /// </summary>
    public void _LoadBy_Especialidade
        (Int32 esc_id, Int32 uni_id, bool crg_especialista, Int32 tds_id, bool mensagemSelecione, ref DataTable dtDocentesEscola)
    {
        _ddlDocente.Items.Clear();

        if (mensagemSelecione)
        {
            _ddlDocente.Items.Insert(0, new ListItem("-- Selecione um docente --", "-1;-1;-1;-1", true));
            _ddlDocente.AppendDataBoundItems = true;
            cpvCombo.ValueToCompare          = "-1;-1;-1;-1";
        }

        _ddlDocente.DataTextField  = "doc_NomeCargo";
        _ddlDocente.DataValueField = "doc_col_crg_coc_id";

        if (dtDocentesEscola == null)
        {
            dtDocentesEscola = ACA_DocenteBO.GetSelectBy_Especialidade_Escola(esc_id, uni_id, __SessionWEB.__UsuarioWEB.Usuario.ent_id);
        }

        // Filtra a tabela por cargo especialista e tds_id.
        var lista =
            (from DataRow dr in dtDocentesEscola.Rows
             where
             (crg_especialista && Convert.ToBoolean(dr["crg_especialista"]))
             ||
             (tds_id == Convert.ToInt32(dr["tds_id"]))
             select
             new
        {
            doc_NomeCargo = dr["doc_NomeCargo"].ToString() + ((Convert.ToBoolean(dr["coc_vinculoExtra"]) && VS_vinculoExtra) ? " - Vínculo extra" : string.Empty)
            ,
            doc_col_crg_coc_id = dr["doc_col_crg_coc_id"]
            ,
        }
            ).Distinct();

        _ddlDocente.DataSource = lista;
        _ddlDocente.DataBind();

        _CancelaSelect = true;
    }
コード例 #9
0
ファイル: Busca.aspx.cs プロジェクト: Mualumene/SGP
    protected void _grvDocente_DataBound(object sender, EventArgs e)
    {
        UCTotalRegistros1.Total = ACA_DocenteBO.GetTotalRecords();

        // seta propriedades necessárias para ordenação nas colunas.
        ConfiguraColunasOrdenacao(_grvDocente);

        if ((!string.IsNullOrEmpty(_grvDocente.SortExpression)) &&
            (__SessionWEB.BuscaRealizada.PaginaBusca == PaginaGestao.Docentes))
        {
            Dictionary <string, string> filtros = __SessionWEB.BuscaRealizada.Filtros;

            if (filtros.ContainsKey("VS_Ordenacao"))
            {
                filtros["VS_Ordenacao"] = _grvDocente.SortExpression;
            }
            else
            {
                filtros.Add("VS_Ordenacao", _grvDocente.SortExpression);
            }

            if (filtros.ContainsKey("VS_SortDirection"))
            {
                filtros["VS_SortDirection"] = _grvDocente.SortDirection.ToString();
            }
            else
            {
                filtros.Add("VS_SortDirection", _grvDocente.SortDirection.ToString());
            }

            __SessionWEB.BuscaRealizada = new BuscaGestao
            {
                PaginaBusca = PaginaGestao.Docentes
                ,
                Filtros = filtros
            };
        }
    }
コード例 #10
0
        /// <summary>
        /// Pesquisa os docentes da Escola ou da Rede (quando o flag evento padrão do cadastro de evento for marcado).
        /// </summary>
        private void PesquisarDocentes_PorEscolaRede()
        {
            try
            {
                // quantidade de itens por página
                string qtItensPagina = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.QT_ITENS_PAGINACAO);
                int    itensPagina   = string.IsNullOrEmpty(qtItensPagina) ? ApplicationWEB._Paginacao : Convert.ToInt32(qtItensPagina);
                // mostra essa quantidade no combobox
                UCComboQtdePaginacao1.Valor = itensPagina;
                // atribui essa quantidade para o grid
                grvDocente.PageSize = itensPagina;

                //odsDocente.SelectMethod = "SelectBy_PesquisaEscolaRede";
                //odsDocente.DataObjectTypeName = "MSTech.GestaoEscolar.Entities.ACA_Docente";
                //odsDocente.TypeName = "MSTech.GestaoEscolar.BLL.ACA_DocenteBO";
                //odsDocente.SelectParameters.Clear();
                //odsDocente.SelectParameters.Add("escId", IdEscola.ToString());
                //odsDocente.SelectParameters.Add("nome", txtNome.Text.Trim());
                //odsDocente.SelectParameters.Add("matricula", txtMatricula.Text.Trim());
                //odsDocente.SelectParameters.Add("cpf", txtCPF.Text.Trim());
                //odsDocente.SelectParameters.Add("rg", txtRG.Text.Trim());

                grvDocente.DataSource = ACA_DocenteBO.SelectBy_PesquisaEscolaRede(IdEscola, txtNome.Text, txtMatricula.Text, txtCPF.Text, txtRG.Text, __SessionWEB.__UsuarioWEB.Usuario.usu_id,
                                                                                  __SessionWEB.__UsuarioWEB.Grupo.gru_id, __SessionWEB.__UsuarioWEB.Usuario.ent_id, __SessionWEB.__UsuarioWEB.Grupo.vis_id == SysVisaoID.Administracao);
                grvDocente.DataBind();
                fdsResultado.Visible = true;
            }
            catch (ValidationException ex)
            {
                lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar os docentes.", UtilBO.TipoMensagem.Erro);
            }
        }
コード例 #11
0
 protected void grvDocente_DataBound(object sender, EventArgs e)
 {
     UCTotalRegistros1.Total = ACA_DocenteBO.GetTotalRecords();
     ConfiguraColunasOrdenacao(grvDocente);
 }
コード例 #12
0
ファイル: UsuariosController.cs プロジェクト: Mualumene/SGP
        public HttpResponseMessage PostLogin(Usuario usuario)
        {
            try
            {
                var user = new SYS_Usuario {
                    usu_login = usuario.login, usu_senha = usuario.senha, ent_id = usuario.entidade
                };
                LoginStatus status = SYS_UsuarioBO.ValidarLogin(user);

                if (status == LoginStatus.Sucesso)
                {
                    if (SYS_UsuarioBO.GetSelectBy_ent_id_usu_login(user))
                    {
                        var grupos = SYS_GrupoBO.GetSelectBySis_idAndUsu_id(user.usu_id, ApplicationWEB.SistemaID);
                        if (grupos.Count > 0)
                        {
                            var grupo = grupos.First();
                            Dictionary <string, object> dic = new Dictionary <string, object>();
                            dic.Add("login", user.usu_login);
                            dic.Add("entity", user.ent_id);
                            dic.Add("group", grupo.gru_id);

                            var jwtKey            = System.Configuration.ConfigurationManager.AppSettings["jwtKey"];
                            SymmetricAlgorithm sa = new SymmetricAlgorithm(SymmetricAlgorithm.Tipo.TripleDES);

                            PES_Pessoa entityPessoa = new PES_Pessoa {
                                pes_id = user.pes_id
                            };
                            PES_PessoaBO.GetEntity(entityPessoa);

                            bool docente = false;
                            if (grupo.vis_id == SysVisaoID.Individual)
                            {
                                // Carrega a entidade docente de acordo com a pessoa do usuário logado.
                                ACA_Docente entityDocente;
                                ACA_DocenteBO.GetSelectBy_Pessoa(user.ent_id, user.pes_id, out entityDocente);
                                docente = entityDocente.doc_id > 0;
                            }

                            UsuarioLogado usuarioLogado = new UsuarioLogado {
                                grupo   = grupos.First().gru_nome,
                                nome    = (string.IsNullOrEmpty(entityPessoa.pes_nome) ? user.usu_login : entityPessoa.pes_nome),
                                docente = docente,
                                token   = JWT.JsonWebToken.Encode(dic, sa.Decrypt(jwtKey), JWT.JwtHashAlgorithm.HS256)
                            };

                            return(Request.CreateResponse(HttpStatusCode.OK, usuarioLogado));
                        }
                        else
                        {
                            return(Request.CreateResponse(HttpStatusCode.Unauthorized, "Usuário não está vinculado a um grupo"));
                        }
                    }
                    return(Request.CreateResponse(HttpStatusCode.Unauthorized, "Usuário não encontrado"));
                }
                else
                {
                    return(Request.CreateResponse(HttpStatusCode.Unauthorized, "Usuário ou senha inválidos"));
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
コード例 #13
0
        /// <summary>
        /// Carrega dados da turma na tela para alteração.
        /// </summary>
        /// <param name="tur_id">ID da turma</param>
        private void CarregarDadosAlteracao(long tur_id)
        {
            try
            {
                VS_tur_id = tur_id;
                // Carregar entidades.
                TUR_Turma entTurma = new TUR_Turma {
                    tur_id = tur_id
                };
                TUR_TurmaBO.GetEntity(entTurma);

                ESC_Escola entEscola = new ESC_Escola {
                    esc_id = entTurma.esc_id
                };
                ESC_EscolaBO.GetEntity(entEscola);

                if (!ValidaDadosTurma(entTurma, entEscola))
                {
                    return;
                }

                uccFiltroEscola.Uad_ID = entEscola.uad_idSuperiorGestao;
                uccFiltroEscola_IndexChangedUA();
                uccFiltroEscola.SelectedValueEscolas = new[] { entTurma.esc_id, entTurma.uni_id };
                uccFiltroEscola_IndexChangedUnidadeEscola();
                uccCalendario.Valor = entTurma.cal_id;

                DtVigenciasDocentes = TUR_TurmaDocenteBO.SelecionaVigenciasDocentesPorDisciplina(tur_id);

                VS_ListaCurriculoDisciplina = new List <ACA_CurriculoDisciplina>();
                DataTable dt = TUR_TurmaDisciplinaBO.SelecionarTurmaDisciplina_CurriculoDisciplina_By_Turma(tur_id);
                for (int row = 0; row < dt.Rows.Count; row++)
                {
                    ACA_CurriculoDisciplina obj = new ACA_CurriculoDisciplina();
                    obj.dis_nome      = dt.Rows[row]["dis_nome"].ToString();
                    obj.cur_nome      = dt.Rows[row]["cur_nome"].ToString();
                    obj.crp_descricao = dt.Rows[row]["crp_descricao"].ToString();
                    obj.crp_id        = (int)dt.Rows[row]["crp_id"];
                    obj.crr_id        = (int)dt.Rows[row]["crr_id"];
                    obj.cur_id        = (int)dt.Rows[row]["cur_id"];
                    obj.dis_id        = (int)dt.Rows[row]["dis_id"];
                    obj.tds_id        = (int)dt.Rows[row]["tds_id"];
                    obj.IsNew         = false;
                    VS_ListaCurriculoDisciplina.Add(obj);
                }

                divDiciplinas.Visible = true;
                AdicionaVazio();
                grvDiciplinas.DataSource = VS_ListaCurriculoDisciplina;
                grvDiciplinas.DataBind();

                uccFormatoAvaliacao.CarregarFormatoPorFormatoPadraoAtivo(entTurma.fav_id);
                uccFormatoAvaliacao.Valor = entTurma.fav_id;

                txtCodigoTurma.Text = entTurma.tur_codigo;
                txtCodigoInep.Text  = entTurma.tur_codigoInep;
                txtCapacidade.Text  = entTurma.tur_vagas.ToString();

                if (dt.Rows.Count > 0)
                {
                    // Carga horária semanal da disciplina.
                    txtAulasSemanais.Text = dt.Rows[0]["tud_cargaHorariaSemanal"].ToString();

                    string nomeDocente = string.Empty;
                    if (!string.IsNullOrEmpty(dt.Rows[0]["doc_id"].ToString()))
                    {
                        DataTable informacoesDocente =
                            ACA_DocenteBO.SelecionaPorColaboradorDocente(
                                Convert.ToInt64(dt.Rows[0]["col_id"]),
                                Convert.ToInt64(dt.Rows[0]["doc_id"]));
                        nomeDocente = informacoesDocente.Rows[0]["pes_nome"].ToString();
                    }

                    VS_tud_id = Convert.ToInt64(dt.Rows[0]["tud_id"]);
                    //VS_tdt_id = (int)dt.Rows[0]["tdt_id"];
                    divDocente.Visible = true;

                    dtDocentes = new DataTable();
                    dtDocentes.Columns.Add("posicao");
                    dtDocentes.Columns.Add("tud_id");
                    dtDocentes.Columns.Add("qtdedocentes");
                    dtDocentes.Columns.Add("tds_id");

                    for (int i = 1; i <= QtdeDocentes; i++)
                    {
                        DataRow dr = dtDocentes.NewRow();
                        dr["posicao"]      = i;
                        dr["tud_id"]       = VS_tud_id;
                        dr["qtdedocentes"] = QtdeDocentes;
                        dr["tds_id"]       = Convert.ToInt32(dt.Rows[0]["tds_id"]);
                        dtDocentes.Rows.Add(dr);
                    }

                    bloqueioAtribuicao      = false;
                    esc_id                  = entTurma.esc_id;
                    uni_id                  = entTurma.uni_id;
                    tds_id                  = Convert.ToInt32(dt.Rows[0]["tds_id"]);
                    buscaDocente            = true;
                    tur_docenteEspecialista = entTurma.tur_docenteEspecialista;

                    rptDocentes.DataSource = dtDocentes;
                    rptDocentes.DataBind();
                }

                uccTurno.Valor = entTurma.trn_id;

                if (entTurma.tur_participaRodizio)
                {
                    chkRodizio.Checked = true;
                }

                ddlSituacao.SelectedValue = entTurma.tur_situacao.ToString();

                DesabilitaDadosAlteracao();

                RegistraScriptConfirmacao(entTurma);
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar a turma multisseriada.", UtilBO.TipoMensagem.Erro);
            }
        }
コード例 #14
0
        /// <summary>
        /// Carrega dados da turma na tela para alteração.
        /// </summary>
        /// <param name="tur_id">ID da turma</param>
        private void CarregarDadosAlteracao(long tur_id)
        {
            try
            {
                VS_tur_id = tur_id;

                // Carregar entidades.
                TUR_Turma entTurma = new TUR_Turma {
                    tur_id = tur_id
                };
                TUR_TurmaBO.GetEntity(entTurma);

                ESC_Escola entEscola = new ESC_Escola {
                    esc_id = entTurma.esc_id
                };
                ESC_EscolaBO.GetEntity(entEscola);

                DtVigenciasDocentes = TUR_TurmaDocenteBO.SelecionaVigenciasDocentesPorDisciplina(entTurma.tur_id);

                List <TUR_TurmaCurriculo>      listaCurriculos  = TUR_TurmaCurriculoBO.GetSelectBy_Turma(entTurma.tur_id, ApplicationWEB.AppMinutosCacheLongo);
                List <CadastroTurmaDisciplina> listaDisciplinas = TUR_TurmaDisciplinaBO.GetSelectCadastradosBy_Turma(tur_id);

                if (!ValidaDadosTurma(entTurma, entEscola, listaCurriculos, listaDisciplinas))
                {
                    return;
                }

                uccFiltroEscola.Uad_ID = entEscola.uad_idSuperior;
                uccFiltroEscola_IndexChangedUA();

                uccFiltroEscola.SelectedValueEscolas = new[] { entTurma.esc_id, entTurma.uni_id };

                uccFiltroEscola_IndexChangedUnidadeEscola();

                int cur_id = listaCurriculos[0].cur_id;
                int crr_id = listaCurriculos[0].crr_id;

                uccCursoCurriculo.Valor = new[] { cur_id, crr_id };
                UCComboCursoCurriculo1_IndexChanged();

                uccCalendario.Valor = entTurma.cal_id;
                UCComboCalendario1_IndexChanged();

                VS_tud_id = listaDisciplinas[0].entTurmaDisciplina.tud_id;
                VS_tdt_id = listaDisciplinas[0].entTurmaDocente.tdt_id;

                uccDisciplina.Valor = listaDisciplinas[0].entTurmaDiscRelDisciplina.dis_id;

                UCComboDisciplina1_OnSelectedIndexChanged();

                uccFormatoAvaliacao.CarregarFormatoPorFormatoPadraoAtivo(entTurma.fav_id);
                uccFormatoAvaliacao.Valor = entTurma.fav_id;
                UCComboFormatoAvaliacao1_IndexChanged();

                txtCodigoTurma.Text        = entTurma.tur_codigo;
                txtCodigoInep.Text         = entTurma.tur_codigoInep;
                txtCapacidade.Text         = entTurma.tur_vagas.ToString();
                txtMinimoMatriculados.Text = entTurma.tur_minimoMatriculados.ToString();

                // Carga horária semanal da disciplina.
                txtAulasSemanais.Text = listaDisciplinas[0].entTurmaDisciplina.tud_cargaHorariaSemanal.ToString();

                foreach (ListItem item in chkPeriodosCurso.Items)
                {
                    int crp_id = Convert.ToInt32(item.Value);

                    item.Selected = listaCurriculos.Exists(p => p.crp_id == crp_id);
                }

                foreach (ListItem item in chkPeriodosCalendario.Items)
                {
                    int tpc_id = Convert.ToInt32(item.Value);

                    item.Selected = listaDisciplinas[0].entTurmaCalendario.Exists(p => p.tpc_id == tpc_id);
                }

                ACA_Disciplina entDis = new ACA_Disciplina
                {
                    dis_id = listaDisciplinas[0].entTurmaDiscRelDisciplina.dis_id
                };
                ACA_DisciplinaBO.GetEntity(entDis);

                DataTable informacoesDocente =
                    ACA_DocenteBO.SelecionaPorColaboradorDocente(
                        listaDisciplinas[0].entTurmaDocente.col_id,
                        listaDisciplinas[0].entTurmaDocente.doc_id);

                bool bloqueioAtribuicao = false;

                divDocente.Visible = true;
                if (informacoesDocente.Rows.Count > 0)
                {
                    UCControleVigenciaDocentes.CarregarDocente(
                        informacoesDocente.Rows[0]["pes_nome"].ToString(),
                        1,
                        1,
                        VS_tud_id,
                        ref dtDocentes,
                        entDis.tds_id,
                        entTurma.esc_id,
                        entTurma.uni_id,
                        entTurma.tur_docenteEspecialista
                        , bloqueioAtribuicao
                        , ref DtVigenciasDocentes);
                }

                // Verifica se possui parametros de formacao
                MTR_ParametroFormacaoTurma entityFormacao = MTR_ParametroFormacaoTurmaBO.SelecionaParametroPorAnoCurso(cur_id, crr_id, __SessionWEB.__UsuarioWEB.Usuario.ent_id);
                if (entityFormacao != null)
                {
                    uccTurno.CarregarTurnoPorParametroPeriodo(entityFormacao);
                }
                else
                {
                    uccTurno.CarregarTurnoPorTurnoAtivo(entTurma.trn_id);
                }

                uccTurno.Valor = entTurma.trn_id;

                if (entTurma.tur_participaRodizio)
                {
                    chkRodizio.Checked = true;
                }

                if (entTurma.tur_situacao == (byte)TUR_TurmaSituacao.Aguardando)
                {
                    ddlSituacao.Items.Add(new ListItem("Aguardando", ((byte)TUR_TurmaSituacao.Aguardando).ToString()));
                }
                ddlSituacao.SelectedValue = entTurma.tur_situacao.ToString();

                DesabilitaDadosAlteracao(entityFormacao);

                RegistraScriptConfirmacao(entTurma);
            }
            catch (ValidationException ex)
            {
                lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar a turma de eletiva.", UtilBO.TipoMensagem.Erro);
            }
        }