public ActionResult Agregar(CAT_LIBROS Libro)
        {
            // Verificamo el modelo
            if (!ModelState.IsValid)
            {
                return(View());
            }

            try
            {
                using (var db = new LibrosContext())
                {
                    // Añadimos los datos a la base de datos
                    db.CAT_LIBROS.Add(Libro);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }
            catch (Exception ex)
            {
                // En caso de que el modelo este incorrecto mostrara un fallo
                ModelState.AddModelError("", "Fallo al ingresar libro -" + ex.Message);
                return(View());
            }
        }
 public ActionResult Editar(CAT_LIBROS Libro)
 {
     try
     {
         using (var db = new LibrosContext())
         {
             // Cambiamos los datos que se encuentran en  la base de datos
             CAT_LIBROS Blibro = db.CAT_LIBROS.Find(Libro.isbn);
             Blibro.isbn       = Libro.isbn;
             Blibro.nombre     = Libro.nombre;
             Blibro.autor      = Libro.autor;
             Blibro.editorial  = Libro.editorial;
             Blibro.edicion    = Libro.edicion;
             Blibro.escuela    = Libro.escuela;
             Blibro.unidades   = Libro.unidades;
             Blibro.tematica   = Libro.tematica;
             Blibro.asignatura = Libro.asignatura;
             db.SaveChanges();
             return(RedirectToAction("Index"));
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
示例#3
0
        public void Create(OrdenViewModel model)
        {
            using (var db = new LibrosContext())
            {
                db.Ordenes.Add(new Orden
                {
                    Id          = model.Id,
                    Unidades    = model.Unidades,
                    Descripcion = model.Descripcion,
                    ClienteId   = model.ClienteId,
                    LibroId     = model.LibroId
                });

                db.SaveChanges();
            }
        }
示例#4
0
        public IActionResult ConfirmarCompra()
        {
            Cliente cliente = HttpContext.Session.Get <Cliente>("ClienteLogueado");

            try
            {
                string mailBookshop = "*****@*****.**";
                string pass         = "******";


                Carrito nuevoCarrito = db.Carritos.Include(c => c.Libros).Where(l => l.ClienteID == cliente.Mail).FirstOrDefault();
                var     lista        = nuevoCarrito.Libros.ToList();

                MailMessage mailMessage = new MailMessage();
                mailMessage.From = new MailAddress(mailBookshop);
                mailMessage.To.Add(cliente.Mail);
                mailMessage.Subject = "¡Gracias por tu compra!";
                string cadena1 = "Hola, confirmamos tu compra! El contenido de tu carrito es: ";

                foreach (var item in lista)
                {
                    cadena1.Concat(item.Titulo + "\n");
                }

                mailMessage.Body       = cadena1;
                mailMessage.IsBodyHtml = false;

                SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com", 587);
                SmtpServer.EnableSsl             = true;
                SmtpServer.UseDefaultCredentials = false;
                SmtpServer.Credentials           = new System.Net.NetworkCredential(mailBookshop, pass);

                SmtpServer.Send(mailMessage);

                db.Carritos.Find(cliente.Mail).Libros.Clear();
                db.SaveChanges();
            }catch (Exception e) {
                Console.Out.Write(e);
            }

            ViewBag.Mensaje = $"CONFIRMAMOS TU COMPRA";
            //String productos ="";

            /*var lista2 = db.Carritos.Include(c => c.Libros).Where(l => l.ClienteID == cliente.Mail).FirstOrDefault().Libros.ToList();
             *
             * foreach (Libro item in lista2)
             * {
             *  productos.Concat(item.Titulo);
             * }
             *
             * ViewBag.Mensaje2 = $"Tu compra: {productos}";
             */
            return(View());
        }
示例#5
0
        public void Update(OrdenViewModel model)
        {
            var orden = new Orden
            {
                Id          = model.Id,
                Unidades    = model.Unidades,
                Descripcion = model.Descripcion,
                ClienteId   = model.ClienteId,
                LibroId     = model.LibroId
            };

            using (var db = new LibrosContext())
            {
                db.Ordenes.Attach(orden);
                db.Entry(orden).State = EntityState.Modified;
                db.SaveChanges();
            }
        }
        public void Create(LibroViewModel model)
        {
            using (var db = new LibrosContext())
            {
                db.Libros.Add(new Libro
                {
                    Id        = model.Id,
                    ISBN      = model.ISBN,
                    Nombre    = model.Nombre,
                    Categoria = model.Categoria,
                    Unidades  = model.Unidades,
                    Precio    = model.Precio,
                    Autor     = model.Autor
                });

                db.SaveChanges();
            }
        }
示例#7
0
        public void Create(ClienteViewModel model)
        {
            using (var db = new LibrosContext())
            {
                db.Clientes.Add(new Cliente
                {
                    Id              = model.Id,
                    Nombre          = model.Nombre,
                    Apellido        = model.Apellido,
                    Email           = model.Email,
                    FechaNacimiento = model.FechaNacimiento,
                    Direccion       = model.Direccion,
                    Ciudad          = model.Ciudad,
                    Pais            = model.Pais
                });

                db.SaveChanges();
            }
        }
        // Eliminar Libros Dañados

        public ActionResult EliminarDañados(int id)
        {
            try
            {
                // Metodo para eliminar un libro que se encuentre dañado en la base de datos
                using (var db = new LibrosContext())
                {
                    CAT_LIBROS_DAÑADOS Blibro = db.CAT_LIBROS_DAÑADOS.Find(id);
                    db.CAT_LIBROS_DAÑADOS.Remove(Blibro);
                    db.SaveChanges();
                    return(RedirectToAction("IndexDañados"));
                }
            }

            catch (Exception)
            {
                throw;
            }
        }
        // Eliminar libros
        public ActionResult Eliminar(int id)
        {
            try
            {
                // El metodo busca atravez del isbn el libro y procede a removerlo de la base de datos
                using (var db = new LibrosContext())
                {
                    CAT_LIBROS Blibro = db.CAT_LIBROS.Find(id);
                    db.CAT_LIBROS.Remove(Blibro);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }

            catch (Exception)
            {
                throw;
            }
        }
        public void Update(LibroViewModel model)
        {
            var libro = new Libro
            {
                Id        = model.Id,
                ISBN      = model.ISBN,
                Nombre    = model.Nombre,
                Categoria = model.Categoria,
                Unidades  = model.Unidades,
                Precio    = model.Precio,
                Autor     = model.Autor
            };

            using (var db = new LibrosContext())
            {
                db.Libros.Attach(libro);
                db.Entry(libro).State = EntityState.Modified;
                db.SaveChanges();
            }
        }
        // Eliminar  el ticket emitido y volver a la base de datos el libro
        public ActionResult Agregar(CAT_SOLICITUD Libro)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            try
            {
                using (var db = new LibrosContext())
                {
                    db.CAT_SOLICITUD.Add(Libro);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }
            catch (Exception)
            {
                return(View());
            }
        }
示例#12
0
        public void Delete(ClienteViewModel model)
        {
            var cliente = new Cliente
            {
                Id              = model.Id,
                Nombre          = model.Nombre,
                Apellido        = model.Apellido,
                Email           = model.Email,
                FechaNacimiento = model.FechaNacimiento,
                Direccion       = model.Direccion,
                Ciudad          = model.Ciudad,
                Pais            = model.Pais
            };

            using (var db = new LibrosContext())
            {
                db.Clientes.Attach(cliente);
                db.Entry(cliente).State = EntityState.Deleted;
                db.SaveChanges();
            }
        }
示例#13
0
        public ActionResult AgregarDañados(CAT_LIBROS_DAÑADOS Libro)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            try
            {
                using (var db = new LibrosContext())
                {
                    db.CAT_LIBROS_DAÑADOS.Add(Libro);

                    db.SaveChanges();
                    return(RedirectToAction("IndexDañados"));
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", "Fallo al reportar libro dañado - " + ex.Message);
                return(View());
            }
        }
        // Eliminar  los tickets emitidos
        public ActionResult Eliminar(int id)
        {
            try
            {
                using (var db = new LibrosContext())
                {
                    CAT_SOLICITUD Blibro = db.CAT_SOLICITUD.Find(id);
                    // Programacion correspondiente para crear un pdf
                    Document pdfDoc = new Document(PageSize.LETTER, 0, 0, 0, 0);

                    PdfWriter.GetInstance(pdfDoc, System.Web.HttpContext.Current.Response.OutputStream);

                    pdfDoc.Open();



                    //imagen

                    string path = Server.MapPath("/images/ulacit.png");
                    Image  logo = Image.GetInstance(path);
                    logo.SetAbsolutePosition(210f, 150f);
                    logo.ScaleAbsolute(204f, 53f);
                    pdfDoc.Add(logo);

                    // texto

                    pdfDoc.Add(new Paragraph("                                                                 ---------------Ticker Entrega--------------"));
                    pdfDoc.Add(new Paragraph("                                    "));
                    pdfDoc.Add(new Paragraph("                                     "));
                    pdfDoc.Add(new Paragraph("                                                                 ...............Datos del Entegador..............."));
                    pdfDoc.Add(new Paragraph("                                    "));
                    pdfDoc.Add(new Paragraph("                                     "));
                    pdfDoc.Add(new Paragraph("                                                          Nombre:                              " + (Blibro.nombre)));
                    pdfDoc.Add(new Paragraph("                                                          Apellidos:                           " + (Blibro.apellido1 + " " + Blibro.apellido2)));
                    pdfDoc.Add(new Paragraph("                                                          Cedula:                              " + (Blibro.cedula)));

                    pdfDoc.Add(new Paragraph("                                     "));
                    pdfDoc.Add(new Paragraph("                                                                  ...............Datos del Libro..............."));
                    pdfDoc.Add(new Paragraph("                                    "));
                    pdfDoc.Add(new Paragraph("                                     "));
                    pdfDoc.Add(new Paragraph("                                                          Nombre de Libro:                          " + (Blibro.nombrelibro)));
                    pdfDoc.Add(new Paragraph("                                                          ISBN del Libro:                             " + (Blibro.iscb)));

                    pdfDoc.Add(new Paragraph("                                    "));
                    pdfDoc.Add(new Paragraph("                                     "));
                    pdfDoc.Add(new Paragraph("                                                                  .................Datos del Prestamo................."));
                    pdfDoc.Add(new Paragraph("                                    "));
                    pdfDoc.Add(new Paragraph("                                     "));
                    pdfDoc.Add(new Paragraph("                                                        Fecha de Entrega:                   " + Blibro.fechaentrega.ToString()));
                    pdfDoc.Add(new Paragraph("                                                        Fecha de Solicitud:                  " + (Blibro.fechasoli.ToString())));                   pdfDoc.Add(new Paragraph("                                     "));
                    pdfDoc.Add(new Paragraph("                                     "));
                    pdfDoc.Add(new Paragraph("                                                                                  Biblioteca Ulacit         "));
                    pdfDoc.Add(new Paragraph("                                                                            ___________________         "));

                    pdfDoc.Close();

                    Response.ContentType = "application/pdf";

                    Response.AddHeader("content-disposition", "attatchment; filename=Reporte.pdf");
                    System.Web.HttpContext.Current.Response.Write(pdfDoc);
                    Response.Flush();
                    Response.End();
                    db.CAT_SOLICITUD.Remove(Blibro);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }

            catch (Exception)
            {
                throw;
            }
        }
示例#15
0
        public ActionResult Retirar(CAT_LIBROS Libro)
        {
            try
            {
                using (var db = new LibrosContext())
                {
                    CAT_LIBROS Blibro = db.CAT_LIBROS.Find(Libro.isbn);
                    Blibro.cedula      = Libro.cedula;
                    Blibro.name        = Libro.name;
                    Blibro.apellido1   = Libro.apellido1;
                    Blibro.apellido2   = Libro.apellido2;
                    Blibro.telefono    = Libro.telefono;
                    Blibro.fecha_solic = DateTime.Now;
                    Blibro.fecha_ent   = Libro.fecha_ent;
                    Blibro.isbn        = Libro.isbn;
                    Blibro.nombre      = Libro.nombre;

                    // Lógica para retirar libros que tengan más de una unidad

                    if (Libro.cantidad > 0)
                    {
                        if (Blibro.unidades > 1)
                        {
                            if (Blibro.unidades <= Libro.cantidad)
                            {
                                ModelState.AddModelError("", "No hay suficientes unidades de este libro");
                                return(View());
                            }
                            else
                            {
                                Blibro.unidades = Blibro.unidades - Libro.cantidad;
                            }
                        }
                        else
                        {
                            ModelState.AddModelError("", "No hay suficientes unidades de este libro");
                            return(View());
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("", "Digite un número mayor a 0");
                        return(View());
                    }



                    db.SaveChanges();
                }
            }
            catch (Exception)
            {
                throw;
            }

            // Programacion correspondiente para crear un pdf
            Document pdfDoc = new Document(PageSize.LETTER, 0, 0, 0, 0);

            PdfWriter.GetInstance(pdfDoc, System.Web.HttpContext.Current.Response.OutputStream);

            pdfDoc.Open();



            //imagen

            string path = Server.MapPath("/images/ulacit.png");
            Image  logo = Image.GetInstance(path);

            logo.SetAbsolutePosition(210f, 150f);
            logo.ScaleAbsolute(204f, 53f);
            pdfDoc.Add(logo);

            // texto

            pdfDoc.Add(new Paragraph("                                                                 ---------------Ticker Solicitar--------------"));
            pdfDoc.Add(new Paragraph("                                    "));
            pdfDoc.Add(new Paragraph("                                     "));
            pdfDoc.Add(new Paragraph("                                                                 ...............Datos del Solicitante..............."));
            pdfDoc.Add(new Paragraph("                                    "));
            pdfDoc.Add(new Paragraph("                                     "));
            pdfDoc.Add(new Paragraph("                                                          Nombre:                              " + (Libro.name)));
            pdfDoc.Add(new Paragraph("                                                          Apellidos:                           " + (Libro.apellido1 + " " + Libro.apellido2)));
            pdfDoc.Add(new Paragraph("                                                          Cedula:                              " + (Libro.cedula)));
            pdfDoc.Add(new Paragraph("                                                          Telefono:                            " + (Libro.telefono)));
            pdfDoc.Add(new Paragraph("                                    "));
            pdfDoc.Add(new Paragraph("                                     "));
            pdfDoc.Add(new Paragraph("                                                                  ...............Datos del Libro..............."));
            pdfDoc.Add(new Paragraph("                                    "));
            pdfDoc.Add(new Paragraph("                                     "));
            pdfDoc.Add(new Paragraph("                                                          Nombre de Libro:                          " + (Libro.nombre)));
            pdfDoc.Add(new Paragraph("                                                          ISBN del Libro:                             " + (Libro.isbn)));
            pdfDoc.Add(new Paragraph("                                                          Cantidad de Libros Solicitados:    " + (Libro.cantidad)));

            pdfDoc.Add(new Paragraph("                                    "));
            pdfDoc.Add(new Paragraph("                                     "));
            pdfDoc.Add(new Paragraph("                                                                  .................Datos del Prestamo................."));
            pdfDoc.Add(new Paragraph("                                    "));
            pdfDoc.Add(new Paragraph("                                     "));
            pdfDoc.Add(new Paragraph("                                                        Fecha de Entrega:                   " + (Libro.fecha_ent.ToString())));
            pdfDoc.Add(new Paragraph("                                                        Fecha de Solicitud:                  " + (Libro.fecha_solic.ToString())));
            pdfDoc.Add(new Paragraph("                                     "));
            pdfDoc.Add(new Paragraph("                                     "));
            pdfDoc.Add(new Paragraph("                                                                                  Biblioteca Ulacit         "));
            pdfDoc.Add(new Paragraph("                                                                            ___________________         "));

            pdfDoc.Close();

            Response.ContentType = "application/pdf";

            Response.AddHeader("content-disposition", "attatchment; filename=Reporte.pdf");
            System.Web.HttpContext.Current.Response.Write(pdfDoc);
            Response.Flush();
            Response.End();

            return(RedirectToAction("~/Views/Libros/Index.cshtml"));
        }