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