示例#1
0
 private void BtnActivar_Click(object sender, EventArgs e)
 {
     try
     {
         //Instancia de Web service con credenciales NT
         ServiceProcess_Rol.Process_RolSoapClient auxServiceRol = new ServiceProcess_Rol.Process_RolSoapClient();
         auxServiceRol.ClientCredentials.UserName.UserName = Cuenta.Usuario_iis;
         auxServiceRol.ClientCredentials.UserName.Password = Cuenta.Clave_iis;
         ServiceProcess_Rol.Rol auxRol = new ServiceProcess_Rol.Rol();
         auxRol = auxServiceRol.TraerRolConEntidad_Escritorio(Convert.ToInt32(_id_rol));
         if (MessageBox.Show("¿Esta Seguro de Activar El Rol " + _nombre + "?", "CONFIRMAR", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
         {
             //Insertar datos via web service
             auxServiceRol.ActualizarRolSinEntidad_Escritorio(Convert.ToInt32(_id_rol), _nombre, 1);
             //ocultar botones
             btnActivar.Visible    = false;
             btnDesactivar.Visible = false;
             //Vaciar variables
             _id_rol = null;
             _nombre = string.Empty;
             _estado = string.Empty;
             //limpiar GridView
             dgvRol.Rows.Clear();
             dgvRol.Refresh();
             dgvAccesos.Rows.Clear();
             dgvAccesos.Refresh();
             //Metodo Carga de GridView
             cargarDataGridViewPpal();
             MessageBox.Show("Rol Activado.", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
         }
         else
         {
             //continua CON LA VISTA ACTUAL
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show("Error en metodo de accion BtnActivar_Click, Contactese con el Administrador Detalle de Error: " + ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
        private void BtnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                //instansear web service con seguridad
                ServiceProcess_Rol.Process_RolSoapClient auxServiceRol = new ServiceProcess_Rol.Process_RolSoapClient();
                auxServiceRol.ClientCredentials.UserName.UserName = Cuenta.Usuario_iis;
                auxServiceRol.ClientCredentials.UserName.Password = Cuenta.Clave_iis;
                ServiceProcess_Rol.Rol auxRol = new ServiceProcess_Rol.Rol();
                ServiceProcess_Acceso.Process_AccesoSoapClient auxServiceAcceso = new ServiceProcess_Acceso.Process_AccesoSoapClient();
                auxServiceAcceso.ClientCredentials.UserName.UserName = Cuenta.Usuario_iis;
                auxServiceAcceso.ClientCredentials.UserName.Password = Cuenta.Clave_iis;
                ServiceProcess_Acceso.Acceso auxAcceso = new ServiceProcess_Acceso.Acceso();
                ServiceProcess_Permisos.Process_PermisosSoapClient auxServicePermisos = new ServiceProcess_Permisos.Process_PermisosSoapClient();
                auxServicePermisos.ClientCredentials.UserName.UserName = Cuenta.Usuario_iis;
                auxServicePermisos.ClientCredentials.UserName.Password = Cuenta.Clave_iis;
                ServiceProcess_Permisos.Permisos auxPermisos = new ServiceProcess_Permisos.Permisos();

                if (_guardar == 1)//Modificar ROL
                {
                    //Validacion espacio en blanco y seleccion de combobox
                    if (txtNombre.Text.Trim().Equals(""))
                    {
                        MessageBox.Show("El campo Nombre No puede estar Vacio.", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else
                    {
                        //Validar longitud de caracteres
                        if (txtNombre.Text.Trim().Length < 3 || txtNombre.Text.Trim().Length > 50)
                        {
                            MessageBox.Show("El Nombre, debe tener un minimo de 3 Caracteres.", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                        else
                        {
                            //validar que se esta dejando el mismo nombre
                            auxRol = auxServiceRol.TraerRolPorNombreConEntidad_Escritorio(txtNombre.Text);
                            if (txtNombre.Text.ToUpper().Equals(_nombre.ToUpper()))
                            {
                                if (dgvAcceso.Rows.Count < 1)
                                {
                                    MessageBox.Show("Debe Agregar un Permiso como minimo al Rol.", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                }
                                else
                                {
                                    //confirmacion de Actualizar  ROL
                                    if (MessageBox.Show("Confirmar La Actualizacion del Rol.", "CONFIRMAR", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                                    {
                                        //capturar dataset
                                        DataSet ds = auxServicePermisos.TraerPermisosPorRolSinEntidad_Escritorio(Convert.ToInt32(_id_rol)); // CAPTURAR REGISTROS SEGUN ROL
                                        if ((ds.Tables.Count != 0) && (ds.Tables[0].Rows.Count > 0))                                        //VALIDAR QUE DATASET NO VENGA VACIO SI CON INFORMACION SE BORRAR LOS PERMISOS PARA EL ROL
                                        {
                                            auxServicePermisos.EliminarPermisosSinEntidad_Escritorio(Convert.ToInt32(_id_rol));
                                        }

                                        for (int i = 0; i < dgvAcceso.Rows.Count; i++)    //recorrer data gred view
                                        {
                                            string _id_acceso_insertar = dgvAcceso.Rows[i].Cells["ID_ACCESO"].Value.ToString();
                                            auxServicePermisos.InsertarPermisosSinEntidad_Escritorio(Convert.ToInt32(_id_acceso_insertar), Convert.ToInt32(_id_rol));
                                        }

                                        auxServiceRol.ActualizarRolSinEntidad_Escritorio(Convert.ToInt32(_id_rol), txtNombre.Text, Convert.ToInt32(_estado));
                                        _id_rol           = null;
                                        this.DialogResult = DialogResult.OK;
                                        this.Close();
                                    }
                                    else
                                    {
                                        //se devuelve al Cuadro de datos
                                        MessageBox.Show("NO se Actualizo Rol.", "ACTUALIZACION DE ROL", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    }
                                }
                            }
                            else if (auxRol.Nombre == null)
                            {
                                if (dgvAcceso.Rows.Count < 1)
                                {
                                    MessageBox.Show("Debe Agregar un Permiso como minimo al Rol.", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                }
                                else
                                {
                                    //confirmacion de Actualizar  ROL
                                    if (MessageBox.Show("Confirmar La Actualizacion del Rol.", "CONFIRMAR", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                                    {
                                        //capturar dataset
                                        DataSet ds = auxServicePermisos.TraerPermisosPorRolSinEntidad_Escritorio(Convert.ToInt32(_id_rol)); // CAPTURAR REGISTROS SEGUN ROL
                                        if ((ds.Tables.Count != 0) && (ds.Tables[0].Rows.Count > 0))                                        //VALIDAR QUE DATASET NO VENGA VACIO SI CON INFORMACION SE BORRAR LOS PERMISOS PARA EL ROL
                                        {
                                            auxServicePermisos.EliminarPermisosSinEntidad_Escritorio(Convert.ToInt32(_id_rol));
                                        }

                                        for (int i = 0; i < dgvAcceso.Rows.Count; i++)//recorrer data gred view
                                        {
                                            string _id_acceso_insertar = dgvAcceso.Rows[i].Cells["ID_ACCESO"].Value.ToString();
                                            auxServicePermisos.InsertarPermisosSinEntidad_Escritorio(Convert.ToInt32(_id_acceso_insertar), Convert.ToInt32(_id_rol));
                                        }

                                        auxServiceRol.ActualizarRolSinEntidad_Escritorio(Convert.ToInt32(_id_rol), txtNombre.Text, Convert.ToInt32(_estado));
                                        _id_rol           = null;
                                        this.DialogResult = DialogResult.OK;
                                        this.Close();
                                    }
                                    else
                                    {
                                        //se devuelve al Cuadro de datos
                                        MessageBox.Show("NO se Actualizo Rol.", "ACTUALIZACION DE ROL", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    }
                                }
                            }
                            else
                            {
                                MessageBox.Show("El Nombre del Rol Modificado ya Existe.", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            }
                        }
                    }
                }
                else//Nuevo Rol
                {
                    //Validacion espacio en blanco y seleccion de combobox
                    if (txtNombre.Text.Trim().Equals(""))
                    {
                        MessageBox.Show("El campo Nombre No puede estar Vacio.", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else
                    {
                        //Validar longitud de caracteres
                        if (txtNombre.Text.Trim().Length < 3 || txtNombre.Text.Trim().Length > 50)
                        {
                            MessageBox.Show("El Nombre, debe tener un minimo de 3 Caracteres.", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                        else
                        {
                            //validar rol no exista
                            auxRol = auxServiceRol.TraerRolPorNombreConEntidad_Escritorio(txtNombre.Text);
                            if (auxRol.Nombre == null)
                            {
                                if (dgvAcceso.Rows.Count < 1)
                                {
                                    MessageBox.Show("Debe Agregar un Permiso como minimo al Rol.", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                }
                                else
                                {
                                    //confirmacion de Actualizar  ROL
                                    if (MessageBox.Show("Confirmar la Creacion del Nuevo Rol.", "CONFIRMAR", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                                    {
                                        auxServiceRol.InsertarRolSinEntidad_Escritorio(txtNombre.Text.ToUpper(), 1);
                                        auxRol = auxServiceRol.TraerRolPorNombreConEntidad_Escritorio(txtNombre.Text.ToUpper());

                                        for (int i = 0; i < dgvAcceso.Rows.Count; i++)//recorrer data gred view
                                        {
                                            string _id_acceso_insertar = dgvAcceso.Rows[i].Cells["ID_ACCESO"].Value.ToString();
                                            auxServicePermisos.InsertarPermisosSinEntidad_Escritorio(Convert.ToInt32(_id_acceso_insertar), auxRol.Id_rol);
                                        }


                                        _id_rol           = null;
                                        this.DialogResult = DialogResult.OK;
                                        this.Close();
                                    }
                                    else
                                    {
                                        //se devuelve al Cuadro de datos
                                        MessageBox.Show("NO se Creo Rol.", "Nuevo ROL", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    }
                                }
                            }
                            else
                            {
                                MessageBox.Show("El Nombre del Nuevo Rol ya Existe.", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error en metodo de accion BtnGuardar_Click, Contactese con el Administrador Detalle de Error: " + ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }//fin try catch
        }