Пример #1
0
        public ActionResult CrearGrupoIndependiente(FormCollection formCollection)
        {
            if (!PermitirAcceso())
                return RedirigirFaltaAcceso();

            var ValidationLogic = new ValidationLogic();
            var NombreTrabajo = formCollection["NombreTrabajoIndependiente"];
            var ActualAlumnoId = Session.Get(GlobalKey.UsuarioId).ToString();
            var ActualPeriodoId = Session.Get(GlobalKey.ActualPeriodoId).ToString();

            if (!ValidationLogic.Valid(NombreTrabajo, ValidationOption.IsNotEmpty))
            {
                PostMessage("El nombre del trabajo independiente es invalido. No se puede continuar.", MessageType.Error);
                return RedirectToAction("MostrarTrabajosIndependientes");
            }

            try
            {
                using (TransactionScope scope = new TransactionScope())
                {
                    var Trabajo = new TrabajosBE()
                    {
                        CursoId = 0,
                        EsGrupal = true,
                        FechaFin = null,
                        FechaInicio = null,
                        Iniciativa = "EST",
                        Instrucciones = "",
                        Nombre = NombreTrabajo,
                        PeriodoId = ActualPeriodoId,
                    };

                    ePortafolioRepositoryFactory.GetTrabajosRepository().InsertIdentity(Trabajo, true);

                    var Grupo = new GruposBE()
                    {
                        LiderId = ActualAlumnoId,
                        Nota = "NE",
                        SeccionId = "GEN",
                        TrabajoId = Trabajo.TrabajoId,
                        NombreTrabajo = NombreTrabajo,
                        EvaluacionId = null
                    };

                    ePortafolioRepositoryFactory.GetGruposRepository().InsertIdentity(Grupo, true);

                    var AlumnoGrupo = new AlumnosGrupoBE()
                    {
                        AlumnoId = ActualAlumnoId,
                        GrupoId = Grupo.GrupoId,
                        Nota = "NE",
                        EvaluacionId = null
                    };

                    ePortafolioRepositoryFactory.GetAlumnosGrupoRepository().Insert(AlumnoGrupo);

                    ePortafolioRepositoryFactory.SubmitChanges(true);

                    scope.Complete();

                    PostMessage("El trabajo se ha creado exitosamente.", MessageType.Success);
                }

            }
            catch (Exception ex)
            {
                PostMessage("Ha ocurrido un error.", MessageType.Error);
            }

            return RedirectToAction("MostrarTrabajosIndependientes");
        }
Пример #2
0
        public ActionResult CrearGrupo(String NombreTrabajo, int TrabajoId)
        {
            if (!PermitirAcceso())
                return RedirigirFaltaAcceso();

            var ActualAlumnoId = Session.Get(GlobalKey.UsuarioId).ToString();
            var ActualPeriodoId = Session.Get(GlobalKey.ActualPeriodoId).ToString();
            var Grupo = ePortafolioRepositoryFactory.GetGruposRepository().GetGrupoTrabajo(TrabajoId, ActualAlumnoId);
            var Trabajo = ePortafolioRepositoryFactory.GetTrabajosRepository().GetOne(TrabajoId);

            if (Grupo != null)
                PostMessage("Ya tiene un grupo para este trabajo.", MessageType.Error);
            else
            {
                try
                {
                    var AlumnoCurso = SSIARepositoryFactory.GetAlumnosCursoRepository().GetWhere(x => x.AlumnoId == ActualAlumnoId && x.PeriodoId == ActualPeriodoId && x.CursoId == Trabajo.CursoId).FirstOrDefault();

                    using (TransactionScope Scope = new TransactionScope())
                    {
                        Grupo = new GruposBE()
                        {
                            LiderId = ActualAlumnoId,
                            Nota = "NE",
                            EvaluacionId = null,
                            SeccionId = AlumnoCurso != null ? AlumnoCurso.SeccionId : "N/A",
                            TrabajoId = TrabajoId,
                            NombreTrabajo = NombreTrabajo
                        };

                        ePortafolioRepositoryFactory.GetGruposRepository().InsertIdentity(Grupo, true);

                        var AlumnoGrupo = new AlumnosGrupoBE()
                        {
                            AlumnoId = ActualAlumnoId,
                            GrupoId = Grupo.GrupoId,
                            Nota = "NE",
                            EvaluacionId = null
                        };

                        ePortafolioRepositoryFactory.GetAlumnosGrupoRepository().Insert(AlumnoGrupo);
                        ePortafolioRepositoryFactory.SubmitChanges(true);

                        Scope.Complete();
                        PostMessage("El grupo ha sido creado exitosamente.", MessageType.Success);
                    }
                }
                catch (Exception ex)
                {
                    PostMessage("Ha ocurrido un error.", MessageType.Error);
                }
            }
            return RedirectToAction("MostrarDetalleTrabajo", new { TrabajoId = TrabajoId });
        }