Ejemplo n.º 1
0
        /// <summary>
        /// Adiciona nas listas as entidades da disciplina da linha atual.
        /// </summary>
        /// <param name="item"></param>
        /// <param name="tud_codigo">código da turma disciplina</param>
        /// <param name="tud_vagas">quantidade de vagas turma disciplina</param>
        /// <param name="tud_minimoMatriculados">quantidade mínima de vagas turma disciplina</param>
        /// <param name="tud_duracao">Disciplina duração</param>
        /// <returns>As listas de entidades com as discplinas a serem salvas</returns>
        private CadastroTurmaDisciplina AdicionaDisciplina
        (
            GridViewRow item
            , string tud_codigo
            , int tud_vagas
            , int tud_minimoMatriculados
            , byte tud_duracao
        )
        {
            // Adicionando na entidades os valores a ser salvo.
            TUR_TurmaDisciplina ent = new TUR_TurmaDisciplina
            {
                tud_tipo                  = String.IsNullOrEmpty(gvRegencia.DataKeys[item.RowIndex].Values["crd_tipo"].ToString()) ? new byte() : Convert.ToByte(gvRegencia.DataKeys[item.RowIndex].Values["crd_tipo"].ToString()),
                tud_global                = false,
                tud_nome                  = gvRegencia.DataKeys[item.RowIndex].Values["dis_nome"].ToString(),
                tud_codigo                = tud_codigo,
                tud_id                    = Convert.ToInt32(gvRegencia.DataKeys[item.RowIndex].Values["tud_id"]),
                tud_situacao              = (byte)TurmaDisciplinaSituacao.Ativo,
                tud_multiseriado          = false,
                tud_vagas                 = tud_vagas,
                tud_minimoMatriculados    = tud_minimoMatriculados,
                tud_duracao               = tud_duracao,
                tud_modo                  = (byte)TurmaDisciplinaModo.Normal,
                tud_aulaForaPeriodoNormal = false,
                tud_semProfessor          = ((CheckBox)item.FindControl("chkSemDocente")).Checked,
                IsNew = Convert.ToInt32(gvRegencia.DataKeys[item.RowIndex].Values["tud_id"]) <= 0
            };

            // Adicionando valores na entidade de relacionemento.
            TUR_TurmaDisciplinaRelDisciplina relDis = new TUR_TurmaDisciplinaRelDisciplina
            {
                dis_id = Convert.ToInt32(gvRegencia.DataKeys[item.RowIndex].Values["dis_id"]),
                tud_id = ent.tud_id,
                IsNew  = Convert.ToInt32(gvRegencia.DataKeys[item.RowIndex].Values["tud_id"]) <= 0
            };

            List <TUR_TurmaDisciplinaCalendario> turCal = new List <TUR_TurmaDisciplinaCalendario>();

            // Avaliações que não serão avaliadas.
            CheckBoxList chkList = (CheckBoxList)item.FindControl("chkAvaliacoesPeriodicas");
            List <TUR_TurmaDisciplinaNaoAvaliado> lista =
                (from ListItem it in chkList.Items
                 where it.Selected
                 select new TUR_TurmaDisciplinaNaoAvaliado
            {
                tud_id = ent.tud_id,
                fav_id = Convert.ToInt32(it.Value.Split(';')[0]),
                ava_id = Convert.ToInt32(it.Value.Split(';')[1])
            }
                ).ToList();

            Repeater rptDocentes = (Repeater)item.FindControl("rptDocentes");
            List <TUR_Turma_Docentes_Disciplina> listDocentesPosicoes = new List <TUR_Turma_Docentes_Disciplina>();

            foreach (RepeaterItem itemD in rptDocentes.Items)
            {
                GestaoEscolar.WebControls.ControleVigenciaDocentes.ControleVigenciaDocentes UCControleVigenciaDocentes = (GestaoEscolar.WebControls.ControleVigenciaDocentes.ControleVigenciaDocentes)itemD.FindControl("UCControleVigenciaDocentes");
                byte posicao = Convert.ToByte(((Label)itemD.FindControl("lblposicao")).Text);

                UCControleVigenciaDocentes.RetornaDocentesPosicao(ref listDocentesPosicoes, posicao, ent.tud_id);
            }

            return(new CadastroTurmaDisciplina
            {
                entTurmaDisciplina = ent,
                entTurmaDiscRelDisciplina = relDis,
                listaTurmaDocente = listDocentesPosicoes,
                entTurmaCalendario = turCal,
                listaAvaliacoesNaoAvaliar = lista
            });
        }