Exemplo n.º 1
0
 public ActionResult CalendarioImportar(int grupoID)
 {
     ImportarCalendarioGrupoVM calendario = new ImportarCalendarioGrupoVM();
     calendario.grupoDest = grupoID;
     var grupos = db.Grupoes.Where(d => d.Diplomado.grupos.Any(z => z.ID == grupoID)).Select(x => new { x.ID, x.nombre}).ToList();
     ViewBag.grupoSrc = grupoID;
     ViewBag.GrupoID = new SelectList(grupos, "ID", "nombre");
     return View(calendario);
 }
Exemplo n.º 2
0
        public async Task<ActionResult> CalendarioImportar(ImportarCalendarioGrupoVM calendarioVm)
        {

            int grupoDest = calendarioVm.grupoDest;
            int calendarioId = calendarioVm.calendarioId;
            if (grupoDest == 0 || calendarioId == 0)
            {
                ModelState.AddModelError("Error", "Seleccione el grupo o el calendario!");
                return View();
            }
            else {
                Grupo grupo = await db.Grupoes.FindAsync(grupoDest);
                Calendario calendario = await db.Calendarios.FindAsync(calendarioId);
                if (grupo != null)
                {
                    List<Evento> eventos = new List<Evento>();
                    eventos = calendario.eventos.ToList();
                    Calendario calendarioNew = new Calendario();
                    calendarioNew.eventos = new List<Evento>();
                    foreach (var evento in eventos) {
                        calendario.eventos.Add(new Evento {Chofer = evento.Chofer, ChoferID = evento.ChoferID,duracion = evento.duracion, Facilitador = evento.Facilitador,
                                                            FacilitadorID = evento.FacilitadorID, fechaFin = evento.fechaFin, fechaIncicio = evento.fechaIncicio,
                                                            orden = evento.orden, TallerID = evento.TallerID, Taller = evento.Taller,  
                                                            isDomingo= evento.isDomingo, isJueves = evento.isJueves, isLunes = evento.isLunes, isMartes = evento.isMartes, isMiercoles = evento.isMiercoles, isSabado = evento.isSabado, isViernes = evento.isViernes,
                                                            });
                    }

                    calendarioNew.eventos = new List<Evento>();
                    calendarioNew.eventos = eventos;
                    calendarioNew.fechaInicio = eventos.Select(x => new { x.fechaIncicio }).Min(f => f.fechaIncicio);
                    calendarioNew.fechaFin = eventos.Select(x => new { x.fechaIncicio }).Max(f => f.fechaIncicio);
                    calendarioNew.GrupoID = grupoDest;
                    calendarioNew.nombre = calendario.nombre;
                    db.Calendarios.Add(calendarioNew);
                    await db.SaveChangesAsync();
                    return RedirectToAction("Details", "Grupo", new { id = grupoDest, diplomadoID = grupo.DiplomadoID });
                }                

            }        

            return View();
        }