/// <summary> /// Esta accion, se usa para generar un nuevo prestamo usando el folio de la credencial y la clave del libro /// para crear un nuevo prestamo que se registrara en la base de datos /// </summary> private void Btn1_Click(object sender, RoutedEventArgs e) { //Aqui se captura los valores del Folio y la Clave como variables string folioCredencial = string.Empty; folioCredencial = Folio_Credencial.Text; string claveLibro = string.Empty; claveLibro = Clave_Libro.Text; //Generamos un modelo de Prestamo con las variables LibrosPrestamos prestamoRegistrar = new LibrosPrestamos(); prestamoRegistrar.Folio_Credencial = folioCredencial; prestamoRegistrar.Clave_Libro = claveLibro; //Al tener el modelo, se usa el metodo para agregar un prestamo del libro para la biblioteca RegistrarPrestamos(prestamoRegistrar); //Al finalizar, se actualiza el DataGrid y debe de mostrarse libros que siguen Disponibles iniciarPresentacion(); }
/// <summary> /// Este metodo sirve para registrar nuevos prestamos de libros para usuarios de la biblioteca, usando solamente /// el folio de la credencial y la clave del libro /// </summary> private void RegistrarPrestamos(LibrosPrestamos prestamoCapturado) { SqlConnection conexiones = CrearConexion(); try { conexiones.Open(); string revisionGenero = string.Format("SELECT COUNT(*) FROM LibrosPrestamos Where Folio_Credencial = '{0}' and Clave_Libro = '{1}'", prestamoCapturado.Folio_Credencial, prestamoCapturado.Clave_Libro); SqlCommand comm = new SqlCommand(revisionGenero, conexiones); Int32 conteo = Convert.ToInt32(comm.ExecuteScalar()); if (conteo == 0) { //Para registrar string queryRegistrar = string.Format("INSERT INTO LibrosPrestamos (Folio_Credencial, Clave_Libro) " + "VALUES ('{0}', '{1}')", prestamoCapturado.Folio_Credencial, prestamoCapturado.Clave_Libro); comm.CommandText = queryRegistrar; comm.ExecuteNonQuery(); MessageBox.Show("Se ha registrado un nuevo prestamo"); string queryActualizarEstado = string.Format("UPDATE Libros SET Estado = 'Prestamo' WHERE Clave_Libro = '{0}'", prestamoCapturado.Clave_Libro); comm.CommandText = queryActualizarEstado; comm.ExecuteNonQuery(); MessageBox.Show("Se ha actualizado el estado del libro"); } } catch (SqlException ex) { throw ex; } catch (Exception ex) { throw ex; } finally { conexiones.Close(); } }
/// <summary> /// Este metodo sirve para remover prestamos de libros de los usuarios de la biblioteca, usando solamente /// el folio de la credencial y la clave del libro /// </summary> private void retornarLibros(LibrosPrestamos prestamoCapturado) { SqlConnection conexiones = CrearConexion(); try { conexiones.Open(); string revisionPrestamos = string.Format("SELECT COUNT(*) FROM LibrosPrestamos Where Folio_Credencial = '{0}' and Clave_Libro = '{1}'", prestamoCapturado.Folio_Credencial, prestamoCapturado.Clave_Libro); SqlCommand comm = new SqlCommand(revisionPrestamos, conexiones); Int32 conteo = Convert.ToInt32(comm.ExecuteScalar()); if (conteo != 0) { //Para registrar string queryEliminarPrestamo = string.Format("DELETE FROM LibrosPrestamos WHERE Folio_Credencial = '{0}' AND Clave_Libro = '{1}'", prestamoCapturado.Folio_Credencial, prestamoCapturado.Clave_Libro); comm.CommandText = queryEliminarPrestamo; comm.ExecuteNonQuery(); MessageBox.Show("Se ha terminado el prestamo del libro"); string queryActualizarEstado = string.Format("UPDATE Libros SET Estado = 'Disponible' WHERE Clave_Libro = '{0}'", prestamoCapturado.Clave_Libro); comm.CommandText = queryActualizarEstado; comm.ExecuteNonQuery(); MessageBox.Show("Se ha actualizado el estado del libro"); } } catch (SqlException ex) { throw ex; } catch (Exception ex) { throw ex; } finally { conexiones.Close(); } }