public async Task <IActionResult> Edit(int id, [Bind("ID,AutoresID,EditorialesID,Titulo,Precio,FechaPublicacion")] Libros libros)
        {
            if (id != libros.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(libros);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!LibrosExists(libros.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["AutoresID"]     = new SelectList(_context.Autor, "ID", "ID", libros.AutoresID);
            ViewData["EditorialesID"] = new SelectList(_context.Editorial, "ID", "ID", libros.EditorialesID);
            return(View($"{viewPath}/Edit", libros));
        }
        public IHttpActionResult CrearLibro(LibroVM libro)
        {
            var db = new Models.Test_WEBAPIEntities();

            var libroNuevo = new Libros
            {
                Id           = libro.Id,
                Nombre       = libro.Nombre,
                FechaEdicion = libro.FechaEdicion,
                Edicion      = libro.Edicion,
                EnStock      = libro.EnStock,
                Id_Categoria = libro.Id_Categoria,
            };

            db.Libros.Add(libroNuevo);

            var res = db.SaveChanges();

            if (res > 0)
            {
                return(Ok(libroNuevo));
            }

            return(BadRequest("No se pudo crear el elemento"));
        }
        public List <Book> OrderedBooksByScore()
        {
            // TODO: Aplicar algoritmo de ordenación sobre los libros de la librería
            List <Book> aux = new List <Book>();

            aux.AddRange(Libros);
            Book libroTemporal = new Book();
            int  t             = Libros.Count();

            for (int i = 1; i < t; i++)
            {
                for (int j = t - 1; j >= i; j--)
                {
                    if (aux.ElementAt(j).Puntuacion < aux.ElementAt(j - 1).Puntuacion)
                    {
                        libroTemporal = aux.ElementAt(j);

                        aux.RemoveAt(j);
                        aux.Insert(j, aux.ElementAt(j - 1));

                        aux.RemoveAt(j - 1);
                        aux.Insert(j - 1, libroTemporal);
                    }
                }
            }
            return(aux);
        }
예제 #4
0
        private void Guardarbutton_Click(object sender, EventArgs e)
        {
            if (!Validar())
            {
                MessageBox.Show("llena", "trate de guardar de nuevo",
                                MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                Libros Libro = LLenaClase();
                bool   paso  = false;

                if (LibroIdnumericUpDown.Value == 0)
                {
                    paso = BLL.LibrosBLL.Guardar(Libro);
                }
                else
                {
                    paso = BLL.LibrosBLL.Editar(Libro);
                }

                if (paso)
                {
                    MessageBox.Show("guardado", "acceptado",
                                    MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
        }
예제 #5
0
        public static bool Guardar(Libros nuevo)
        {
            using (var db = new DetalleDb())
            {
                try
                {
                    /*foreach(var g in nuevo.autoresList)
                     * {
                     *   db.Entry(g).State = System.Data.Entity.EntityState.Unchanged;
                     */

                    if (Buscar(nuevo.LibrosId) == null)
                    {
                        db.libros.Add(nuevo);
                        db.SaveChanges();
                        return(true);
                    }
                    else
                    {
                        db.Entry(nuevo).State = System.Data.Entity.EntityState.Unchanged;
                        db.SaveChanges();
                        return(true);
                    }
                }
                catch (Exception)
                {
                    throw;
                }
                return(false);
            }
        }
예제 #6
0
 public Libros InsertarLibro(Libros libro)
 {
     using (var instancia = new LibrosFachada())
     {
         return(instancia.InsertarLibro(libro));
     }
 }
예제 #7
0
        public ActionResult Agregar(string titulo, IEnumerable <int> autores, string ISBN, string sinopsis, int editoriales, int generos)
        {
            AccentureProyectoIntegradorEntities db = new AccentureProyectoIntegradorEntities();

            Libros libro = new Libros();

            if (autores != null)
            {
                foreach (int autorActual in autores)
                {
                    Autores autor = db.Autores.Find(autorActual);
                    libro.Autores.Add(autor);
                }
            }

            libro.Titulo   = titulo;
            libro.Sinopsis = sinopsis;
            libro.ISBN     = ISBN;

            if (editoriales != 1)
            {
                libro.Editoriales = db.Editoriales.Find(editoriales);
            }

            if (generos != 1)
            {
                libro.Generos = db.Generos.Find(generos);
            }

            db.Libros.Add(libro);
            db.SaveChanges();
            //return Content("Libro añadido satisfactoriamente.");
            return(RedirectToAction("Listar"));
        }
예제 #8
0
        public ActionResult Editar(int id)
        {
            AccentureProyectoIntegradorEntities db = new AccentureProyectoIntegradorEntities();
            Libros libro = db.Libros.Find(id);

            return(View(libro));
        }
예제 #9
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,titulo,año,autor,genero,cantidad,portada")] Libros libros)
        {
            if (id != libros.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(libros);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!LibrosExists(libros.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(libros));
        }
예제 #10
0
        public static bool Eliminar(int id)
        {
            bool     paso     = false;
            Contexto contexto = new Contexto();

            try
            {
                Libros libro = contexto.Libro.Find(id);
                if (libro != null)
                {
                    contexto.Libro.Remove(libro);

                    if (contexto.SaveChanges() > 0)
                    {
                        paso = true;
                    }
                }

                contexto.Dispose();
            }
            catch (Exception)
            {
                throw;
            }
            return(paso);
        }
예제 #11
0
 public Libros ActualizarLibro(Libros libro)
 {
     using (var instancia = new LibrosFachada())
     {
         return(instancia.ActualizarLibro(libro));
     }
 }
예제 #12
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            if (txtAutor.Text != "" && txtEditorial.Text != "" && id_autorTextBox.Text != "" && int.Parse(cantidadTextBox.Text) > 0 && añoDateTimePicker != null)
            {
                id_autorTextBox.Text     = id_A;
                id_EditorialTextBox.Text = id_Ed;
                CLibros li    = new CLibros();
                Libros  libro = new Libros();
                librosBindingSource.EndEdit();
                libro = (Libros)librosBindingSource.Current;
                li.guardar(libro);
                librosBindingSource.MoveLast();
                librosBindingSource.AddNew();
                txtAutor.Text     = "";
                txtEditorial.Text = "";
                id_A  = "";
                id_Ed = "";
                frmPrincipal.libros.CargarDatos();

                this.Close();
            }
            else
            {
                MessageBox.Show("Todos los Campos son obligatorios");
            }
        }
예제 #13
0
        public Principal(string cat)
        {
            categoria = cat;
            InitializeComponent();
            //LLENAMOS LA INFORMACION DEL LAS LISTAS DEPENDIENDO DE LAS CATEGORIAS
            if (categoria == "Lenguajes de programacion")
            {
                Lenguajes L1 = new Lenguajes("PYTHON", "Python Software Foudation", ".py, .pyc, .pyd, .pyo, .pyw, .pyz", "1991", "Multiplataforma",
                                             "Multiparadigma: oriendtado a objetos, imperativo, funcional , reflexivo", "3.8.3", "Python Software Foundation License", 47);
                Lenguajes L2 = new Lenguajes("JAVA", "James Gosling y Sun Microsystems", "java,class,jar,jad,jmod", "1996", "Multiplataforma", "Orientado" +
                                             " a objetos, imperativo", "14.01", "GNU GPL/ Java community Process", 38);
                Lenguajes L3 = new Lenguajes("JAVASCRIPT", "xx", ".js", "1995", "xx", "Multiparadigma, programacion funcional, programacion basada en prototipos,\n " +
                                             "imperativo,interpretado (scripting)", "ECMAScript2016", "xx", 15);
                lenguajes.Add(L1);
                lenguajes.Add(L2);
                lenguajes.Add(L3);

                tabPage1.Text = lenguajes[0].nombre;
                tabPage2.Text = lenguajes[1].nombre;
                tabPage3.Text = lenguajes[2].nombre;
            }
            else if (categoria == "Programas de entretenimiento")
            {
                Entretenimiento E1 = new Entretenimiento("GAME OF THRONES", "Juego de tronos", "David Benioff\nD.B.Weiss", "Sean Bean,  Nikolaj Coster - Waldau, Peter Dinklage\n" +
                                                         "Emilia Clarke, Lena Headey,Iain Glen,Kit Harington\nSophie Turner,Maisie Williams,Isaac Hempstead - Wright,Natalie Dormer", "Estados unidos", "8", "73", "La trama de Game of Thrones está basada en la serie" +
                                                         " de novelas Canción de hielo y fuego, y relata \nlas vivencias de un grupo de personajes de distintas casas nobiliarias en el continente ficticio\n Poniente para tener el control del Trono de hierro y gobernar los siete " +
                                                         "reinos que conforman el territorio", 40);
                Entretenimiento E2 = new Entretenimiento("Chernobyl", "Chernóbil", "Craig Mazin", "Jared Harris\nStellan Skarsgård\nEmily Watson", "Estados Unidos\nReino Unido", "1", "5", "La serie gira en torno al desastre " +
                                                         "nuclear de Chernóbil de abril de 1986 y los esfuerzos de limpieza sin precedentes que\nsiguieron.Cuenta con un reparto encabezado por Jared Harris, Stellan Skarsgård y Emily Watson. ", 34);
                Entretenimiento E3 = new Entretenimiento("THE MARVELOUS MRS. MAISEL", "La maravillosa Señora Maisel ", "Rachel Brosnahan", "Michael Zegen\nAlex Borstein\nTony Shalhoub\nMarin Hinkle ",
                                                         " Estados Unidos", "3", "26", "La serie cuenta la historia de un ama de casa en Nueva York que descubre que tiene una habilidad especial para\n la comedia en vivo.El primer episodio se estrenó " +
                                                         "como parte de la temporada de pilotos de primavera de Amazon Studios\n el 17 de marzo de 2017, recibiendo la aclamación de la crítica. ", 26);
                entretenimientos.Add(E1);
                entretenimientos.Add(E2);
                entretenimientos.Add(E3);
                tabPage1.Text = entretenimientos[0].nombre;
                tabPage2.Text = entretenimientos[1].nombre;
                tabPage3.Text = entretenimientos[2].nombre;
            }
            else if (categoria == "Libros")
            {
                Libros Li1 = new Libros("HARRY POTTER", "J. K. Rowling", "Novela", "Literatura fantástica, literatura juvenil, novela de desarrollo \ny literatura infantil yjuvenil", "3407 (ENG)\n3665(ESP)", "Harry Potter, Ron weasley, Hermione Granger\nGinny Weasley, Neville Longbottom, Albus Dumbledore", "Lord Voldemort, Mortífagos",
                                        "La historia comienza con la celebración del mundo mágico. Durante muchos años, había sido\n aterrorizado por el malvado mago Lord Voldemort.La noche del 31 de octubre,\nmató a Lily y James Potter.Sin embargo, cuando intenta matar a " +
                                        "su hijo de 1 año, Harry, la\nmaldición asesina Avada Kedavra se vuelve sobre sí mismo.El cuerpo de Voldemort \nresulta destruido, pero élsobrevive: no está muerto ni vivo.Por su parte, a Harry solo \n" +
                                        "le queda una cicatriz con forma de rayo en la frente que es el único remanente físico de la \nmaldición de Voldemort.Harry es el único sobreviviente de la maldición asesina, y a raíz de la \nmisteriosa derrota de Voldemort, el mundo mágico empieza a" +
                                        "llamarlo como «el niño que\n sobrevivió». ", 44);

                Libros Li2 = new Libros("GOOSEBUMPS", "Robert Lawrence Stine", "Ciencia ficción, literatura infantil y suspenso", "---", "Suspenso, terror, juvenil ", "---", "El protagonista principal de una historia de Pesadillas / Escalofríos, es a menudo situado \nen una ubicación remota o de alguna manera aislada en algunas situaciones",
                                        "La serie consta de un total de 60 libros para España, el último de los cuales(Sangre de monstruo\nIV) se publicó en 1999, mientras que en Hispanoamérica consta de 45 historias.\nEl nombre se tradujo en España como Pesadillas y en Hispanoamérica \ncomo Escalofríos. ", 30);
                Libros Li3 = new Libros("PERRY MASON", "Erle Stanley Gardner", "Novela policiaca", "xx", "xx", "Perry Mason", "xx", "El personaje era un abogado que llegó a aparecer en 80 novelas e historias cortas, la mayoría de\nlas cuales versaban sobre la defensa de un cliente que había sido acusado de asesinato.En general, Perry Mason era capaz" +
                                        "\nde demostrar la inocencia de su cliente mediante la averiguación de la culpabilidad del verdadero\nasesino, otro personaje de la historia.", 26);
                libros.Add(Li1);
                libros.Add(Li2);
                libros.Add(Li3);
                tabPage1.Text = libros[0].nombre;
                tabPage2.Text = libros[1].nombre;
                tabPage3.Text = libros[2].nombre;
            }
        }
 ///<summary>
 ///Este metodo sirve para realizar dos operaciones, para guardar nuevos libros y actualizar libros
 ///ya registrados en la base de datos con un modelo de Libro
 ///</summary>
 private void RegistrarLibros(Libros libroCapturado)
 {
     try
     {
         //Usamos una conexion de la base de datos para lo siguiente
         using (SqlConnection conexiones = CrearConexion())
         {
             //Abrimos la conexion
             conexiones.Open();
             //Generamos una transaccion, para poner cambios a la base de datos
             using (var trans = conexiones.BeginTransaction())
             {
                 try
                 {
                     //Creamos un comando para las siguientes consultas
                     using (var cmd = conexiones.CreateCommand())
                     {
                         //Antes de las consultas, metemos la transaccion dentro del comando
                         cmd.Transaction = trans;
                         //Hacemos una consulta para revisar todos los libros y asegurarnos que el libro que vamos a introducir existe
                         string revisionLibro = string.Format("SELECT COUNT(*) FROM Libros Where Clave_Libro = '{0}'", libroCapturado.Clave_Libro);
                         //Ponemos la consulta para ejecutar
                         cmd.CommandText = revisionLibro;
                         Int32 conteo = Convert.ToInt32(cmd.ExecuteScalar());
                         if (conteo != 0)
                         {
                             //Si existe el libro, solo se actualiza la informacion excepto la clave, que sera el identificador
                             string queryActualizar = string.Format("UPDATE Libros SET Clave_Genero = '{0}', Clave_Pasillo = '{1}', Autor_Libro = '{2}', Titulo_Libro = '{3}', Fecha_Publicacion = '{4}', Estado = '{5}' " +
                                                                    "WHERE Clave_Libro = '{6}'", libroCapturado.Clave_Genero, libroCapturado.Clave_Pasillo, libroCapturado.Autor_Libro, libroCapturado.Titulo_Libro, libroCapturado.Fecha_Publicacion.ToString("yyyy-MM-dd"), libroCapturado.Estado, libroCapturado.Clave_Libro);
                             cmd.CommandText = queryActualizar;
                             cmd.ExecuteNonQuery();
                             //Se hace enterar al usuario que el libro fue actualizado
                             MessageBox.Show("Se ha actualizado los datos del libro");
                         }
                         else
                         {
                             //Si no existe, solo se guardar el nuevo libro en la base de datos
                             string queryRegistrar = string.Format("INSERT INTO Libros (Clave_Genero, Clave_Pasillo, Clave_Libro, Autor_Libro, Titulo_Libro, Fecha_Publicacion, Estado) " +
                                                                   "VALUES ('{0}', '{1}', '{2}', '{3}', '{4}', '{5}', '{6}')", libroCapturado.Clave_Genero, libroCapturado.Clave_Pasillo, libroCapturado.Clave_Libro, libroCapturado.Autor_Libro, libroCapturado.Titulo_Libro, libroCapturado.Fecha_Publicacion.ToString("yyyy-MM-dd"), libroCapturado.Estado);
                             cmd.CommandText = queryRegistrar;
                             cmd.ExecuteNonQuery();
                             //Se hace enterar al usuario que el libro fue insertado en la base de datos
                             MessageBox.Show("Se ha generado un nuevo libro");
                         }
                     }
                     //Al final se cometen los cambios dentro de la base de datos
                     trans.Commit();
                 }
                 catch (Exception ex)
                 {
                     trans.Rollback();
                 }
             }
         }
     }
     catch (Exception ex)
     {
     }
 }
        private void btnAgregar_Click(object sender, EventArgs e)
        {
            Libros lib = dtgLibros.SelectedRows[0].DataBoundItem as Libros;

            Buscar(lib);

            Refrescar_Lista_Libros();
        }
        public ActionResult EliminarLibro(int id)
        {
            Libros libro = db.Libros.Find(id);

            db.Libros.Remove(libro);
            db.SaveChanges();
            return(RedirectToAction("Mostrar"));
        }
예제 #17
0
        public void BuscarTest()
        {
            Libros libro = new Libros();
            int    id    = 1;

            libro = LibroBLL.Buscar(id);
            Assert.IsNotNull(libro);
        }
예제 #18
0
        public Libros UpdateLibro(Libros DatosLibro)
        {
            var itemLibro = _bdBib.Libros.Where(x => x.IdLibro == DatosLibro.IdLibro).FirstOrDefault();

            itemLibro.Nombre = DatosLibro.Nombre;
            _bdBib.SaveChanges();
            return(DatosLibro);
        }
예제 #19
0
 private void LlenaCampo(Libros libros)
 {
     IDnumericUpDown.Value   = libros.Id;
     NombretextBox.Text      = libros.Nombre;
     DescripciontextBox.Text = libros.Descricion;
     SiglatextBox.Text       = libros.Siglas;
     TipotextBox.Text        = libros.Tipo;
 }
예제 #20
0
        public ActionResult DeleteConfirmed(int id)
        {
            Libros libros = db.Libros.Find(id);

            db.Libros.Remove(libros);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
예제 #21
0
 private void frmPrestamos_Load(object sender, EventArgs e)
 {
     dtgDetallePrestamo.AutoGenerateColumns = true;
     cmbSocio.DataSource   = Socios.ObtenerSocios();
     cmbLibro.DataSource   = Libros.ObtenerLibros();
     cmbSocio.SelectedItem = null;
     cmbLibro.SelectedItem = null;
     ActualizarListaPrestamos();
 }
        /// <summary>
        /// Esta accion sirve para capturar el libro y agregarlo a la base de datos
        /// </summary>
        private void Btn2_Click(object sender, RoutedEventArgs e)
        {
            //Se capturan los datos de libro de la interfaz y se ponen en variables
            string tituloLibro = string.Empty;

            tituloLibro = Titulo_Libro.Text;
            string autorLibro = string.Empty;

            autorLibro = Autor_Libro.Text;
            //Aqui se revisa el formato de la fecha de publicacion
            //string fechaPubLibro = string.Empty;
            DateTime revisionFecha = new DateTime();

            if (DateTime.TryParseExact(Fecha_Publicacion.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime resultFecha))
            {
                revisionFecha = resultFecha;
            }
            else
            {
                MessageBox.Show("Error, el formato de la fecha de publicacion es incorrecto.\nEl formato para la fecha es la siguiente 'dd/MM/yyyy'");
                return;
            }
            //
            string generoLibro = string.Empty;

            generoLibro = (string)Clave_Genero.SelectedItem;
            string valorcapturado = generoLibro;

            generoLibro = valorcapturado;
            string pasilloLibro = string.Empty;

            pasilloLibro = Clave_Pasillo.SelectedItem.ToString();
            string codigoLibro = string.Empty;

            codigoLibro = Clave_Libro.Text;
            string claveLibro = string.Empty;

            claveLibro = string.Format("{0}-{1}", generoLibro, codigoLibro);
            string estadoLibro = string.Empty;
            var    listItem    = (ListViewItem)Estado.SelectedItem;

            estadoLibro = (string)listItem.Content;
            //Despues de generar las variables, se colocan en sus respectivos lugares en el modelo de Libro
            Libros libroCapturado = new Libros();

            libroCapturado.Clave_Genero      = generoLibro;
            libroCapturado.Clave_Pasillo     = pasilloLibro;
            libroCapturado.Clave_Libro       = claveLibro;
            libroCapturado.Autor_Libro       = autorLibro;
            libroCapturado.Titulo_Libro      = tituloLibro;
            libroCapturado.Fecha_Publicacion = revisionFecha;
            libroCapturado.Estado            = estadoLibro;
            //Al tener generado un modelo, se aplica el metodo para guardar libros en la base de datos
            RegistrarLibros(libroCapturado);
            //Al finalizar el registro del libro, se reinicia la interfaz
            inicarPresentacion();
        }
예제 #23
0
        public ActionResult Eliminar(int id)
        {
            this.ViewBag.Titulo = "Eliminar Libro";
            Libros libro = this.db.Libros.Find(id);

            this.db.Libros.Remove(libro);
            this.db.SaveChanges();
            return(RedirectToAction("Listar"));
        }
예제 #24
0
 public static int insertar(Libros libros)
 {
     using (var db = new BibliotecaEntities())
     {
         db.Libros.Add(libros);
         db.SaveChanges();
         return(libros.cod_libro);
     }
 }
예제 #25
0
        public ActionResult Eliminar(int id)
        {
            AccentureProyectoIntegradorEntities db = new AccentureProyectoIntegradorEntities();
            Libros libros = db.Libros.Find(id);

            db.Libros.Remove(libros);
            db.SaveChanges();
            return(RedirectToAction("Listar"));
        }
 public ActionResult Edit([Bind(Include = "id,titulo,autor,isbn,fecha_publicacion,numero_ejemplares,id_categoria")] Libros libro)
 {
     if (ModelState.IsValid)
     {
         LibroBLL.Update(libro);
         return(RedirectToAction("Index"));
     }
     return(View(libro));
 }
        private Libros LLenaLibro()
        {
            Libros libro = new Libros();

            libro.LibroId     = Convert.ToInt32(IDNumericoUpDowm.Value);
            libro.Descripcion = DescripcionTextBox.Text;
            libro.Siglas      = SiglasTextBox.Text;
            libro.TipoId      = (int)tipoIdComboBox.SelectedValue;
            return(libro);
        }
예제 #28
0
 private void LlenaCampo(Libros tipo)
 {
     LibroIdnumericUpDown.Value     = tipo.LibroID;
     NobretextBox.Text              = tipo.NombreLibro;
     DescripciontextBox.Text        = tipo.Descripcion;
     ISBNtextBox.Text               = tipo.ISBN;
     CategoriacomboBox.SelectedItem = tipo.CategoriaID;
     EditoracomboBox.SelectedItem   = tipo.EditarialID;
     FechadateTimePicker.Value      = tipo.FechaImpresion;
 }
예제 #29
0
        private void GuardarButton_Click(object sender, EventArgs e)
        {
            Libros libros = LlenaClase();
            bool   Paso   = false;

            if (IDLibronumericUpDown.Value == 0)
            {
                Paso = BLL.LibrosBLL.Guardar(libros);
            }
        }
예제 #30
0
        private void lstLibros_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (lstLibros.SelectedItem != null)
            {
                lstLibros.DisplayMember = "Nombre";
                Libros libro = (Libros)lstLibros.SelectedItem;

                lstAutores.DataSource = Logica_Lib_Aut.SeleccionarTodos(libro.Id);
            }
        }