Beispiel #1
0
 private void PopulaRecursos()
 {
     ddlRecursos.Items.Clear();
     ddlRecursos.Items.Add("Selecione");
     try
     {
         ddlRecursos.DataSource = controladorRecursos.GetRecursos();
         //controladorCategorias.GetCategoriaRecursoById(new Guid(ddlCategorias.SelectedValue)));
         ddlRecursos.DataValueField = "Id";
         ddlRecursos.DataTextField  = "Descricao";
         ddlRecursos.DataBind();
     }
     catch (FormatException)
     {
         lblStatus.Text = "Selecione uma categoria de recurso";
     }
     catch (DataAccessException)
     {
         Response.Redirect("~/Default/Erro.aspx?Erro=Erro ao ler dados");
     }
 }
Beispiel #2
0
 protected void Page_Load(object sender, EventArgs e)
 {
     try
     {
         RecursosBO     recursosBO = new RecursosBO();
         List <Recurso> listaRec   = recursosBO.GetRecursos();
         if (listaRec.Count == 0)
         {
             lblStatus.Text    = "Nenhum recurso cadastrado.";
             lblStatus.Visible = true;
         }
         else
         {
             grvListaRecursos.DataSource = listaRec;
             grvListaRecursos.DataBind();
         }
     }
     catch (BusinessData.DataAccess.DataAccessException ex)
     {
         Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
     }
 }
Beispiel #3
0
    protected void grvListaRecursos_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        try
        {
            RecursosBO recursos = new RecursosBO();
            Guid       id       = (Guid)grvListaRecursos.DataKeys[e.RowIndex].Value;

            recursos.DeletaRecurso(id);
            lblStatus.Text    = "Recurso excluido com sucesso.";
            lblStatus.Visible = true;

            grvListaRecursos.DataSource = recursos.GetRecursos();
            grvListaRecursos.DataBind();
        }
        catch (BusinessData.DataAccess.DataAccessException ex)
        {
            Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
        }
        catch (SecurityException ex)
        {
            Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
        }
    }
Beispiel #4
0
    public void criaDomingo()
    {
        lblStatus.Text = "";
        //try
        //{
        Calendario cal = (Calendario)Session["Calendario"];

        List <Recurso> listaRecursos = controleRecursos.GetRecursos();

        foreach (Recurso recursoAux in listaRecursos)
        {
            if (recursoAux.Id != new Guid("c0575255-cf03-482f-9022-75c38b7d8ebb"))
            {
                PreencheCalendarioDeAlocacoes(cal, recursoAux, true);
            }
        }

        lblStatus.Text = "Domingos criados com sucesso!";
        //}
        //catch (Exception e)
        //{
        //  lblStatus.Text = "Deu pau\n" + e.Message;
        //}
    }
Beispiel #5
0
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            if (IsPostBack)
            {
                return;
            }

            if (Session["AppState"] != null && ((AppState)Session["AppState"]) == AppState.Admin)
            {
                Server.Transfer("~/Default/Erro.aspx?Erro=O sistema está bloqueado.");
            }
            else if (Session["AppState"] != null && (AppState)Session["AppState"] != AppState.AtivoSemestre)
            {
                Server.Transfer("~/Default/Erro.aspx?Erro=O semestre ainda não foi iniciado.");
            }
            else
            {
                if (Session["Calendario"] == null)
                {
                    Response.Redirect("../Default/SelecionarCalendario.aspx");
                }
                //FIXME: falta um else aqui?
                Guid idturma = new Guid();
                if (Request.QueryString["GUID"] != null)
                {
                    try
                    {
                        idturma = new Guid(Request.QueryString["GUID"]);
                    }
                    catch (FormatException)
                    {
                        Response.Redirect("~/Default/Erro.aspx?Erro=Codigo de turma inválido!");
                    }

                    Session["TurmaId"] = idturma;
                    cal = (Calendario)Session["Calendario"];

                    CategoriaAtividadeBO cateBO = new CategoriaAtividadeBO();
                    listaAtividades = cateBO.GetCategoriaAtividade();
                    AulaBO      AulaBO     = new AulaBO();
                    List <Aula> listaAulas = null;
                    try
                    {
                        listaAulas = AulaBO.GetAulas(idturma);
                    }
                    catch (Exception)
                    {
                        Response.Redirect("~/Default/Erro.aspx?Erro=Codigo de turma inválido!");
                    }
                    Disciplina          d   = listaAulas[0].TurmaId.Disciplina;
                    CategoriaDisciplina cat = d.Categoria;

                    // Mega gambiarra master extended++
                    // TODO: retirar assim que possível!
                    if (cat.Descricao.IndexOf("Outras Unidades") != -1)
                    {
                        facin = false;
                    }
                    Session["facin"] = facin;

                    lblTitulo.Text = d.Cod + "-" + d.Cred + " " + d.Nome + ", turma " + listaAulas[0].TurmaId.Numero + " - " + Regex.Replace(listaAulas[0].TurmaId.Sala, "32/A", "32");//" "+facin;

                    int horasRelogioEsperadas = d.Cred * 15;
                    int durPeriodo            = 45;

/*                    if (listaAulas[0].Hora == "JK" || listaAulas[0].Hora == "LM" || listaAulas[0].Hora == "NP"
|| listaAulas[1].Hora == "JK" || listaAulas[1].Hora == "LM" || listaAulas[1].Hora == "NP"
|| listaAulas[1].Hora == "JK" || listaAulas[2].Hora == "LM" || listaAulas[2].Hora == "NP")
||                      durPeriodo = 45;*/

                    int  totalAulas    = 0;
                    bool emG2          = false;
                    bool haG2          = false;
                    int  totalFeriados = 0;
                    foreach (Aula a in listaAulas)
                    {
                        categorias.Add(a.CategoriaAtividade.Id);
                        argb.Add(a.CategoriaAtividade.Cor);
                        if (a.Data >= cal.InicioG2)
                        {
                            //if (a.CategoriaAtividade.Descricao == "Prova de G2")
                            //Debug.WriteLine("EM G2");
                            emG2 = true;
                        }
                        if (a.DescricaoAtividade.StartsWith("Feriado") || a.DescricaoAtividade.StartsWith("Suspensão"))
                        {
                            totalFeriados++;
                        }
                        if (a.CategoriaAtividade.Descricao == "Prova de G2")
                        {
                            haG2 = true;
                        }
                        if (!a.DescricaoAtividade.StartsWith("Feriado") && !a.DescricaoAtividade.StartsWith("Suspensão") &&
                            a.CategoriaAtividade.Descricao != "Prova de G2" && !emG2)
                        {
                            totalAulas++;
                        }
                    }
                    // Contando mais uma aula por causa da G2 que pulamos antes
                    //if(haG2)
                    //    totalAulas++;
                    int totalEfetivo   = totalAulas * 2 * durPeriodo / 60;
                    int complementares = horasRelogioEsperadas - totalEfetivo;
                    if (complementares < 0)
                    {
                        complementares = 0;
                    }
                    //lblHoras.Text = "Duração do período: " + durPeriodo + " - Horas esperadas: " + horasRelogioEsperadas + " - Horas efetivas: " + totalEfetivo
                    //    + " - <b>Previsão de horas extraclasse: " + (horasRelogioEsperadas - totalEfetivo) + "</B>";

//                    int minutosEsperados = horasRelogioEsperadas * 60;
                    int minutosFeriado   = durPeriodo * totalFeriados * 2;
                    int minutosEsperados = durPeriodo * 2 * 18 * d.Cred / 2;
                    int horasMinistradas = (minutosEsperados - minutosFeriado) / 60;
                    int extraClasse      = horasRelogioEsperadas - horasMinistradas;
                    Debug.WriteLine("Minutos feriado: " + minutosFeriado);
                    Debug.WriteLine("Minutos esperados: " + minutosEsperados);

                    //lblHoras.Text = "Duração do período: " + durPeriodo + " - Horas esperadas: " + horasRelogioEsperadas + " - Horas efetivas: " + horasMinistradas
                    //    + " - <b>Previsão de horas extraclasse: " + extraClasse + "</B>";

                    lblHoras.Text = "- Horas esperadas: " + horasRelogioEsperadas + " - Horas efetivas: " + totalEfetivo
                                    + " - <b>Previsão de horas para TDE: " + complementares + "</B>";

                    dgAulas.DataSource = listaAulas;
                    dgAulas.DataBind();


                    if (Session["blocks"] == null)
                    {
                        //BusinessData.BusinessLogic.RecursosBO recursosBO = new BusinessData.BusinessLogic.RecursosBO();
                        // Monta dicionário com bloqueio de recursos devido a uso de outros
                        Dictionary <Guid, BusinessData.Entities.Recurso> todos   = new Dictionary <Guid, BusinessData.Entities.Recurso>();
                        Dictionary <Guid, Tuple <Guid, Guid> >           blocks  = new Dictionary <Guid, Tuple <Guid, Guid> >();
                        List <BusinessData.Entities.Recurso>             listRec = recursosBO.GetRecursos();
                        foreach (BusinessData.Entities.Recurso r in listRec)
                        {
                            todos.Add(r.Id, r);
                        }
                        foreach (BusinessData.Entities.Recurso r in listRec)
                        {
                            if (r.Bloqueia1 != Guid.Empty || r.Bloqueia2 != Guid.Empty)
                            {
                                //System.Diagnostics.Debug.WriteLine("block: " + r.Id + " -> " + r.Bloqueia1 + ", " + r.Bloqueia2);
                                blocks.Add(r.Id, new Tuple <Guid, Guid>(r.Bloqueia1, r.Bloqueia2));
                            }
                        }
                        Session["blocks"] = blocks;
                    }

                    // Gera link para HTML
                    Link1.NavigateUrl = "~/Default/Export.aspx?id=" + idturma + "&ano=" + cal.Ano + "&sem=" + cal.Semestre;
                    string navlink = "/Default/ExportIcal.aspx?id=" + idturma + "&ano=" + cal.Ano + "&sem=" + cal.Semestre;
                    Link2.NavigateUrl = "https://www.google.com/calendar/render?cid=" +
                                        Server.UrlEncode("http://" + Request.Url.Host + navlink);
                    Link3.NavigateUrl = "webcal://" + Request.Url.Host + navlink;
                    Link4.NavigateUrl = "~" + navlink;

                    // Monta dicionário com bloqueio de recursos devido a uso de outros
                    // Movido para Global.asax (Application_Start)
                    //Dictionary<Guid, Tuple<Guid,Guid>> blocks = new Dictionary<Guid, Tuple<Guid,Guid>>();
                    //List<Recurso> listRec = recursosBO.GetRecursos();
                    //foreach (Recurso r in listRec) {
                    //    if(r.Bloqueia1 != Guid.Empty || r.Bloqueia2 != Guid.Empty)
                    //    {
                    //        //System.Diagnostics.Debug.WriteLine("block: " + r.Id + " -> " + r.Bloqueia1 + ", " + r.Bloqueia2);
                    //        blocks.Add(r.Id, new Tuple<Guid,Guid>(r.Bloqueia1, r.Bloqueia2));
                    //    }
                    //}
                    //Session["blocks"] = blocks;
                }
            }
        }
        catch (DataAccessException ex)
        {
            Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
        }
    }