Skip to content

Commit c463136

Browse files
committed
sdfsdf
1 parent 9ce878d commit c463136

11 files changed

Lines changed: 64 additions & 360 deletions

ConexionBaseDeDatos.cs

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@ internal DataSet ObtenerDatos(bool entradaSiOrdenarPorNuevoPrimero)
2626
SqlDataAdapter adaptador = new SqlDataAdapter(query, conexion);
2727
adaptador.Fill(datos, "Libros");
2828
}
29-
else {
29+
else
30+
{
3031

3132
string query = "SELECT ID, Titulo, Autor, CantidadDisponible FROM Libros";
3233
SqlDataAdapter adaptador = new SqlDataAdapter(query, conexion);
@@ -63,15 +64,17 @@ internal void InsertDatos(string tituloMetodo, string salario, int cantidadDispo
6364

6465
}
6566

66-
internal void UpdateDatos(int cantidadDisponibleMetodo)
67+
internal void UpdateDatos(int cantidadDisponibleMetodo, int idEntrada)
6768
{
6869
try
6970
{
7071
using (SqlConnection conexion = new SqlConnection(detallesConexion))
7172
{
72-
string query = "UPDATE Libros SET CantidadDisponible = @CantidadDisponible";
73+
string query = "UPDATE Libros SET CantidadDisponible = @CantidadDisponible WHERE id = @id";
7374
SqlCommand instruccion = new SqlCommand(query, conexion);
7475
instruccion.Parameters.AddWithValue("@CantidadDisponible", cantidadDisponibleMetodo);
76+
instruccion.Parameters.AddWithValue("@id", idEntrada);
77+
7578
conexion.Open();
7679
instruccion.ExecuteNonQuery();
7780
}
@@ -83,15 +86,14 @@ internal void UpdateDatos(int cantidadDisponibleMetodo)
8386

8487
}
8588

86-
internal void DeleteDatos(string tituloMetodo, string salario, int cantidadDisponibleMetodo)
89+
internal void DeleteDatos(string queryEntrada)
8790
{
8891
try
8992
{
9093
using (SqlConnection conexion = new SqlConnection(detallesConexion))
9194
{
92-
string query = "DELETE FROM Libros WHERE Titulo = @Titulo";
95+
string query = queryEntrada;
9396
SqlCommand instruccion = new SqlCommand(query, conexion);
94-
instruccion.Parameters.AddWithValue("@Titulo", tituloMetodo);
9597
conexion.Open();
9698
instruccion.ExecuteNonQuery();
9799
}

Form1.Designer.cs

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Form1.cs

Lines changed: 48 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
using System.ComponentModel;
44
using System.Data;
55
using System.Data.SqlClient;
6-
using System.Diagnostics.Eventing.Reader;
76
using System.Drawing;
87
using System.Linq;
98
using System.Text;
@@ -13,27 +12,26 @@
1312

1413
namespace Lab_6
1514
{
16-
public partial class FBiblioteca : Form
15+
public partial class fBiblioteca : Form
1716
{
18-
public FBiblioteca()
17+
public fBiblioteca()
1918
{
2019
InitializeComponent();
2120
}
2221

23-
2422
private void btMostrarLibro_Click(object sender, EventArgs e)
2523
{
2624
ConexionBaseDeDatos conexionBaseDeDatos = new ConexionBaseDeDatos();
2725
DataSet datos = conexionBaseDeDatos.ObtenerDatos(false);
2826
dgvLibro.DataSource = datos.Tables["Libros"];
29-
3027
}
3128

3229
private void btEliminarLibro_Click(object sender, EventArgs e)
3330
{
3431
if (dgvLibro.SelectedRows.Count == 0)
3532
{
36-
MessageBox.Show("Seleccione los libros que desea eliminar.");
33+
MessageBox.Show("Seleccione los libros que desea eliminar. Para seleccionar un libro, vaya a la fila que tiene el libro que quiera eliminar, " +
34+
"mire a la celda vacia a la izquierda de la fila, y haga click en esa celda vacia.");
3735
return;
3836
}
3937

@@ -45,7 +43,6 @@ private void btEliminarLibro_Click(object sender, EventArgs e)
4543
return;
4644
}
4745

48-
string connectionString = "your_connection_string_here";
4946
List<int> idsEliminar = new List<int>();
5047

5148
foreach (DataGridViewRow row in dgvLibro.SelectedRows)
@@ -57,28 +54,49 @@ private void btEliminarLibro_Click(object sender, EventArgs e)
5754
string ids = string.Join(",", idsEliminar);
5855
string query = $"DELETE FROM Libros WHERE id IN ({ids})";
5956

60-
using (SqlConnection connection = new SqlConnection(connectionString))
61-
{
62-
SqlCommand command = new SqlCommand(query, connection);
63-
try
64-
{
65-
connection.Open();
66-
int filasEliminadas = command.ExecuteNonQuery();
67-
MessageBox.Show($"{filasEliminadas} libros eliminados.");
68-
69-
// Refrescar el DataGridView
70-
btMostrarLibro_Click(sender, e);
71-
}
72-
catch (Exception ex)
73-
{
74-
MessageBox.Show("Error al eliminar libros: " + ex.Message);
75-
}
76-
}
57+
ConexionBaseDeDatos conexionBaseDeDatos = new ConexionBaseDeDatos();
58+
conexionBaseDeDatos.DeleteDatos(query);
59+
60+
DataSet datos = conexionBaseDeDatos.ObtenerDatos(false);
61+
dgvLibro.DataSource = datos.Tables["Libros"];
62+
63+
7764
}
7865

7966
private void btActualizar_Click(object sender, EventArgs e)
8067
{
81-
68+
if (dgvLibro.SelectedRows.Count != 1)
69+
{
70+
MessageBox.Show("Seleccione un solo libro para actualizar. Para seleccionar un libro, vaya a la fila que tiene el libro que quiera actualizar, " +
71+
"mire a la celda vacia a la izquierda de la fila, y haga click en esa celda vacia.");
72+
return;
73+
}
74+
75+
DataGridViewRow row = dgvLibro.SelectedRows[0];
76+
int id = Convert.ToInt32(row.Cells["id"].Value);
77+
string titulo = row.Cells["Titulo"].Value.ToString();
78+
int cantidadDisponible = Convert.ToInt32(row.Cells["CantidadDisponible"].Value);
79+
80+
// Mostrar un cuadro de diálogo para actualizar la cantidad
81+
string input = Microsoft.VisualBasic.Interaction.InputBox(
82+
$"Actualizar cantidad disponible para '{titulo}':",
83+
"Actualizar cantidad",
84+
cantidadDisponible.ToString());
85+
86+
if (int.TryParse(input, out int nuevaCantidad))
87+
{
88+
89+
ConexionBaseDeDatos conexionBaseDeDatos = new ConexionBaseDeDatos();
90+
conexionBaseDeDatos.UpdateDatos(nuevaCantidad, id);
91+
92+
DataSet datos = conexionBaseDeDatos.ObtenerDatos(false);
93+
dgvLibro.DataSource = datos.Tables["Libros"];
94+
95+
}
96+
else
97+
{
98+
MessageBox.Show("Ingrese un número válido.");
99+
}
82100
}
83101

84102
private void btAgregarLibro_Click(object sender, EventArgs e)
@@ -105,35 +123,12 @@ private void btAgregarLibro_Click(object sender, EventArgs e)
105123
return;
106124
}
107125

108-
string connectionString = "your_connection_string_here";
109-
string query = "INSERT INTO Libros (Titulo, Autor, CantidadDisponible) VALUES (@Titulo, @Autor, @Cantidad)";
110-
111-
using (SqlConnection connection = new SqlConnection(connectionString))
112-
{
113-
SqlCommand command = new SqlCommand(query, connection);
114-
command.Parameters.AddWithValue("@Titulo", titulo);
115-
command.Parameters.AddWithValue("@Autor", autor);
116-
command.Parameters.AddWithValue("@Cantidad", cantidadDisponible);
117-
118-
try
119-
{
120-
connection.Open();
121-
command.ExecuteNonQuery();
122-
MessageBox.Show("Libro agregado correctamente.");
123-
124-
// Refrescar el DataGridView
125-
btMostrarLibro_Click(sender, e);
126-
}
127-
catch (Exception ex)
128-
{
129-
MessageBox.Show("Error al agregar libro: " + ex.Message);
130-
}
131-
}*/
132-
133-
134-
FormAniadirLibro formAniadirLibro = new FormAniadirLibro(this);
135-
formAniadirLibro.Show();
136126

127+
ConexionBaseDeDatos conexionBaseDeDatos = new ConexionBaseDeDatos();
128+
conexionBaseDeDatos.InsertDatos(titulo, autor, cantidadDisponible);
129+
130+
DataSet datos = conexionBaseDeDatos.ObtenerDatos(false);
131+
dgvLibro.DataSource = datos.Tables["Libros"];
137132

138133
}
139134

FormAniadirLibro.Designer.cs

Lines changed: 0 additions & 131 deletions
This file was deleted.

FormAniadirLibro.cs

Lines changed: 0 additions & 39 deletions
This file was deleted.

0 commit comments

Comments
 (0)