public DataTable obtenerCompras(Usuario usuario) { List<SqlParameter> listaParametros = new List<SqlParameter>(); if (usuario.esAdmin()) { //buscar todas las ventas sin rendir, tal que los users esten inhabilitados y las ventas_sin_Rendir > 10 string commandText = "SELECT * FROM MERCADONEGRO.ComprasSinFacturar"; return BDSQL.obtenerDataTable(commandText, "T"); } else { BDSQL.agregarParametro(listaParametros, "@username", usuario.Username); return BDSQL.obtenerDataTable("MERCADONEGRO.ObtenerComprasSinFacturar", "SP", listaParametros); } }
public static void updateVentasSinRendir(Compra compra) { int idUser = compra.Vendedor; List<SqlParameter> listaParametros = new List<SqlParameter>(); BDSQL.agregarParametro(listaParametros, "@idUser", idUser); string commandText = "UPDATE MERCADONEGRO.Usuarios SET Ventas_Sin_Rendir = Ventas_Sin_Rendir + 1 WHERE ID_USER = @idUser"; BDSQL.ejecutarQuery(commandText, listaParametros, BDSQL.iniciarConexion()); BDSQL.cerrarConexion(); //verifico que haya llegado a las 10 bool puedeComprarLaProxPorVentas = Usuario.verificarCantidadVentasSinRendir(compra.Vendedor); if (!puedeComprarLaProxPorVentas) { //inhabilita al usuario Usuario usuario = new Usuario(); usuario.ID_User = compra.Vendedor; usuario.inhabilitarUsuario(); //updatea todas sus publicaciones a Pausadas Publicacion.pausarPublicaciones(compra.Vendedor); } }
private void Login_Button_Click(object sender, EventArgs e) { if (!Username_TextBox.Text.Equals("") && !Password_TextBox.Text.Equals("")) { string username = Username_TextBox.Text; UTF8Encoding encoderHash = new UTF8Encoding(); SHA256Managed hasher = new SHA256Managed(); byte[] bytesDeHasheo = hasher.ComputeHash(encoderHash.GetBytes(Password_TextBox.Text)); string password = bytesDeHasheoToString(bytesDeHasheo); Usuario usuarioLogin = new Usuario(0, username, password); if (usuarioLogin.obtenerPK()) { if (usuarioLogin.habilitado()) { int pVez = usuarioLogin.primeraVez(); if (pVez == 0) { if (usuarioLogin.verificarContrasenia()) { usuarioLogin.ResetearIntentosFallidos(); if (usuarioLogin.obtenerRoles()) { if (usuarioLogin.Roles.Count() == 1) { this.Hide(); SeleccionFuncionalidades formSeleccionFuncionalidades = new SeleccionFuncionalidades(usuarioLogin, usuarioLogin.Roles[0].ID_Rol, true); formSeleccionFuncionalidades.Show(); } else { this.Hide(); SeleccionRoles formSeleccionRoles = new SeleccionRoles(usuarioLogin); formSeleccionRoles.Show(); } } else { MessageBox.Show("El usuario no tiene roles asignados", "Atención", MessageBoxButtons.OK, MessageBoxIcon.Information); } } else { usuarioLogin.sumarIntentoFallido(); if (usuarioLogin.cantidadIntentosFallidos() == CANTIDAD_MAXIMA_INTENTOS) { usuarioLogin.inhabilitarUsuario(); MessageBox.Show("Usuario inhabilitado.", "Error"); } else { MessageBox.Show("Usuario o contraseña incorrecta, le quedan " + (CANTIDAD_MAXIMA_INTENTOS - usuarioLogin.intentosFallidos()).ToString() + " intentos", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } else { if (pVez == 2) { if (usuarioLogin.verificarContraseniaSinHash(Password_TextBox.Text)) { CambiarPassword formPass = new CambiarPassword(true); formPass.Show(); } else { usuarioLogin.sumarIntentoFallido(); if (usuarioLogin.cantidadIntentosFallidos() == CANTIDAD_MAXIMA_INTENTOS) { usuarioLogin.inhabilitarUsuario(); MessageBox.Show("Usuario inhabilitado.", "Error"); } else { MessageBox.Show("Usuario o contraseña incorrecta, le quedan " + (CANTIDAD_MAXIMA_INTENTOS - usuarioLogin.intentosFallidos()).ToString() + " intentos", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } if (pVez == 1) { CambiarPassword formPass = new CambiarPassword(false); formPass.Show(); } } } else { //viendo la causa de la inhabiltacion int ventasSinRendir = usuarioLogin.cantidadVentasSinRendir(); if (ventasSinRendir >= 10) { MessageBox.Show("Usted se encuentra inhabilitado debido a que llegó a 10 ventas sin haber las comisiones." + "\nVolverá a estar habilitado cuando regularice su situación ", "Error"); } else MessageBox.Show("El usuario se encuentra inhabilitado.", "Error"); } } else { MessageBox.Show("El usuario no existe.", "Error"); } } else { MessageBox.Show("Por favor, ingrese los datos solicitados", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } }
private void generarDataGrid(Usuario usuario) { Facturacion factura = new Facturacion(); this.dgvOperaciones.DataSource = factura.obtenerCompras(usuario); this.dgvOperaciones.Refresh(); }