public async Task <IActionResult> Create([Bind("ISBN,Portada,Titulo,Contenido,Descripcion,AutorId,GeneroId,EditorialId")] LibroViewModel l) { if (l.Portada == null) { ModelState.AddModelError("Contenido", "Debe seleccionar un libro para subir"); } if (ModelState.IsValid && !isbnUnico(l.ISBN)) { string stringFileNamePortada = this.UploadFile(l.Portada, "Images"); string stringFileNameContenido = this.UploadFile(l.Contenido, "Libros"); var libro = new Libro { ISBN = l.ISBN, Portada = stringFileNamePortada, Titulo = l.Titulo, Contenido = stringFileNameContenido, Descripcion = l.Descripcion, AutorId = l.AutorId, EditorialId = l.EditorialId, GeneroId = l.GeneroId, EstadoCompleto = true, CantidadComentarios = 0 }; _context.Add(libro); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["AutorId"] = new SelectList(_context.Autores, "Id", "Nombre", l.AutorId); ViewData["EditorialId"] = new SelectList(_context.Editoriales, "Id", "Nombre", l.EditorialId); ViewData["GeneroId"] = new SelectList(_context.Generos, "Id", "Nombre", l.GeneroId); return(View(l)); }
// GET: Libro public ActionResult Listar() { LibroViewModel lvm = new LibroViewModel(); lvm.lista = LibroService.findAll(); return(View(lvm)); }
public IActionResult Create() { UserTokenModel userToken = JsonConvert.DeserializeObject <UserTokenModel>(HttpContext.Session.GetString("userToken")); var lstGeneroModel = servicioLibro.GetGeneros(); List <SelectListItem> lst = new List <SelectListItem>(); foreach (var genero in lstGeneroModel.Result) { lst.Add(new SelectListItem() { Text = genero.Nombre, Value = genero.Id.ToString() }); } LibroViewModel libroViewModel = new LibroViewModel { Libro = new LibroModel(), ListGeneros = lst//(IEnumerable<SelectListItem>)servicioLibro.GetGeneros().Result }; libroViewModel.Libro.UsuarioID = userToken.UsuarioId; return(View(libroViewModel)); }
public ActionResult Save(LibroViewModel model) { ActionResult resultado = null; try { if (model.Libro.CodLibro > -1) // UPDATE { try { lS.update(model.Libro); resultado = RedirectToAction("Index"); } catch (Exception ex) { ViewBag.infoController = MyResources.LibroResources.ErrorEditar + ex.Message; resultado = RedirectToAction("Index"); } } else // CREATE { try { lS.create(model.Libro); resultado = RedirectToAction("Index"); } catch (Exception ex) { ViewBag.ErrorMessage = MyResources.LibroResources.ErrorCrear + ex.Message; resultado = RedirectToAction("Index"); } } } catch (Exception ex) { ViewBag.ErrorMessage = MyResources.LibroResources.ErrorVistaDetalle + ex.Message; resultado = RedirectToAction("Index"); } return(resultado); }
public ActionResult <bool> PutLibro(int id, LibroViewModel libro) { if (id != libro.Id) { return(BadRequest()); } Libro objUpd = _context.Libros.Find(id); if (objUpd != null) { objUpd.Titulo = libro.Titulo; objUpd.Autor = libro.Autor; objUpd.Editorial = _context.Editoriales.Find(libro.EditorialId); objUpd.Costo = libro.Costo; objUpd.PrecioSugerido = libro.PrecioSugerido; objUpd.Fecha = libro.Fecha.ToUniversalTime(); //La fecha se guarda en tiempo universal //para recuperarla en la hora local de donde esté el usuario } else { return(Ok(false)); } try { _context.SaveChanges(); return(Ok(true)); } catch (Exception ex) { throw ex; } }
public ActionResult <bool> PostLibro(LibroViewModel libro) { try { //La fecha se guarda en tiempo universal //para recuperarla en la hora local de donde esté el usuario Libro lib = new Libro() { Titulo = libro.Titulo, Autor = libro.Autor, Editorial = _context.Editoriales.Find(libro.EditorialId), Fecha = libro.Fecha.ToUniversalTime(), Costo = libro.Costo, PrecioSugerido = libro.PrecioSugerido, }; _context.Libros.Add(lib); _context.SaveChanges(); return(true); } catch (Exception ex) { throw ex; } }
public static void add(LibroViewModel lvm) { using (var ctx = new BibliotecaContext()) { ctx.Libros.Add(mapper(lvm)); ctx.SaveChanges(); } }
public static LibroViewModel mapper(Libro l) { LibroViewModel lvm = null; if (l != null) { lvm = new LibroViewModel(l.LibroID, l.titulo, l.autor, l.isbn, l.genero, l.cantEjemplares); } return(lvm); }
public static Libro mapper(LibroViewModel lvm) { Libro l = null; if (lvm != null) { l = new Libro(lvm.LibroId, lvm.titulo, lvm.autor, lvm.isbn, lvm.genero, lvm.cantEjemplares); } return(l); }
//LLEVA A LIBRO public ActionResult Libro(int codLibro) { LibroViewModel lvm = new LibroViewModel(); lvm.libro = lS.getById(codLibro); lvm.ejemplares = eS.getEjemplaresByLibro(codLibro); // return RedirectToRoute("Libro/Libro",lvm); ViewBag.Title = MyResources.LibroResources.ElementoTituloPagina + " - " + lvm.libro.Titulo; return(View("~/Views/Libro/Libro.cshtml", lvm)); }
public ActionResult libro_user(int id) { LibroViewModel lib = null; SessionInitialize(); LibroEN libEN = new LibroCAD(session).ReadOIDDefault(id); lib = new LibroAssembler().ConvertENToModelUI(libEN); SessionClose(); return(View(lib)); }
public async Task <Libro> ToLibroAsync(LibroViewModel model, bool isNew) { return(new Libro { Titulo = model.Titulo, Sinopsis = model.Sinopsis, Paginas = model.Paginas, Id = isNew ? 0 : model.Id, Autor = await _dataContext.Autors.FindAsync(model.AutorId), ImagenLibros = isNew ? new List <ImagenLibro>() : model.ImagenLibros, Editorial = await _dataContext.Editorials.FindAsync(model.EditorialId), }); }
public ActionResult Edit([Bind(Include = "Id, ISBN, Nombre, Categoria, Autor, Unidades, Precio")] LibroViewModel libro) { try { _lrepo.Update(libro); return(RedirectToAction("Index")); } catch { return(View()); } }
// GET: Libro/Edit/5 public ActionResult Edit(int id) { LibroViewModel lib = null; // inicializamos el objeto a NULL SessionInitialize(); LibroEN libEN = new LibroCAD(session).ReadOIDDefault(id); lib = new LibroAssembler().ConvertENToModelUI(libEN); SessionClose(); return(View(lib)); }
public async Task <IActionResult> EditLibro(LibroViewModel model) { if (ModelState.IsValid) { var libro = await _coverterHelper.ToLibroAsync(model, false); _dataContext.Libros.Update(libro); await _dataContext.SaveChangesAsync(); return(RedirectToAction($"Details/{model.AutorId}")); } return(View(model)); }
public ActionResult Edit(LibroViewModel lib) { try { // TODO: Add update logic here LibroCEN libCEN = new LibroCEN(); libCEN.Modify(lib.libroID, lib.nombre, lib.genero, lib.fechapubli, lib.idioma, lib.portada, lib.puntuacion, lib.elacecompra, lib.paginas, lib.precio, lib.compras); return(RedirectToAction("Index")); } catch { return(View()); } }
public async Task <IActionResult> Create(LibroViewModel libroViewModel) { bool result = false; if (ModelState.IsValid) { var libro = HttpContext.Request.Form.Files; string rutaPrincipal = _hostingEnviroment.WebRootPath; string nombreArchivo = Guid.NewGuid().ToString(); string repostorioLibros = Path.Combine(rutaPrincipal, @"Libros"); string extension = Path.GetExtension(libro[0].FileName); using (var fileStreams = new FileStream(Path.Combine(repostorioLibros, nombreArchivo + extension), FileMode.Create)) { libro[0].CopyTo(fileStreams); } libroViewModel.Libro.Ruta = @"\Libros\" + nombreArchivo + extension; result = servicioLibro.InsertarLibro(libroViewModel.Libro); } if (result) { return(RedirectToAction(nameof(Index))); } UserTokenModel userToken = JsonConvert.DeserializeObject <UserTokenModel>(HttpContext.Session.GetString("userToken")); var lstGeneroModel = servicioLibro.GetGeneros(); List <SelectListItem> lst = new List <SelectListItem>(); foreach (var genero in lstGeneroModel.Result) { lst.Add(new SelectListItem() { Text = genero.Nombre, Value = genero.Id.ToString() }); } libroViewModel = new LibroViewModel { Libro = new LibroModel(), ListGeneros = lst//(IEnumerable<SelectListItem>)servicioLibro.GetGeneros().Result }; libroViewModel.Libro.UsuarioID = userToken.UsuarioId; ViewBag.message = "Ha ocurrido un error inesperado y el libro no pudo ser agregado"; return(View(libroViewModel)); }
public async Task <IActionResult> AddLibro(LibroViewModel model) { if (ModelState.IsValid) { var libro = await _coverterHelper.ToLibroAsync(model, true); _dataContext.Libros.Add(libro); await _dataContext.SaveChangesAsync(); return(RedirectToAction($"Details/{model.AutorId}")); } model.Editorials = _combosHelper.GetComboEditorials(); return(View(model)); }
public ActionResult Create(LibroViewModel lib) { try { LibroCEN libCEN = new LibroCEN(); libCEN.PublicarLibro(lib.nombre, lib.genero, lib.fechapubli, lib.portada, lib.idioma, lib.puntuacion, lib.elacecompra, lib.paginas, lib.precio, lib.creador, lib.compras, lib.idautor); return(RedirectToAction("Index")); } catch { return(View()); } }
public ActionResult Delete([Bind(Include = "Id, ISBN, Nombre, Categoria, Autor, Unidades, Precio")] LibroViewModel libro) { try { _lrepo.Delete(libro); return(RedirectToAction("Index")); } catch (Exception ex) { ViewBag.Error = ex.Message; return(View()); } }
public ActionResult Create([Bind(Include = "Id, Unidades, Descripcion, ClienteId, LibroId")] OrdenViewModel orden) { ViewBag.ClienteId = new SelectList(_crepo.GetAll(), "Id", "NombreCompleto"); ViewBag.LibroId = new SelectList(_lrepo.GetAll(), "Id", "NombreYUnidades"); try { if (ModelState.IsValid) { var db = new LibrosContext(); var libro = db.Libros.Find(orden.LibroId); if (orden.Unidades <= libro.Unidades) { var libroModel = new LibroViewModel { Id = libro.Id, ISBN = libro.ISBN, Nombre = libro.Nombre, Categoria = libro.Categoria, Unidades = libro.Unidades - orden.Unidades, Precio = libro.Precio, Autor = libro.Autor, }; _orepo.Create(orden); _lrepo.Update(libroModel); return(RedirectToAction("Index")); } else { ViewBag.Error = "Ingresó más unidades de las que habían en el inventario."; return(View(orden)); } } else { return(View(orden)); } } catch { return(View()); } }
public static void update(LibroViewModel lvm) { using (var ctx = new BibliotecaContext()) { Libro l = ctx.Libros.SingleOrDefault(b => b.LibroID == lvm.LibroId); if (l != null) { l.titulo = lvm.titulo; l.autor = lvm.titulo; l.isbn = lvm.isbn; l.genero = lvm.genero; l.cantEjemplares = lvm.cantEjemplares; ctx.SaveChanges(); } } }
private void BtnAgregar_Click(object sender, RoutedEventArgs e) { try { AgregarLibrosView al = new AgregarLibrosView(); LibroViewModel l = new LibroViewModel(); l.Cerrar = al.Close; al.DataContext = l; al.ShowDialog(); ll.Cargar(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public ActionResult Create([Bind(Include = "Id, ISBN, Nombre, Categoria, Autor, Unidades, Precio")] LibroViewModel libro) { try { if (ModelState.IsValid) { _lrepo.Create(libro); return(RedirectToAction("Index")); } else { return(View(libro)); } } catch { return(View()); } }
public ActionResult <LibroViewModel> GetLibro(int id) { LibroViewModel libro = _context.Libros.Select(l => new LibroViewModel { Id = l.Id, Titulo = l.Titulo, Autor = l.Autor, EditorialId = l.Editorial.Id, Fecha = l.FechaLocal, Costo = l.Costo, PrecioSugerido = l.PrecioSugerido, }) .FirstOrDefault(l => l.Id == id); if (libro == null) { return(NotFound()); } return(Ok(libro)); }
private void BtnEditar_Click(object sender, RoutedEventArgs e) { try { EditarLibrosView el = new EditarLibrosView(); libro l = dgvLibros.SelectedItem as libro; if (l == null) //AGREGUÉ LA EXCEPCION PARA QUE APAREZCA UN MENSAJE CUANDO LE DEMOS CLIC EN EL BOTON DE EDITAR SIN HABER SELECCIONADO NIGNUN LIBRO// { throw new ArgumentException("Seleccione el libro que desea editar de la lista"); } LibroViewModel lvm = new LibroViewModel(l); lvm.Cerrar = el.Close; el.DataContext = lvm; el.ShowDialog(); ll.Cargar(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public async Task <IActionResult> Leer(int?id) { if (id == null) { return(NotFound()); } var libro = await _context.Libros .Include(l => l.Autor) .Include(l => l.Editorial) .Include(l => l.Genero) .FirstOrDefaultAsync(m => m.Id == id); if (libro == null) { return(NotFound()); } LibroViewModel L = new LibroViewModel { Id = libro.Id, perfilID = PerfilActual }; if (libro.Contenido == null) { return(RedirectToAction("Prueba", "Capitulo", L)); } var puntuacion = _context .Perfil_Valora_Libros .FirstOrDefault(p => p.LibroId == id && p.PerfilId == PerfilActual); ViewBag.VoyAPuntuar = puntuacion == null; this.AgregarLecturaDePerfil((int)id); return(View(libro)); }
public LibroViewModel ConvertENToModelUI(LibroEN en) //individual { LibroViewModel lib = new LibroViewModel(); lib.libroID = en.LibroID; //de aqui se va al viewmodel y pues saca las cosas que se le pidan con las instrucciones lib.idautor = en.Aut_lib.AutorID; lib.autorname = en.Aut_lib.Nombre; lib.nombre = en.Nombre; lib.genero = en.Genero; lib.fechapubli = (DateTime)en.Fechapubli; lib.idioma = en.Idioma; lib.portada = en.Portada; lib.puntuacion = en.Puntuacion; lib.elacecompra = en.Enlacedecompra; lib.paginas = en.Paginas; lib.precio = en.Precio; lib.compras = en.Compras; lib.creador = en.Creador.UsuarioID; lib.creanombre = en.Creador.Nombre; return(lib); }
public async Task <IActionResult> AddLibro(int?id) { if (id == null) { return(NotFound()); } var autor = await _dataContext.Autors.FindAsync(id); if (autor == null) { return(NotFound()); } var model = new LibroViewModel { AutorId = autor.Id, Editorials = _combosHelper.GetComboEditorials() }; return(View(model)); }
public ActionResult ViewDetails(int codLibro = -1, Boolean editar = false) { LibroViewModel libroModel = new LibroViewModel(); libroModel.libro = lS.getById(codLibro); libroModel.ejemplares = eS.getEjemplaresByLibro(codLibro); if (codLibro > 0 && editar == true) // UPDATE { ViewBag.Title = MyResources.LibroResources.AccionEditar; // DESPLEGABLE ViewBag.AutorList = new SelectList(aS.getAllNoBorrados() as System.Collections.IEnumerable, "CodAutor", "Nombre"); //IList<Autor> autores = aS.getAll(); //List<SelectListItem> DesplegableAutores = new List<SelectListItem>(); //foreach (var autor in autores) { // if (autor.CodAutor == libroModel.Libro.Autor.CodAutor) { // DesplegableAutores.Add(new SelectListItem { Text = autor.Nombre+" "+autor.Apellidos, Value = autor.CodAutor.ToString(), Selected = true }); // } else { // DesplegableAutores.Add(new SelectListItem { Text = autor.Nombre+" "+autor.Apellidos, Value = autor.CodAutor.ToString() }); // } //} //ViewData["autores"] = DesplegableAutores; // FIN DESPLEGABLE } else if (libroModel.Libro != null) { ViewBag.Title = MyResources.LibroResources.ElementoToken + libroModel.Libro.Titulo; } else // CREATE { ViewBag.Title = MyResources.LibroResources.AccionCrear; libroModel.Libro = new Libro(); } return(View("Libro", libroModel)); }