private void dgvUsuariosGrupo_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     if (!(e.RowIndex == -1))
     {
         string coluna = dgvUsuariosGrupo.Columns[e.ColumnIndex].Name;
         if (coluna.Equals("GRUPOS_USUARIOS_LOG"))
         {
             string usuario = dgvUsuariosGrupo.Rows[e.RowIndex].Cells["GRUPOS_USUARIOS_USUARIO"].Value.ToString();
             frmAuditoriaFormulario frmAuditoriaFormulario = new frmAuditoriaFormulario("USUARIOS_PERMISSOES", "SEG", "USUARIO;PROGRAMA", usuario + ";'" + this.CodPrograma + "'");
             if (frmAuditoriaFormulario.DialogResult == System.Windows.Forms.DialogResult.OK)
             {
                 frmAuditoriaFormulario.ShowDialog();
             }
         }
     }
 }
Esempio n. 2
0
        private void dgvUsuariosGrupo_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (!(e.RowIndex == -1))
            {
                string coluna = dgvUsuariosGrupo.Columns[e.ColumnIndex].Name;
                if (dgvUsuariosGrupo.Columns[e.ColumnIndex].Name.Equals("colLog"))
                {
                    string usuario = dgvUsuariosGrupo.Rows[e.RowIndex].Cells["colUsuario"].Value.ToString();
                    frmAuditoriaFormulario frmAuditoriaFormulario = new frmAuditoriaFormulario("USUARIOS_GRUPOS", "SEG", "GRUPO;USUARIO", this._grupo + ";'" + usuario + "'");
                    if (frmAuditoriaFormulario.DialogResult == System.Windows.Forms.DialogResult.OK)
                    {
                        frmAuditoriaFormulario.ShowDialog();
                    }
                }
                if (dgvUsuariosGrupo.Columns[e.ColumnIndex].Name.Equals("colExcluir"))
                {
                    if (dgvUsuariosGrupo.Rows[e.RowIndex].Cells["colMaster"].Value.ToString().ToLower().Equals("sim".ToLower()) ||
                        dgvUsuariosGrupo.Rows[e.RowIndex].Cells["colAdmin"].Value.ToString().ToLower().Equals("sim".ToLower()))
                    {
                        MessageBox.Show("Ação negada. Não é possível excluir um usuário Master ou Administrador.", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        return;
                    }

                    string usuario     = dgvUsuariosGrupo.Rows[e.RowIndex].Cells["colUsuario"].Value.ToString();
                    string usuarioNome = dgvUsuariosGrupo.Rows[e.RowIndex].Cells["colUsuarioNome"].Value.ToString();

                    if ((MessageBox.Show("Confirma a exclusão do usuário " + usuario + " - " + usuarioNome.ToUpper() + " do grupo?", "Atenção", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes))
                    {
                        string  sql = (@"");
                        Conexao dal = new Conexao(Globals.GetStringConnection(), 2);
                        dal.ExecuteNonQuery(sql);

                        PreencherGridUsuariosGrupo();
                    }
                }
            }
        }
        private void dgvAcessosUsuarios_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (!(e.RowIndex == -1))
            {
                //Impede o click nas outras colunas
                string coluna = dgvAcessosUsuarios.Columns[e.ColumnIndex].Name;
                if (!(coluna.Equals("USUARIOS_LOG") ||
                      coluna.Equals("USUARIOS_VISUALIZAR") ||
                      coluna.Equals("USUARIOS_INSERIR") ||
                      coluna.Equals("USUARIOS_ALTERAR") ||
                      coluna.Equals("USUARIOS_EXCLUIR") ||
                      coluna.Equals("USUARIOS_ADM") ||
                      coluna.Equals("USUARIOS_HERDAR_PERMISSOES_GRUPO")))
                {
                    dgvAcessosUsuarios.Columns[e.ColumnIndex].ReadOnly = true;
                }
                else if (coluna.Equals("USUARIOS_LOG"))
                {
                    string usuario = dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_USUARIO"].Value.ToString();
                    frmAuditoriaFormulario frmAuditoriaFormulario = new frmAuditoriaFormulario("USUARIOS_PERMISSOES", "SEG", "USUARIO;PROGRAMA", usuario + ";'" + this.CodPrograma + "'");
                    if (frmAuditoriaFormulario.DialogResult == System.Windows.Forms.DialogResult.OK)
                    {
                        frmAuditoriaFormulario.ShowDialog();
                    }
                }
                else if (this.usuarioAdmin)
                {
                    if (coluna.Equals("USUARIOS_HERDAR_PERMISSOES_GRUPO"))
                    {
                        #region Atribuir as permissoes do grupo ao usuário

                        //Proibir o click quando nao tiver o icone de grupo (usuario ja com as permissoes do grupo)
                        if (dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_HERDAR_PERMISSOES_GRUPO"].Style.BackColor != Color.LimeGreen)
                        {
                            return;
                        }

                        string usuario             = dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_USUARIO"].Value.ToString();
                        bool   permissaoIndividual = dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_HERANCA"].Value.ToString().Equals("0") ? true : false;

                        //Proibir um usuário admin de tirar sua própria função de admin)
                        if (usuario.Equals(Globals.Usuario.ToString()))
                        {
                            dgvAcessosUsuarios.Rows[e.RowIndex].Cells[e.ColumnIndex].ReadOnly = true;
                            dgvAcessosUsuarios.ClearSelection();
                            return;
                        }
                        else
                        {
                            if (permissaoIndividual)
                            {
                                if ((MessageBox.Show("Confirma a atribuição das permissões do grupo ao usuário " + usuario + "?", "Atenção", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes))
                                {
                                    string  sql = @" ";
                                    Conexao dal = new Conexao(Globals.GetStringConnection(), 2);
                                    dal.ExecuteNonQuery(sql);

                                    PreencherAcessoUsuarios();
                                }
                            }
                            else
                            {
                                MessageBox.Show("O usuário " + usuario + " já possui as permissões do grupo.", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            }
                        }
                        #endregion
                    }
                    else
                    {
                        #region Alterar as permissões do usuário
                        string usuario = dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_USUARIO"].Value.ToString();

                        string update_set    = "";
                        string insert_values = "";

                        string inserir    = dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_INSERIR"].Value.ToString().Equals("True") ? "1" : "0";
                        string excluir    = dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_EXCLUIR"].Value.ToString().Equals("True") ? "1" : "0";
                        string alterar    = dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_ALTERAR"].Value.ToString().Equals("True") ? "1" : "0";
                        string visualizar = dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_VISUALIZAR"].Value.ToString().Equals("True") ? "1" : "0";
                        string admin      = dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_ADM"].Value.ToString().Equals("True") ? "1" : "0";


                        bool permissaoIndividual = dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_HERANCA"].Value.ToString().Equals("0") ? true : false;

                        if (coluna.Equals("USUARIOS_INSERIR"))
                        {
                            string valor = (inserir.Equals("0") ? "1" : "0").ToString();

                            if (permissaoIndividual)
                            {
                                update_set = "SET UP.INCLUIR = " + valor;
                            }
                            else
                            {
                                insert_values = (valor + "," + excluir + "," + alterar + "," + visualizar + "," + admin);
                            }
                        }
                        else if (coluna.Equals("USUARIOS_EXCLUIR"))
                        {
                            string valor = (excluir.Equals("0") ? "1" : "0").ToString();

                            if (permissaoIndividual)
                            {
                                update_set = "SET UP.EXCLUIR = " + valor;
                            }
                            else
                            {
                                insert_values = (inserir + "," + valor + "," + alterar + "," + visualizar + "," + admin);
                            }
                        }
                        else if (coluna.Equals("USUARIOS_ALTERAR"))
                        {
                            string valor = (alterar.Equals("0") ? "1" : "0").ToString();

                            if (permissaoIndividual)
                            {
                                update_set = "SET UP.ALTERAR = " + valor;
                            }
                            else
                            {
                                insert_values = (inserir + "," + excluir + "," + valor + "," + visualizar + "," + admin);
                            }
                        }
                        else if (coluna.Equals("USUARIOS_VISUALIZAR"))
                        {
                            string valor = (visualizar.Equals("0") ? "1" : "0").ToString();

                            if (permissaoIndividual)
                            {
                                update_set = "SET UP.VISUALIZAR = " + valor;
                            }

                            else
                            {
                                insert_values = (inserir + "," + excluir + "," + alterar + "," + valor + "," + admin);
                            }
                        }
                        else if (coluna.Equals("USUARIOS_ADM"))
                        {
                            //Proibir um usuário admin de tirar sua própria função de admin)
                            if (usuario.Equals(Globals.Usuario.ToString()))
                            {
                                dgvAcessosUsuarios.Rows[e.RowIndex].Cells[e.ColumnIndex].ReadOnly = true;

                                if (dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_ADM"].Value.ToString().Equals("0"))
                                {
                                    dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_ADM"].Value = 1;
                                }
                                else
                                {
                                    dgvAcessosUsuarios.Rows[e.RowIndex].Cells["USUARIOS_ADM"].Value = 0;
                                }

                                dgvAcessosUsuarios.ClearSelection();
                                return;
                            }
                            else
                            {
                                string valor = (admin.Equals("0") ? "1" : "0").ToString();

                                if (permissaoIndividual)
                                {
                                    update_set = "SET UP.ADMIN = " + valor;
                                }
                                else
                                {
                                    insert_values = (inserir + "," + excluir + "," + alterar + "," + visualizar + "," + valor);
                                }
                            }
                        }

                        string sql = "";

                        //Usuários com permissão individual
                        if (permissaoIndividual)
                        {
                            sql = (@"");
                        }
                        //Usuários com permissão do grupo (inserir registro em seg.usuarios_permissoes)
                        else
                        {
                            sql = (@"  ");
                        }

                        Conexao dal = new Conexao(Globals.GetStringConnection(), 2);
                        dal.ExecuteNonQuery(sql);

                        PreencherAcessoUsuarios();

                        #endregion
                    }
                }
            }
        }