/* * --> BOTON MODIFICAR USUARIOS */ private void btnRegistroUsuariosNuevos_Click(object sender, EventArgs e) { if (txtIdUsuarios.Text.Length == 0 || txtP1Nombre.Text.Length == 0 || txtA1Apellido.Text.Length == 0 || txtNombreUsuario.Text.Length == 0 || txtPassword.Text.Length == 0 || cbxRolesUsuarios.Text == "- Seleccione un rol...") { // MOSTRANDO VENTANA EMERGENTE DE ADVERTENCIA Form LlamadaAdvertencia = new MensajeErrorCamposVacios(); LlamadaAdvertencia.Show(); // LLAMADA DE NOTIFICACION PERSONALIZADA DE ADVERTENCIA Llamada.NotificionAdvertencia(); } else { // SI CUMPLE CONDICION ANTERIOR, E INSERCION ES EXITOSA... ENTONCES try { // BUSQUEDA DE REGISTROS DUPLICADOS PREVIO A INSERCION DE NUEVOS REGISTROS SqlCommand Comunicacion = new SqlCommand("SELECT Nombre_Usuario FROM Usuarios WHERE Nombre_Usuario = @Nombre_Usuario", Controlador.Conexiones()); Comunicacion.Parameters.AddWithValue("Nombre_Usuario", txtNombreUsuario.Text); // NOMBRE DE USUARIO SqlDataAdapter AdaptadorSQL = new SqlDataAdapter(Comunicacion); DataTable DatosDB = new DataTable(); AdaptadorSQL.Fill(DatosDB); // SI EXISTE AL MENOS UN REGISTRO EN LA BUSQUEDA, ENTONCES... if (DatosDB.Rows.Count == 1) { // LLAMADA DE VENTANA EMERGENTE -> ERROR INSERTAR REGISTROS DUPLICADOS Form TareaRechazada = new MensajeErrorDuplicados(); TareaRechazada.Show(); // LLAMADA DE NOTIFICACION PERSONALIZADA DE ERROR Llamada.NotificionErrorDuplicado(); } else if (DatosDB.Rows.Count == 0) { try { using (SqlCommand comando = new SqlCommand("sp_ModificarUsuarios", Controlador.Conexiones())) { comando.CommandType = CommandType.StoredProcedure; comando.Parameters.Add(new SqlParameter("@ID_Usuario", txtIdUsuarios.Text)); // ID DE USUARIO comando.Parameters.Add(new SqlParameter("@Nombre", txtP1Nombre.Text)); // PRIMER NOMBRE DE USUARIO comando.Parameters.Add(new SqlParameter("@Apellido", txtA1Apellido.Text)); // PRIMER APELLIDO DE USUARIO comando.Parameters.Add(new SqlParameter("@Nombre_Usuario", txtNombreUsuario.Text)); // NOMBRE DE USUARIO comando.Parameters.Add(new SqlParameter("@Contrasenia", Encriptar.ToSha512(txtPassword.Text))); // CONTRASEÑA DE USUARIO comando.Parameters.Add(new SqlParameter("@ID_Rol", cbxRolesUsuarios.Text)); // ROL DE USUARIO comando.ExecuteNonQuery(); // EJECUTANDO RUTINA } // POR EFECTOS DE SEGURIDAD Y MEJOR CONTROL DEL SISTEMA, ID NO PODRA SER MODIFICADO... if (cbxRolesUsuarios.Text == "- Seleccione un rol...") { // MOSTRANDO VENTANA EMERGENTE DE ADVERTENCIA Form LlamadaAdvertencia = new MensajeErrorCamposVacios(); LlamadaAdvertencia.Show(); // LLAMADA DE NOTIFICACION PERSONALIZADA DE ADVERTENCIA Llamada.NotificionAdvertencia(); } else { // REFRESCANDO VISTA DATAGRIDVIEW DetallesSimplesUsuarios.DataSource = integracion.SelectDataTable("SELECT * FROM vUsuariosRegistrados"); // DATAGRIDVIEW ROLES // LIMPIEZA GENERAL LUEGO DE INSERTAR NUEVO REGISTRO LimpiezaUsuarios(); // LLAMADA METODO LIMPIEZA // MOSTRANDO EN PANTALLA PROCESO FINALIZADO CON EXITO Form TareaFinalizada = new MensajeAprobacion(); TareaFinalizada.Show(); // LLAMADA DE NOTIFICACION PERSONALIZADA DE ADVERTENCIA Llamada.NotificionConfirmacion(); } } catch { // LLAMADA DE VENTANA EMERGENTE -> ERROR INSERTAR BASE DE DATOS Form TareaRechazadaDB = new MensajeErrorDB(); TareaRechazadaDB.Show(); // LLAMADA DE NOTIFICACION PERSONALIZADA DE ERROR Llamada.NotificionError(); } } } // SI OCURRE UN ERROR, ENTONCES... catch { // LLAMADA DE VENTANA EMERGENTE -> ERROR ALGO SALIO MAL Form TareaRechazada = new MensajeAlgoSalioMal(); TareaRechazada.Show(); // LLAMADA DE NOTIFICACION PERSONALIZADA DE ERROR Llamada.NotificionErrorDuplicado(); } finally { Controlador.CierreConexion(); // CIERRE DE CONEXION } } }
/* * --> METODO INICIO DE SESION */ public void IngresoUsuarios(String UsuarioFC, String ContraseniaFC) // DONDE FC -> ABREVIATURA FULL CALZADO { // SI TEXTBOX SE ENCUENTRAN VACIOS, ENTONCES... if (this.txtUsuarioLogin.Text == "Ingrese su usuario..." || this.txtPassUsuario.Text == "password" || this.txtUsuarioLogin.Text == "" || this.txtPassUsuario.Text == "") { Llamada.NotificionAdvertencia(); // NOTIFICACION PERSONALIZADA DE ADVERTENCIA // LLAMADA ERROR CAMPOS REQUERIDOS INCOMPLETOS {VACIOS} Form LlamadaErrorCampos = new MensajeErrorCamposVacios(); LlamadaErrorCampos.Show(); } else { // CASO CONTRARIO, CONEXION EXITOSA Y PROCEDE A VALIDAR INGRESO SEGUN X ROL try { // SELECCIONANDO NOMBRE DE USUARIO, NOMBRE USUARIO A INGRESAR Y CONTRASEÑA SqlCommand Comunicacion = new SqlCommand("SELECT Nombre, ID_Rol FROM Usuarios WHERE Nombre_Usuario = @nombre_usuario AND Contrasenia = @contrasenia", Controlador.Conexiones()); Comunicacion.Parameters.AddWithValue("nombre_usuario", UsuarioFC); // NOMBRE DE USUARIO // CONTRASEÑA ENCRIPTADA -> IMPORTANTE, SIN EL METODO DE LLAMADO NO ES POSIBLE <<<HACER COMPARACION>>> Comunicacion.Parameters.AddWithValue("contrasenia", Encriptar.ToSha512(ContraseniaFC)); // CONTRASEÑA SqlDataAdapter AdaptadorSQL = new SqlDataAdapter(Comunicacion); DataTable DatosDB = new DataTable(); AdaptadorSQL.Fill(DatosDB); // SI EXISTE AL MENOS UN REGISTRO EN LA BUSQUEDA, ENTONCES... if (DatosDB.Rows.Count == 1) { /* * --> VALIDACION USUARIOS ADMINISTRADORES */ this.Hide(); // OCULTA DATOS DE INGRESO if (DatosDB.Rows[0][1].ToString() == "Administrador") { /* * INVOCANDO PANTALLA DE ESPERA ANTES DE INICIAR LA APLICACION */ this.Hide(); // SE OCULTA VENTANA LOGIN PARA MOSTRAR VENTANA DE CARGA BienvenidaUsuarios vistabienvenida = new BienvenidaUsuarios(); // INSTANCIA (OBJETO) CREADO PARA INVOCAR VENTANA vistabienvenida.ShowDialog(); // MUESTRA VENTANA TIPO --> VENTANA DE DIALOGO /* * --> MOSTRANDO PANTALLA DE ADMINISTRACION * USUARIOS : ADMINISTRADORES */ new Administradores(DatosDB.Rows[0][0].ToString()).Show(); /* * --> VALIDACION USUARIOS DEPARTEMENTO DE RECURSOS HUMANOS / GERENCIA */ } else if (DatosDB.Rows[0][1].ToString() == "RRHH") { /* * INVOCANDO PANTALLA DE ESPERA ANTES DE INICIAR LA APLICACION */ this.Hide(); // SE OCULTA VENTANA LOGIN PARA MOSTRAR VENTANA DE CARGA BienvenidaUsuarios vistabienvenida = new BienvenidaUsuarios(); // INSTANCIA (OBJETO) CREADO PARA INVOCAR VENTANA vistabienvenida.ShowDialog(); // MUESTRA VENTANA TIPO --> VENTANA DE DIALOGO /* * --> MOSTRANDO PANTALLA DE ADMINISTRACION * USUARIOS : GERENCIA | DEPARTAMENTO RECURSOS HUMANOS */ new RecursosHumanosDpto(DatosDB.Rows[0][0].ToString()).Show(); /* * --> VALIDACION USUARIOS PRESIDENCIA / GERENCIA */ } else if (DatosDB.Rows[0][1].ToString() == "Presidencia") { /* * INVOCANDO PANTALLA DE ESPERA ANTES DE INICIAR LA APLICACION */ this.Hide(); // SE OCULTA VENTANA LOGIN PARA MOSTRAR VENTANA DE CARGA BienvenidaUsuarios vistabienvenida = new BienvenidaUsuarios(); // INSTANCIA (OBJETO) CREADO PARA INVOCAR VENTANA vistabienvenida.ShowDialog(); // MUESTRA VENTANA TIPO --> VENTANA DE DIALOGO /* * --> MOSTRANDO PANTALLA DE ADMINISTRACION * USUARIOS : PRESIDENCIA GERENCIA GENERAL */ new PresidenciaAdministracion(DatosDB.Rows[0][0].ToString()).Show(); /* * --> VALIDACION USUARIOS ATENCION AL CLIENTE / EMPLEADOS FULL CALZADO */ } else if (DatosDB.Rows[0][1].ToString() == "AtencionClientes") { /* * INVOCANDO PANTALLA DE ESPERA ANTES DE INICIAR LA APLICACION */ this.Hide(); // SE OCULTA VENTANA LOGIN PARA MOSTRAR VENTANA DE CARGA BienvenidaUsuarios vistabienvenida = new BienvenidaUsuarios(); // INSTANCIA (OBJETO) CREADO PARA INVOCAR VENTANA vistabienvenida.ShowDialog(); // MUESTRA VENTANA TIPO --> VENTANA DE DIALOGO /* * --> MOSTRANDO PANTALLA DE ADMINISTRACION * USUARIOS : EMPLEADOS GENERALES DE ATENCION AL CLIENTE */ new AtencionAlClienteFC(DatosDB.Rows[0][0].ToString()).Show(); /* * --> VALIDACION USUARIOS VENTAS DIRECTAS {CAJEROS} / EMPLEADOS FULL CALZADO */ } else if (DatosDB.Rows[0][1].ToString() == "CajerosFC") { /* * INVOCANDO PANTALLA DE ESPERA ANTES DE INICIAR LA APLICACION */ this.Hide(); // SE OCULTA VENTANA LOGIN PARA MOSTRAR VENTANA DE CARGA BienvenidaUsuarios vistabienvenida = new BienvenidaUsuarios(); // INSTANCIA (OBJETO) CREADO PARA INVOCAR VENTANA vistabienvenida.ShowDialog(); // MUESTRA VENTANA TIPO --> VENTANA DE DIALOGO /* * --> MOSTRANDO PANTALLA DE ADMINISTRACION * USUARIOS : EMPLEADOS GENERALES DE CAJA -> VENTAS FULL CALZADO {CAJEROS} */ new VentasClientesFC(DatosDB.Rows[0][0].ToString()).Show(); } } else { // DATOS ERRONEOS, ENTONCES... Llamada.NotificionError(); // NOTIFICACION PERSONALIZADA DE ERROR // LLAMADA ERROR DATOS ERRONEOS -> INGRESO INVALIDO Form LlamadaErrorIngreso = new MensajeErrorLogin(); LlamadaErrorIngreso.Show(); // AUMENTO EN 1 -> CONTADOR DE INTENTOS ContadorIntentos++; } // SI CONTADOR INTENTOS ACUMULA 3, ENTONCES... if (ContadorIntentos == 3) { CuentaRegresiva.Start(); // INICIO DE CUENTA REGRESIVA | BLOQUEO DE ACCESO // LLAMADA DE CRONOMETRO CONTROLADO -> VENTANA EMERGENTE Form Bloquear = new BloqueoSesion(); Bloquear.Show(); // BLOQUEO TOTAL DE CONTROLES DE ACCESO txtPassUsuario.Enabled = false; txtUsuarioLogin.Enabled = false; btnIniciarSesion.Enabled = false; } //label7.Text = "Intento: " + ContadorIntentos; //--> EFECTOS DE PRUEBAS } // ERROR DE BASE DE DATOS catch { Llamada.NotificionError(); // NOTIFICACION PERSONALIZADA DE ERROR // LLAMADA MENSAJE ERROR COMUNICACION BASE DE DATOS Form LlamadaErrorDB = new MensajeErrorDB(); LlamadaErrorDB.Show(); } // EN TODOS LOS CASOS, CONEXION SERA CERRADA A ESPERA DE NUEVA PETICION finally { Controlador.CierreConexion(); // CIERRE DE CONEXION } } }