protected void Page_Load(object sender, EventArgs e) { lblMsgParecer.Text = "Marque apenas as reuniões em que o responsável esteve presente.<br>"; //"Marque a opção Efetivado para indicar que o lançamento de frequência do " + //"dia foi finalizado e todas as ausências foram apontadas."; lblMsgParecer.Text = UtilBO.GetErroMessage(lblMsgParecer.Text, UtilBO.TipoMensagem.Informacao); ScriptManager sm = ScriptManager.GetCurrent(this); if (sm != null) { sm.Scripts.Add(new ScriptReference(ArquivoJS.JqueryFixer)); RegistrarParametrosMensagemSair(true, (__SessionWEB.__UsuarioWEB.Docente.doc_id > 0)); sm.Scripts.Add(new ScriptReference(ArquivoJS.ExitPageConfirm)); sm.Scripts.Add(new ScriptReference("~/Includes/jsSetExitPageConfirmer.js")); sm.Scripts.Add(new ScriptReference(ArquivoJS.MsgConfirmBtn)); // A ordem dos 2 scripts abaixo não deve ser alterada - se for, as máscaras // dos campos não vai funcionar, pois no primeiro script ele "refaz" as tabelas // com o JQuery.Fixer, e por isso não adianta setar as máscaras antes. sm.Scripts.Add(new ScriptReference(ArquivoJS.JQueryValidation)); sm.Scripts.Add(new ScriptReference(ArquivoJS.JqueryMask)); sm.Scripts.Add(new ScriptReference(ArquivoJS.MascarasCampos)); sm.Scripts.Add(new ScriptReference(ArquivoJS.CamposData)); sm.Scripts.Add(new ScriptReference("~/Includes/jsCadastroFrequenciaReuniaoResponsaveis.js")); if (ACA_ParametroAcademicoBO.ParametroValorBooleanoPorEntidade(eChaveAcademico.BOTAO_SALVAR_PERMANECE_TELA, __SessionWEB.__UsuarioWEB.Usuario.ent_id)) { if (!Convert.ToString(_btnCancelar.CssClass).Contains("btnMensagemUnload")) { _btnCancelar.CssClass += " btnMensagemUnload"; } if (!Convert.ToString(_btnCancelar2.CssClass).Contains("btnMensagemUnload")) { _btnCancelar2.CssClass += " btnMensagemUnload"; } } } HabilitarControlesTela(__SessionWEB.__UsuarioWEB.GrupoPermissao.grp_alterar); if (!IsPostBack) { string message = __SessionWEB.PostMessages; if (!string.IsNullOrEmpty(message)) { _lblMessage.Text = message; } _carregaComboHora(); _carregaComboMinuto(); if (Session["tur_idFrequencia"] != null) { VS_tur_id = Convert.ToInt32(Session["tur_idFrequencia"]); Session.Remove("tur_idFrequencia"); TUR_Turma tur = new TUR_Turma { tur_id = VS_tur_id }; TUR_TurmaBO.GetEntity(tur); ACA_FormatoAvaliacao fav = new ACA_FormatoAvaliacao { fav_id = tur.fav_id }; ACA_FormatoAvaliacaoBO.GetEntity(fav); ESC_Escola entEscola = ESC_EscolaBO.GetEntity( new ESC_Escola { esc_id = tur.esc_id }); List <TUR_TurmaCurriculo> crrTur = TUR_TurmaCurriculoBO.GetSelectBy_Turma(VS_tur_id, ApplicationWEB.AppMinutosCacheLongo); ACA_Curso cur = new ACA_Curso { cur_id = crrTur[0].cur_id }; ACA_CursoBO.GetEntity(cur); VS_cal_id = tur.cal_id; if (Session["cap_idFrequencia"] != null && cadastroReunioesPorPeriodo) { VS_cap_id = Convert.ToInt32(Session["cap_idFrequencia"]); Session.Remove("tur_idFrequencia"); } ACA_CursoReunioes crn = ACA_CursoReunioesBO.SelecionaPorCursoCalendarioPeriodo ( cur.cur_id , crrTur[0].crr_id , VS_cal_id , cadastroReunioesPorPeriodo ? VS_cap_id : -1 ); VS_qtd_reunioes = crn.crn_qtde; string esc_nome = entEscola.esc_nome; if (ACA_ParametroAcademicoBO.ParametroValorBooleanoPorEntidade(eChaveAcademico.ORDENAR_ESCOLAS_POR_CODIGO, __SessionWEB.__UsuarioWEB.Usuario.ent_id)) { esc_nome = entEscola.esc_codigo + " - " + esc_nome; } lblTurma.Text = "Escola: <b>" + esc_nome + "</b><br />"; lblTurma.Text += "Turma: <b>" + tur.tur_codigo + "</b>"; lblCurso.Text = GestaoEscolarUtilBO.nomePadraoCurso(__SessionWEB.__UsuarioWEB.Usuario.ent_id) + ": <b>" + cur.cur_nome + "</b>"; if (cadastroReunioesPorPeriodo) { ACA_CalendarioPeriodo cap = new ACA_CalendarioPeriodo { cal_id = VS_cal_id, cap_id = VS_cap_id }; ACA_CalendarioPeriodoBO.GetEntity(cap); lblPeriodoCalendario.Text = GestaoEscolarUtilBO.nomePadraoPeriodo_Calendario(__SessionWEB.__UsuarioWEB.Usuario.ent_id) + ": <b>" + cap.cap_descricao + (periodoAberto ? " (aberto)" : string.Empty) + "</b>"; UCComboPeriodoCalendario1.Visible = false; lblPeriodoCalendario.Visible = true; } else { lblPeriodoCalendario.Visible = false; UCComboPeriodoCalendario1.Visible = true; // Carregar combo de período do calendário. UCComboPeriodoCalendario1.CarregarTodosPor_EventoEfetivacao(VS_cal_id, -1, VS_tur_id, __SessionWEB.__UsuarioWEB.Docente.doc_id); } VerificaRegrasCurso(tur, fav); CarregarTelaLancametoFrequencia(); } else { Response.Redirect("~/Classe/ReunioesResponsaveisFrequencia/Busca.aspx", false); HttpContext.Current.ApplicationInstance.CompleteRequest(); } } _UCComboOrdenacao1._OnSelectedIndexChange += CarregarTelaLancametoFrequencia; UCComboPeriodoCalendario1.IndexChanged += UCComboPeriodoCalendario1_IndexChanged; }
/// <summary> /// Salva no banco as frequências. /// </summary> public bool Salvar(bool PermaneceTela) { try { if (!periodoAberto) { throw new ValidationException(String.Format("Lançamento de frequência em reunião de pais e responsáveis {0} disponível apenas para consulta.", GestaoEscolarUtilBO.nomePadraoPeriodo_Calendario(__SessionWEB.__UsuarioWEB.Usuario.ent_id))); } List <CLS_FrequenciaReuniao> listfr = new List <CLS_FrequenciaReuniao>(); List <CLS_FrequenciaReuniaoResponsaveis> listfrp = new List <CLS_FrequenciaReuniaoResponsaveis>(); RepeaterItem header = (RepeaterItem)rptAlunos.Controls[0]; Repeater rptReunioes = (Repeater)header.FindControl("rptReunioes"); bool pCadastroPorPeriodo = cadastroReunioesPorPeriodo; // Adiciona itens na lista de TurmaAula - só pra alterar o tau_efetivado. foreach (RepeaterItem itemAtividade in rptReunioes.Items) { CheckBox chkEfetivado = (CheckBox)itemAtividade.FindControl("chkEfetivado"); int reu_id = Convert.ToInt32(((Label)itemAtividade.FindControl("lblreu_id")).Text); CLS_FrequenciaReuniao ent = new CLS_FrequenciaReuniao { tur_id = VS_tur_id, cal_id = VS_cal_id, cap_id = VS_cap_id, frp_id = reu_id }; CLS_FrequenciaReuniaoBO.GetEntity(ent); ent.frr_efetivado = chkEfetivado.Checked; listfr.Add(ent); } foreach (RepeaterItem itemAluno in rptAlunos.Items) { rptReunioes = (Repeater)itemAluno.FindControl("rptReunioes"); Int64 alu_id = Convert.ToInt64(((Label)itemAluno.FindControl("lblalu_id")).Text); // Adiciona itens na lista de TurmaNota - só pra alterar o tnt_efetivado. foreach (RepeaterItem alunos in rptReunioes.Items) { int reu_id = Convert.ToInt32(((Label)alunos.FindControl("lblreu_id")).Text); CheckBox chkFrequencia = (CheckBox)alunos.FindControl("chkFrequencia"); CheckBox chkEfetivado = (CheckBox)alunos.FindControl("chkEfetivado"); bool frequencia = chkFrequencia.Checked; if (reu_id > 0) { CLS_FrequenciaReuniaoResponsaveis ent = new CLS_FrequenciaReuniaoResponsaveis { alu_id = alu_id , cal_id = VS_cal_id , cap_id = pCadastroPorPeriodo ? VS_cap_id : UCComboPeriodoCalendario1.Cap_ID , frp_id = reu_id , frp_frequencia = frequencia }; listfrp.Add(ent); } } } if (CLS_FrequenciaReuniaoResponsaveisBO.Salvar(listfrp, listfr)) { if (PermaneceTela) { CarregarTelaLancametoFrequencia(); _lblMessage.Text = UtilBO.GetErroMessage("Lançamento de frequências salvo com sucesso.", UtilBO.TipoMensagem.Sucesso); } else { __SessionWEB.PostMessages = UtilBO.GetErroMessage("Lançamento de frequências salvo com sucesso.", UtilBO.TipoMensagem.Sucesso); Response.Redirect("~/Classe/ReunioesResponsaveisFrequencia/Busca.aspx", false); HttpContext.Current.ApplicationInstance.CompleteRequest(); } try { ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "tur_id: " + VS_tur_id + "; cal_id: " + VS_cal_id + "; cap_id: " + VS_cap_id); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); } return(true); } _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar as frequências.", UtilBO.TipoMensagem.Erro); return(false); } catch (ValidationException ex) { _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); return(false); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar as frequências.", UtilBO.TipoMensagem.Erro); _uppMessage.Update(); return(false); } }