Ejemplo n.º 1
0
        public ActionResult Create(SerieViewModel model)
        {
            model             = LinkLists(model);
            model.duracionMin = 0;

            try
            {
                // TODO: Add insert logic here
                if (ModelState.IsValid)
                {
                    SerieRepository repository = new SerieRepository(context);
                    Serie           serie      = MapHelper.Map <Serie>(model);
                    var             lstSerie   = repository.Query(s => s.estado != EEstatusMedia.ELIMINADO);
                    foreach (var s in lstSerie)
                    {
                        if (s.nombre.ToLower() == serie.nombre.ToLower())
                        {
                            if (s.fechaLanzamiento == serie.fechaLanzamiento)
                            {
                                ViewBag.Error = 1;
                                return(Create());
                            }
                        }
                    }
                    repository.InsertComplete(serie, model.GenerosSeleccionados, model.PersonasSeleccionadas);

                    context.SaveChanges();
                    return(RedirectToAction("Index"));
                }
                else
                {
                    return(Create());
                }
            }
            catch
            {
                return(Create());
            }
        }
        public ActionResult Create(NuevoSerieViewModel model)
        {
            try
            {
                SerieRepository serieRepository = new SerieRepository(context);

                if (ModelState.IsValid)
                {
                    var serie = MapHelper.Map <Serie>(model);
                    serie.EstadosMedia  = EEstatusMedia.VISIBLE;
                    serie.FechaRegistro = DateTime.Now;
                    serie.DuracionMin   = 0;
                    serieRepository.InsertComplete(serie, model.ActoresSeleccionados, model.GenerosSeleccionados);

                    // Guardar y registrar cambios
                    context.SaveChanges();

                    return(RedirectToAction("Index"));
                }
                else
                {
                    PersonaRepository personaRepository = new PersonaRepository(context);
                    GeneroRepository  generoRepository  = new GeneroRepository(context);

                    var actores = personaRepository.Query(a => a.Status == true);
                    var generos = generoRepository.Query(g => g.Activo == true);
                    model.ActoresDisponibles = MapHelper.Map <ICollection <PersonaViewModel> >(actores);
                    model.GenerosDisponibles = MapHelper.Map <ICollection <GeneroViewModel> >(generos);

                    return(View(model));
                }
            }
            catch (Exception e)
            {
                ModelState.AddModelError("ActoresSeleccionados", e.Message);
                return(View());
            }
        }