示例#1
0
    protected void ddlRecurso_SelectedIndexChanged(object sender, EventArgs e)
    {
        DropDownList ddlRecurso = (DropDownList)sender;
        string       recString  = ddlRecurso.SelectedValue;

        TableCell    cell     = (TableCell)ddlRecurso.Parent;
        DataGridItem gridItem = (DataGridItem)cell.Parent;

        // Salva dados digitados

        SalvarTodos();
//        SalvaDados(gridItem);

        // abre a popup de selecao de recursos
        //string id = lblaulaId.Text;
        //ScriptManager.RegisterClientScriptBlock(this, GetType(), "onClick", "popitup('SelecaoRecursos.aspx?AulaId=" + id + "');", true);

        Label lblaulaId = (Label)gridItem.FindControl("lblAulaId");
        Guid  idAula    = new Guid(lblaulaId.Text);
        Aula  aulaAtual = aulaBo.GetAulaById(idAula);

        RequisicoesBO      controleRequisicoes   = new RequisicoesBO();
        IList <Requisicao> requisicoesExistentes = controleRequisicoes.GetRequisicoesPorAula(idAula, cal);
        int pri = 0;

        foreach (Requisicao req in requisicoesExistentes)
        {
            if (req.Prioridade > pri)
            {
                pri = req.Prioridade;
            }
        }

        CategoriaRecursoBO controladorCategorias = new CategoriaRecursoBO();
        Guid             catId     = new Guid(ddlRecurso.SelectedValue);
        CategoriaRecurso categoria = controladorCategorias.GetCategoriaRecursoById(catId);
        Requisicao       novaReq   = Requisicao.NewRequisicao(aulaAtual, categoria, pri + 1); // teste! sempre prioridade + 1

        // Insere a nova requisição
        controleRequisicoes.InsereRequisicao(novaReq);
        requisicoesExistentes.Add(novaReq);

        // Atualiza label com os recursos selecionados
        Label  lblRecursosSelecionados = (Label)gridItem.FindControl("lblRecursosSelecionados");
        string recursos = "";

        foreach (Requisicao r in requisicoesExistentes)
        {
            if (recursos != String.Empty)
            {
                recursos += "<br/>";
            }
            recursos += r.Prioridade + ": " + r.CategoriaRecurso.Descricao;
        }
        lblRecursosSelecionados.Text = recursos;

        // Remove a categoria selecionada do drop down list
        ddlRecurso.Items.Remove(ddlRecurso.Items.FindByValue(ddlRecurso.SelectedValue));
        ddlRecurso.SelectedIndex = 0;
    }
示例#2
0
    protected void btnConfirmar_Click(object sender, EventArgs e)
    {
        try
        {
            CategoriaRecursoBO boCategoriaRecurso = new CategoriaRecursoBO();
            CategoriaRecurso   cat = boCategoriaRecurso.GetCategoriaRecursoById(new Guid(Request.QueryString["GUID"]));

            if (cat != null)
            {
                cat.Descricao = txtDescricao.Text;

                boCategoriaRecurso.UpdateCategoriaRecurso(cat);
                Response.Redirect("~/CategoriaRecurso/List.aspx");
            }
            else
            {
                Response.Redirect("~/Default/Erro.aspx?Erro=" + "Categoria não existente.");
            }
        }
        catch (DataAccessException ex)
        {
            Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
        }
        catch (SecurityException ex)
        {
            Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
        }
    }
示例#3
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            if (Request.QueryString["GUID"] != null)
            {
                try
                {
                    CategoriaRecursoBO boCategoriaRecurso = new CategoriaRecursoBO();

                    try
                    {
                        CategoriaRecurso cat = boCategoriaRecurso.GetCategoriaRecursoById(new Guid(Request.QueryString["GUID"]));
                        txtDescricao.Text = cat.Descricao;
                    }
                    catch (FormatException)
                    {
                        Response.Redirect("~/CategoriaRecurso/List.aspx");
                    }
                }
                catch (BusinessData.DataAccess.DataAccessException)
                {
                    Response.Redirect("~/CategoriaRecurso/List.aspx");
                }
            }
            else
            {
                Response.Redirect("~/CategoriaRecurso/List.aspx");
            }
        }
    }
示例#4
0
    //Caso a edição seja confirmada...
    protected void btnConfirmar_Click(object sender, EventArgs e)
    {
        Dictionary <CategoriaRecurso, double> prioridades = new System.Collections.Generic.Dictionary <CategoriaRecurso, double>();

        //Recria o dicionário com os valores modificados(ou não) do gridview
        for (int i = 0; i < grvListaCatDisciplina.DataKeys.Count; i++)
        {
            try
            {
                Guid             id  = (Guid)grvListaCatDisciplina.DataKeys[i].Value;
                CategoriaRecurso cat = crBo.GetCategoriaRecursoById(id);
                if (cat != null)
                {
                    double p = Convert.ToDouble(((TextBox)(grvListaCatDisciplina.Rows[i].FindControl("txtPrioridade"))).Text);

                    prioridades.Add(cat, p);
                }
                else
                {
                    Response.Redirect("~/Default/Erro.aspx?Erro=" + "Categoria não existente.");
                }
            }
            catch (Exception ex)
            {
                Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
            }
        }

        //Cria-se, então, uma nova instância de CategoriaDisciplina, com o ID original, o nome que pode(ou não) ter sido mudado pelo usuário
        //e o dicionário criado anteriormente contendo todos os novos valores
        CategoriaDisciplina cd = CategoriaDisciplina.GetCategoriaDisciplina(new Guid(Request.QueryString["GUID"]), txtDescricao.Text, prioridades);

        try
        {
            CategoriaDisciplinaBO cdBo = new CategoriaDisciplinaBO();
            //Manda fazer o update, finalmente
            cdBo.UpdateCategoriaDisciplina(cd);
            Response.Redirect("~/CategoriaDisciplina/List.aspx");
        }
        catch (BusinessData.DataAccess.DataAccessException ex)
        {
            Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
        }
        catch (SecurityException ex)
        {
            Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
        }
    }
示例#5
0
    protected void btnConfirmar_Click(object sender, EventArgs e)
    {
        System.Collections.Generic.Dictionary <CategoriaRecurso, double> prioridades = new System.Collections.Generic.Dictionary <CategoriaRecurso, double>();

        for (int i = 0; i < grvListaCatDisciplina.DataKeys.Count; i++)
        {
            try
            {
                Guid             id  = (Guid)grvListaCatDisciplina.DataKeys[i].Value;
                CategoriaRecurso cat = crBo.GetCategoriaRecursoById(id);
                double           p   = Convert.ToDouble(((TextBox)(grvListaCatDisciplina.Rows[i].FindControl("txtPrioridade"))).Text);

                prioridades.Add(cat, p);
            }
            catch (Exception ex)
            {
                Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
            }
        }

        CategoriaDisciplina cd = CategoriaDisciplina.NewCategoriaDisciplina(txtDescricao.Text, prioridades);

        try
        {
            CategoriaDisciplinaBO cdBo = new CategoriaDisciplinaBO();
            cdBo.InsereCategoriaDisciplina(cd);
            lblStatus.Text    = "Categoria de Disciplinas inserida com sucesso.";
            lblStatus.Visible = true;
            txtDescricao.Text = "";
            //Usado aqui para zerar todos os campos
            PopulaCategoriasRecurso();
        }
        catch (BusinessData.DataAccess.DataAccessException ex)
        {
            Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
        }
        catch (SecurityException ex)
        {
            Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
        }
    }
示例#6
0
    protected void btnConfirmar_Click(object sender, EventArgs e)
    {
        try
        {
            Calendario cal = (Calendario)Session["Calendario"];
            Recurso    recurso;
            listaHorarios = (List <HorarioBloqueado>)Session["Horarios"];
            CategoriaRecurso categoriaRecurso = categBO.GetCategoriaRecursoById(new Guid(ddlCategoria.SelectedValue));
            Faculdade        vinculo          = faculBO.GetFaculdadeById(new Guid(ddlVinculo.SelectedValue));

            if (listaHorarios.Count != 0)
            {
                recurso = Recurso.NewRecurso(txtDescricao.Text, txtAbrev.Text, txtTipo.Text[0], vinculo, categoriaRecurso, Convert.ToBoolean(Convert.ToInt16(rblDisponivel.SelectedValue)), listaHorarios);
            }
            else
            {
                recurso = Recurso.NewRecurso(txtDescricao.Text, txtAbrev.Text, txtTipo.Text[0], vinculo, categoriaRecurso, Convert.ToBoolean(Convert.ToInt16(rblDisponivel.SelectedValue)), null);
            }

            recursoBO.InsereRecurso(recurso, cal);

            txtDescricao.Text = "";
            ddlHorarioInicio.SelectedIndex = 0;
            ddlHorarioFim.SelectedIndex    = 0;
            dgHorarios.DataSource          = null;
            dgHorarios.DataBind();
            pnlHorarios.Visible = false;
            listaHorarios.Clear();
            Session["Horarios"] = listaHorarios;
            lblStatus.Text      = "Recurso cadastrado com sucesso.";

            lblStatus.Visible = true;
        }
        catch (BusinessData.DataAccess.DataAccessException ex)
        {
            Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message);
        }
    }
示例#7
0
    protected void ddlCategoriaRecurso_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (ddlCategoriaRecurso.SelectedIndex != 0)
        {
            if (!btnConfirmar.Enabled)
            {
                btnConfirmar.Enabled = true;
            }
            bool jaInserida = false;
            lblStatus.Text = "";
            CategoriaRecursoBO controladorCategorias = new CategoriaRecursoBO();
            Guid id = new Guid(ddlCategoriaRecurso.SelectedValue);

            CategoriaRecurso     categoria    = controladorCategorias.GetCategoriaRecursoById(id);
            Requisicao           req          = Requisicao.NewRequisicao(aulaAtual, categoria, Convert.ToInt32(ddlPrioridadeRequisicao.SelectedValue));
            DecoratorRequisicoes recComEstado = new DecoratorRequisicoes(req, DecoratorRequisicoes.EstadoRequisicao.Inserida);
            //foreach para comparar se Recurso já existe na lista
            foreach (DecoratorRequisicoes dec in listaRequisicoes)
            {
                if (dec.CategoriaRecurso.Equals(recComEstado.CategoriaRecurso) && dec.EstadoAtual != DecoratorRequisicoes.EstadoRequisicao.Removida)
                {
                    lblStatus.Text = "Recurso já selecionado.";
                    if (listaRequisicoes.Count < ddlPrioridadeRequisicao.SelectedIndex + 1)
                    {
                        ddlCategoriaRecurso.SelectedIndex = 0;
                    }
                    else
                    {
                        ddlCategoriaRecurso.SelectedValue = listaRequisicoes[ddlPrioridadeRequisicao.SelectedIndex].CategoriaRecurso.Id.ToString();
                    }
                    jaInserida = true;
                }
            }
            if (!jaInserida)
            {
                foreach (DecoratorRequisicoes dec in listaRequisicoes)
                {
                    //Compara se estado atual da categoria é igual à removida
                    if (dec.EstadoAtual == DecoratorRequisicoes.EstadoRequisicao.Removida)
                    {
                        continue;
                    }
                    //Compara se a prioridade da categoria para inserir é igual a da categoria da lista e se a categoria da lista é diferente de Inserida
                    if (dec.Prioridade == recComEstado.Prioridade && dec.EstadoOriginal != DecoratorRequisicoes.EstadoRequisicao.Inserida)
                    {
                        dec.CategoriaRecurso = controladorCategorias.GetCategoriaRecursoById(id);
                        dec.EstadoAtual      = DecoratorRequisicoes.EstadoRequisicao.Atualizada;
                        lblStatus.Text       = "Categoria alterada para a opção.";
                        jaInserida           = true;
                        break;
                    }
                    //Compara se a prioridade da categoria para inserir é igual a da categoria da lista e se a categoria da lista é igual a Inserida
                    if (dec.Prioridade == recComEstado.Prioridade && dec.EstadoOriginal == DecoratorRequisicoes.EstadoRequisicao.Inserida)
                    {
                        dec.CategoriaRecurso = controladorCategorias.GetCategoriaRecursoById(id);
                        lblStatus.Text       = "Categoria alterada para a opção.";
                        jaInserida           = true;
                        break;
                    }
                }
            }
            //Insere se a categoria não estiver na lista
            if (!jaInserida)
            {
                int aux = (int)Session["Opcoes"];
                aux++;
                Session["Opcoes"] = aux;
                listaRequisicoes.Add(recComEstado);
                lblStatus.Text = "Categoria selecionada para a opção.";
            }
        }
        else
        {
            //foreach para percorrer a lista para a ddl de categorias voltar para a categoria
            //atual quando selecionada a opção "Selecione"
            foreach (DecoratorRequisicoes dec in listaRequisicoes)
            {
                if (dec.Prioridade == (ddlPrioridadeRequisicao.SelectedIndex + 1))
                {
                    ddlCategoriaRecurso.SelectedValue = dec.CategoriaRecurso.Id.ToString();
                    break;
                }
            }
        }
    }