Пример #1
0
    public void CarregaGridAdmin() //Carrega a grid que mostra os Admin Coordenadores.
    {
        DataSet ds  = Perfil_DB.SelectAll();
        int     qtd = ds.Tables[0].Rows.Count; //qtd de linhas do ds


        //se qtd for maior que zero, ou seja, se tiver dados no data set
        if (qtd > 0)
        {
            gdvAdmin.Visible = true;                                                    //Parte 2: caso a grid esteja vazia no carregamento e após inserir algum Coordenador,
            //a grid precisa ficar visível de novo por causa da Parte1(o else debaixo)(Continua parte 3 - último método)
            gdvAdmin.DataSource = ds.Tables[0].DefaultView;                             //fonte de dados do grid view recebe o ds criado anteriormente
            gdvAdmin.DataBind();                                                        //preenche o grid view com os dados
            foreach (GridViewRow linha in gdvAdmin.Rows)                                //percorre cada linha da grid (obs: isso existe pelo campo de nome estar em outra tabela no BD da Fatec)
            {
                Professor prof         = new Professor();                               //instancia um novo professor
                Label     lblMatricula = (Label)linha.FindControl("lblMatriculaAdmin"); //acha o label de matrícula da grid e liga a outro label
                Label     lblNome      = (Label)linha.FindControl("lblNomeAdmin");      //acha o label de Nome e liga a outro label
                prof         = Professor.SelectByCodigo(lblMatricula.Text);             //o número de matrícula do label é usado para preencher o objeto professor usando o método de selecionar por código
                lblNome.Text = prof.Nome;                                               //o label NomeAdmin da grid é preenchido utilizando o nome que está no objeto do professor (método get encapsulado)
            }
        }
        else
        {
            //Parte 1: se não achar nenhum registro no dataset, a grid tem que ficar invisível, pois ela não fica por padrão ao desativar o único adm coordenador restante
            //(mesmo atualizando a grid e updatepanel)
            gdvAdmin.Visible = false;
        }
        lblQtdRegistroAdm.Text = "Foram encontrados " + qtd + " registros";
    }
Пример #2
0
    //DESATIVA PELO ONROWCOMMAND MAS NÃO ATUALIZA POR ALGUM MOTIVO
    //protected void gdvAdmin_RowCommand(object sender, GridViewCommandEventArgs e)
    //{
    //    if (e.CommandName == "DesativarAdm")
    //    {
    //        GridViewRow gvr = (GridViewRow)(((LinkButton)e.CommandSource).NamingContainer); //pega a linha da grid pela fonte do comando
    //        string matricula = gdvAdmin.Rows[gvr.RowIndex].Cells[0].Text; //pega a matricula daquela linha do gridview

    //        if (Perfil_DB.DeleteAdminCoord(matricula) == "0")
    //        {
    //            CarregaGridAdmin();
    //            UpdatePanelAdmin.Update();
    //            lblMsgAdmin.Text = "Administrador Coordenador desativado com sucesso!";
    //            CarregaGridProf();
    //            UpdatePanelProf.Update();

    //        }
    //    }
    //}

    protected void gdvProf_RowCommand(object sender, GridViewCommandEventArgs e) //DEFINE UM PROFESSOR COMO ADMINISTRADOR COORDENADOR
    {
        if (e.CommandName == "DefinirAdm")
        {
            GridViewRow gvr       = (GridViewRow)(((LinkButton)e.CommandSource).NamingContainer); //pega a linha da grid pela fonte do comando
            string      matricula = gdvProf.Rows[gvr.RowIndex].Cells[0].Text;                     //pega a matricula daquela linha do gridview
            Perfil      perf      = new Perfil();
            perf.Per_usuario = Session["nome"].ToString();
            perf.Matricula   = matricula;
            perf.Descricao   = 2;

            if (Perfil_DB.InsertAdmCoord(perf) == 0)
            {
                CarregaGridAdmin();
                CarregaGridProf();
                UpdatePanelProf.Update();
                UpdatePanelAdmin.Update();
                lblMsgProf.Text = "Administrador Coordenador definido com sucesso!";
            }
            else
            {
                UpdatePanelProf.Update();
                UpdatePanelAdmin.Update();
                lblMsgProf.Text = "Erro ao definir Administrador Coordenador!";
            }
        }
    }
Пример #3
0
    protected void gdvAdmin_RowUpdating(object sender, GridViewUpdateEventArgs e)     //DESATIVA O PERFIL DE ADMINISTRADOR COORDENADOR DE UM PROFESSOR
    {
        String matricula = gdvAdmin.DataKeys[e.RowIndex]["per_matricula"].ToString(); //pega a matricula do Admin Coordenador da linha específica

        if (Perfil_DB.DeleteAdminCoord(matricula) == 0)
        {
            CarregaGridAdmin();
            UpdatePanelAdmin.Update();
            lblMsgAdmin.Text = "Administrador Coordenador desativado com sucesso!";
            CarregaGridProf(); //Também carrega a grid e update do Prof para que o ícone de "Definir como Admin" volte a ficar visível para o prof clicado
            UpdatePanelProf.Update();
        }
        else
        {
            UpdatePanelAdmin.Update();
            lblMsgAdmin.Text = "Erro ao desativar Administrador Coordenador!";
        }
    }