Ejemplo n.º 1
0
        private void BtnLider_Click(object sender, EventArgs e)
        {
            try
            {
                //Instancia de Web service con credenciales NT

                ServiceProcess_Usuario.Process_UsuarioSoapClient auxServiceUsuario = new ServiceProcess_Usuario.Process_UsuarioSoapClient();
                auxServiceUsuario.ClientCredentials.UserName.UserName = Cuenta.Usuario_iis;
                auxServiceUsuario.ClientCredentials.UserName.Password = Cuenta.Clave_iis;

                ServiceProcess_UsuarioEquipo.Process_UsuarioEquipoSoapClient auxServiceUsuarioCargo = new ServiceProcess_UsuarioEquipo.Process_UsuarioEquipoSoapClient();
                auxServiceUsuarioCargo.ClientCredentials.UserName.UserName = Cuenta.Usuario_iis;
                auxServiceUsuarioCargo.ClientCredentials.UserName.Password = Cuenta.Clave_iis;

                ServiceProcess_Usuario.Usuario auxUsuario = new ServiceProcess_Usuario.Usuario();
                auxUsuario = auxServiceUsuario.TraerUsuarioConEntidad_Escritorio(_rut_usuario);


                buscarLiderEquipo();

                if (_lider_equipo == null)
                {
                    if (MessageBox.Show("¿Esta Seguro de Cambiar a Miembro " + auxUsuario.Primer_nombre + " " + auxUsuario.Primer_apellido + " como Lider de Equipo ?", "CONFIRMAR", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        //Insertar datos via web service
                        auxServiceUsuarioCargo.ActualizarUsuarioEquipoSinEntidad_Escritorio(_rut_usuario, Convert.ToInt32(_id_equipo), 1);
                        btnLider.Visible       = false;
                        btnColaborador.Visible = false;
                        //Vaciar variables

                        _lider_equipo = null;
                        //limpiar GridView
                        dgvMiembros.Rows.Clear();
                        dgvMiembros.Refresh();
                        //Metodo Carga de GridView
                        cargarDataGridViewMiembro();
                        MessageBox.Show("Usuario " + auxUsuario.Primer_nombre + " " + auxUsuario.Primer_apellido + " ahora es Lider de Equipo .", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                    }
                    else
                    {
                        //continua CON LA VISTA ACTUAL
                    }
                }
                else
                {
                    _lider_equipo = null;
                    MessageBox.Show("Ya existe un Lider de Equipo, primero debe cambiarlo a Colaborador antes de designar un Nuevo Lider .", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                }
            }
            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 cargarDataGridViewMiembro()
        {
            try
            {
                dgvMiembro.Rows.Clear();
                dgvMiembro.Refresh();
                //instansear web service con seguridad
                ServiceProcess_UsuarioEquipo.Process_UsuarioEquipoSoapClient auxServiceUsuarioCargo = new ServiceProcess_UsuarioEquipo.Process_UsuarioEquipoSoapClient();
                auxServiceUsuarioCargo.ClientCredentials.UserName.UserName = Cuenta.Usuario_iis;
                auxServiceUsuarioCargo.ClientCredentials.UserName.Password = Cuenta.Clave_iis;

                ServiceProcess_Usuario.Process_UsuarioSoapClient auxServiceUsuario = new ServiceProcess_Usuario.Process_UsuarioSoapClient();
                auxServiceUsuario.ClientCredentials.UserName.UserName = Cuenta.Usuario_iis;
                auxServiceUsuario.ClientCredentials.UserName.Password = Cuenta.Clave_iis;

                ServiceProcess_Usuario.Usuario auxUsuario = new ServiceProcess_Usuario.Usuario();

                //capturar dataset
                DataSet ds = auxServiceUsuarioCargo.TraerUsuarioEquipoSinEntidad_Escritorio(Convert.ToInt32(_id_equipo));
                if ((ds.Tables.Count != 0) && (ds.Tables[0].Rows.Count > 0))
                {
                    //Capturar Tabla
                    DataTable dt = ds.Tables[0];
                    //contar cantidad de Miembos
                    int _cantidad_miembros = dt.Rows.Count;
                    //crear array bidimencional
                    string[,] ListaMiembros = new string[_cantidad_miembros, 2];
                    //Recorrer data table
                    int _fila = 0;
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        //Capturar datos de la fila recorridad en objeto rol
                        string rut_usuario = (String)dt.Rows[i]["Rut_usuario"];
                        auxUsuario = auxServiceUsuario.TraerUsuarioConEntidad_Escritorio(rut_usuario);
                        string nombre_usuario = auxUsuario.Primer_nombre + " " + auxUsuario.Segundo_nombre + " " + auxUsuario.Primer_apellido + " " + auxUsuario.Segundo_apellido;
                        ListaMiembros[_fila, 0] = rut_usuario;
                        ListaMiembros[_fila, 1] = nombre_usuario;
                        //agregar lista a gridview
                        dgvMiembro.Rows.Add(ListaMiembros[_fila, 0], ListaMiembros[_fila, 1]);
                        _fila++;
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error en metodo cargarDataGridViewMiembro, Contactese con el Administrador Detalle de Error: " + ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private void buscarLiderEquipo()
        {
            try
            {
                //instansear web service con seguridad
                ServiceProcess_UsuarioEquipo.Process_UsuarioEquipoSoapClient auxServiceUsuarioCargo = new ServiceProcess_UsuarioEquipo.Process_UsuarioEquipoSoapClient();
                auxServiceUsuarioCargo.ClientCredentials.UserName.UserName = Cuenta.Usuario_iis;
                auxServiceUsuarioCargo.ClientCredentials.UserName.Password = Cuenta.Clave_iis;

                ServiceProcess_Usuario.Process_UsuarioSoapClient auxServiceUsuario = new ServiceProcess_Usuario.Process_UsuarioSoapClient();
                auxServiceUsuario.ClientCredentials.UserName.UserName = Cuenta.Usuario_iis;
                auxServiceUsuario.ClientCredentials.UserName.Password = Cuenta.Clave_iis;

                ServiceProcess_Usuario.Usuario auxUsuario = new ServiceProcess_Usuario.Usuario();

                //capturar dataset
                DataSet ds = auxServiceUsuarioCargo.TraerUsuarioEquipoSinEntidad_Escritorio(Convert.ToInt32(_id_equipo));
                if ((ds.Tables.Count != 0) && (ds.Tables[0].Rows.Count > 0))
                {
                    //Capturar Tabla
                    DataTable dt = ds.Tables[0];
                    //contar cantidad de Miembos
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        int responsable = Convert.ToInt32(dt.Rows[i]["RESPONSABLE"]);
                        if (responsable == 1)
                        {
                            _lider_equipo = (String)dt.Rows[i]["RUT_USUARIO"];
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error en metodo cargarDataGridViewMiembro, 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_UsuarioEquipo.Process_UsuarioEquipoSoapClient auxServiceUsuarioEquipo = new ServiceProcess_UsuarioEquipo.Process_UsuarioEquipoSoapClient();
                auxServiceUsuarioEquipo.ClientCredentials.UserName.UserName = Cuenta.Usuario_iis;
                auxServiceUsuarioEquipo.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();


                //Validacion de equipo vacio
                if (dgvMiembro.Rows.Count == 0)
                {
                    MessageBox.Show("NO puede Guardar el Equipo Sin Miembros.", "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else
                {
                    //confirmacion de Actualizar  ROL
                    if (MessageBox.Show("Confirmar la Nueva Lista de Miembros.", "CONFIRMAR", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        //capturar dataset
                        DataSet ds = auxServiceUsuarioEquipo.TraerUsuarioEquipoSinEntidad_Escritorio(Convert.ToInt32(_id_equipo)); // CAPTURAR REGISTROS SEGUN equipo
                        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 equipo
                        {
                            auxServiceUsuarioEquipo.EliminarUsuarioEquipoSinEntidad_Escritorio(Convert.ToInt32(_id_equipo));
                        }

                        for (int i = 0; i < dgvMiembro.Rows.Count; i++)//recorrer data gred view
                        {
                            string _id_rut_insertar = dgvMiembro.Rows[i].Cells["RUT_USUARIO"].Value.ToString();
                            if (_id_rut_insertar.Equals(_lider_equipo))
                            {
                                auxServiceUsuarioEquipo.InsertarUsuarioEquipoSinEntidad_Escritorio(_id_rut_insertar, Convert.ToInt32(_id_equipo), 1);
                            }
                            else
                            {
                                auxServiceUsuarioEquipo.InsertarUsuarioEquipoSinEntidad_Escritorio(_id_rut_insertar, Convert.ToInt32(_id_equipo), 0);
                            }
                        }

                        _lider_equipo     = null;
                        this.DialogResult = DialogResult.OK;
                        this.Close();
                    }
                    else
                    {
                        //se devuelve al Cuadro de datos
                        MessageBox.Show("No se creo Miembros de Equipo.", "MIEMBROS DE EQUIPOL", 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
        }