Beispiel #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;
    }
    private void GetRequisicoes()
    {
        RequisicoesBO controleRequisicoes = new RequisicoesBO();
        IList<Requisicao> requisicoesExistentes = controleRequisicoes.GetRequisicoesPorAula(aulaAtual.Id, calendarioAtual);

        foreach (Requisicao req in requisicoesExistentes)
        {
            DecoratorRequisicoes.EstadoRequisicao estado = DecoratorRequisicoes.EstadoRequisicao.Original;
            listaRequisicoes.Add(new DecoratorRequisicoes(req, estado));

            if (req.Prioridade == Convert.ToInt32(ddlPrioridadeRequisicao.SelectedValue))
            {

                ddlCategoriaRecurso.SelectedValue = req.CategoriaRecurso.Id.ToString();
            }
            if (req.Prioridade > ddlPrioridadeRequisicao.Items.Count)
            {
                if (!estado.ToString().Equals("Removida"))
                    AdicionaOpcao();
            }
        }
        Session.Add("listaRequisicoes", listaRequisicoes);
    }