コード例 #1
0
ファイル: TrabajoRepository.cs プロジェクト: bbecker88/ePSE
        public List<BETrabajo> GetTrabajosCurso(int CursoId, String PeriodoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var TrabajosCurso = from t in ePortafolioDAO.Trabajos
                                where t.CursoId == CursoId && t.PeriodoId == PeriodoId
                                select RepositoryFactory.GetTrabajoRepository().GetTrabajoNoFK(t.TrabajoId);

            return TrabajosCurso.ToList();
        }
コード例 #2
0
ファイル: AlumnoRepository.cs プロジェクト: bbecker88/ePSE
        public List<BEAlumno> GetAlumnosGrupo(int GrupoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var AlumnosGrupo = from ag in ePortafolioDAO.AlumnosGrupos
                               where ag.GrupoId == GrupoId
                               select RepositoryFactory.GetAlumnoRepository().GetAlumnoNoFK(ag.AlumnoId);

            return AlumnosGrupo.ToList();
        }
コード例 #3
0
ファイル: GrupoRepository.cs プロジェクト: bbecker88/ePSE
        public void DeleteAlumnoGrupo(int GrupoId, String AlumnoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var AlumnoGrupo = ePortafolioDAO.AlumnosGrupos.SingleOrDefault(ag => ag.GrupoId == GrupoId && ag.AlumnoId == AlumnoId);

            if (AlumnoGrupo != null)
            {
                ePortafolioDAO.AlumnosGrupos.DeleteOnSubmit(AlumnoGrupo);
                ePortafolioDAO.SubmitChanges();
            }
        }
コード例 #4
0
ファイル: TrabajoRepository.cs プロジェクト: bbecker88/ePSE
        public List<BETrabajo> GetTrabajosHistoricoAlumno(String AlumnoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Grupos = ePortafolioDAO.Grupos.Where(g => g.AlumnosGrupos.Any(ag => ag.AlumnoId == AlumnoId) && g.ArchivosGrupos.Count > 0);
            var Trabajos = ePortafolioDAO.Trabajos.Where(t => Grupos.Any(g => g.TrabajoId == t.TrabajoId));

            var TrabajosAlumno = from t in Trabajos
                                 select RepositoryFactory.GetTrabajoRepository().GetTrabajoNoFK(t.TrabajoId);

            return TrabajosAlumno.ToList();
        }
コード例 #5
0
ファイル: GrupoRepository.cs プロジェクト: bbecker88/ePSE
        public void DeleteAlumnosGrupo(int GrupoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var AlumnosGrupo = ePortafolioDAO.AlumnosGrupos.Where(ag => ag.GrupoId == GrupoId);

            if (AlumnosGrupo != null)
            {
                ePortafolioDAO.AlumnosGrupos.DeleteAllOnSubmit(AlumnosGrupo);
                ePortafolioDAO.SubmitChanges();
            }
        }
コード例 #6
0
ファイル: GrupoRepository.cs プロジェクト: bbecker88/ePSE
        public void DeleteGrupo(int GrupoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Grupo = ePortafolioDAO.Grupos.SingleOrDefault(g => g.GrupoId == GrupoId);

            if (Grupo != null)
            {
                ePortafolioDAO.Grupos.DeleteOnSubmit(Grupo);
                ePortafolioDAO.SubmitChanges();
            }
        }
コード例 #7
0
ファイル: PeriodoRepository.cs プロジェクト: bbecker88/ePSE
        public List<BEPeriodo> GetPeriodosEstudiados(String AlumnoId)
        {
            ePortafolioDBDataContext ePortafolioDBDataContext = new ePortafolioDBDataContext();

            var PeriodosEstudiadosId = (from ac in ePortafolioDBDataContext.AlumnosGrupos
                                       where ac.AlumnoId == AlumnoId
                                       select ac.Grupo.Trabajo.PeriodoId).Distinct();

            var PeriodosEstudiados = from pe in PeriodosEstudiadosId
                                    select RepositoryFactory.GetPeriodoRepository().GetGetPeriodoNoFK(pe);

            return PeriodosEstudiados.ToList();
        }
コード例 #8
0
        public List<BEResultadoRubrica> GetResultadosRubricaGrupo(int GrupoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var ResultadosRubricaGrupo = from r in ePortafolioDAO.ResultadosRubricaGrupos
                                         where r.GrupoId == GrupoId
                                         select new BEResultadoRubrica
                                            {
                                                CriterioId = r.CriterioId,
                                                GrupoId = r.GrupoId,
                                                RubricaId = r.RubricaId
                                            };

            return ResultadosRubricaGrupo.ToList();
        }
コード例 #9
0
ファイル: RubricaRepository.cs プロジェクト: bbecker88/ePSE
        public BERubrica GetRubrica(int RubricaId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Rubrica = ePortafolioDAO.Rubricas.SingleOrDefault(r => r.RubricaId == RubricaId);

            if (Rubrica != null)
            {
                return new BERubrica
                    {
                        RubricaId = Rubrica.RubricaId,
                        Nombre = Rubrica.Nombre
                    };
            }
            return null;
        }
コード例 #10
0
ファイル: GrupoRepository.cs プロジェクト: bbecker88/ePSE
        public void CreateGrupo(int TrabajoId, String AlumnoLiderId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Grupo = new Grupo();

            BETrabajo Trabajo = RepositoryFactory.GetTrabajoRepository().GetTrabajoNoFK(TrabajoId);
            BESeccion Seccion = RepositoryFactory.GetSeccionRepository().GetSeccionCursoAlumno(AlumnoLiderId,Trabajo.Curso.CursoId,Trabajo.Periodo.PeriodoId);

            Grupo.TrabajoId = TrabajoId;
            Grupo.Nota = "NE";
            Grupo.AlumnosGrupos.Add(new AlumnosGrupo { AlumnoId = AlumnoLiderId, EsLider = true });
            Grupo.SeccionId = Seccion != null ? Seccion.SeccionId : "GEN";

            ePortafolioDAO.Grupos.InsertOnSubmit(Grupo);
            ePortafolioDAO.SubmitChanges();
        }
コード例 #11
0
ファイル: GrupoRepository.cs プロジェクト: bbecker88/ePSE
        public bool AddAlumnoGrupo(int GrupoId, String AlumnoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var AlumnoGrupo = new AlumnosGrupo();
            if ((RepositoryFactory.GetAlumnoRepository().GetAlumno(AlumnoId) != null )&& !(RepositoryFactory.GetAlumnoRepository().GetAlumnosGrupo(GrupoId).Any(x=>x.AlumnoId == AlumnoId)))
            {
                AlumnoGrupo.GrupoId = GrupoId;
                AlumnoGrupo.AlumnoId = AlumnoId;
                AlumnoGrupo.EsLider = false;

                ePortafolioDAO.AlumnosGrupos.InsertOnSubmit(AlumnoGrupo);
                ePortafolioDAO.SubmitChanges();
                return true;
            }

            return false;
        }
コード例 #12
0
ファイル: ArchivoRepository.cs プロジェクト: bbecker88/ePSE
        public void DeleteArchivo(int ArchivoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Archivo = ePortafolioDAO.Archivos.SingleOrDefault(a => a.ArchivoId == ArchivoId);
            var ArchivosGrupo = ePortafolioDAO.ArchivosGrupos.Where(ag => ag.ArchivoId == ArchivoId);

            if (Archivo != null)
            {
                ePortafolioDAO.Archivos.DeleteOnSubmit(Archivo);
            }

            if (ArchivosGrupo != null)
            {
                ePortafolioDAO.ArchivosGrupos.DeleteAllOnSubmit(ArchivosGrupo);
            }

            ePortafolioDAO.SubmitChanges();
        }
コード例 #13
0
ファイル: ArchivoRepository.cs プロジェクト: bbecker88/ePSE
        public void DeleteArchivosGrupo(int GrupoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var ArchivosGrupo = ePortafolioDAO.ArchivosGrupos.Where(ag => ag.GrupoId == GrupoId);
            var Archivos = ePortafolioDAO.Archivos.Where(a => ArchivosGrupo.Any(ag=>ag.ArchivoId == a.ArchivoId));

            if (Archivos != null)
            {
                ePortafolioDAO.Archivos.DeleteAllOnSubmit(Archivos);
            }

            if (ArchivosGrupo != null)
            {
                ePortafolioDAO.ArchivosGrupos.DeleteAllOnSubmit(ArchivosGrupo);
            }

            ePortafolioDAO.SubmitChanges();
        }
コード例 #14
0
ファイル: ArchivoRepository.cs プロジェクト: bbecker88/ePSE
        public BEArchivo GetArchivo(int ArchivoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Archivo = ePortafolioDAO.Archivos.SingleOrDefault(a => a.ArchivoId == ArchivoId);

            if (Archivo != null)
            {
                return new BEArchivo
                {
                    ArchivoId = Archivo.ArchivoId,
                    Nombre = Archivo.Nombre,
                    Ruta = Archivo.Ruta,
                    FechaSubido = Archivo.FechaSubida,
                    Alumno = RepositoryFactory.GetAlumnoRepository().GetAlumno(Archivo.AlumnoId)
                };
            }

            return null;
        }
コード例 #15
0
ファイル: ArchivoRepository.cs プロジェクト: bbecker88/ePSE
        public void AddArchivo(int GrupoId, BEArchivo Archivo)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var ArchivoInsert = new Models.Archivo();

            ArchivoInsert.AlumnoId = Archivo.Alumno.AlumnoId;
            ArchivoInsert.ArchivoId = Archivo.ArchivoId;
            ArchivoInsert.Nombre = Archivo.Nombre;
            ArchivoInsert.Ruta = Archivo.Ruta;
            ArchivoInsert.FechaSubida = Archivo.FechaSubido;

            var ArchivoGrupoInsert = new Models.ArchivosGrupo();

            ArchivoGrupoInsert.GrupoId = GrupoId;
            ArchivoGrupoInsert.Archivo = ArchivoInsert;

            ePortafolioDAO.ArchivosGrupos.InsertOnSubmit(ArchivoGrupoInsert);

            ePortafolioDAO.SubmitChanges();
        }
コード例 #16
0
        public void SaveResultadoRubrica(BEResultadoRubrica ResultadoRubrica)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var OldResultadoRubrica = ePortafolioDAO.ResultadosRubricaGrupos.SingleOrDefault(r => r.GrupoId == ResultadoRubrica.GrupoId && r.RubricaId == ResultadoRubrica.RubricaId);

            if (OldResultadoRubrica == null)
            {
                var ResultadosRubricaGrupo = new ResultadosRubricaGrupo();

                ResultadosRubricaGrupo.CriterioId = ResultadoRubrica.CriterioId;
                ResultadosRubricaGrupo.GrupoId = ResultadoRubrica.GrupoId;
                ResultadosRubricaGrupo.RubricaId = ResultadoRubrica.RubricaId;

                ePortafolioDAO.ResultadosRubricaGrupos.InsertOnSubmit(ResultadosRubricaGrupo);
            }
            else
            {
                OldResultadoRubrica.CriterioId = ResultadoRubrica.CriterioId;
            }

            ePortafolioDAO.SubmitChanges();
        }
コード例 #17
0
ファイル: TrabajoRepository.cs プロジェクト: bbecker88/ePSE
        public BETrabajo GetTrabajoNoFK(int TrabajoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Trabajo = ePortafolioDAO.Trabajos.SingleOrDefault(t => t.TrabajoId == TrabajoId);

            if (Trabajo != null)
            {
                return new BETrabajo
                {
                    Curso = new BECurso { CursoId = Trabajo.CursoId },
                    Periodo = RepositoryFactory.GetPeriodoRepository().GetGetPeriodoNoFK(Trabajo.PeriodoId),
                    EsGrupal = Trabajo.EsGrupal,
                    FechaFin = Trabajo.FechaFin,
                    FechaInicio = Trabajo.FechaInicio,
                    Instrucciones = Trabajo.Instrucciones,
                    Nombre = Trabajo.Nombre,
                    TrabajoId = Trabajo.TrabajoId,
                    Iniciativa = Trabajo.Iniciativa
                };
            }

            return null;
        }
コード例 #18
0
ファイル: CriterioRepository.cs プロジェクト: bbecker88/ePSE
        public BECriterio GetCriterioNoFK(int CriterioId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Criterio = ePortafolioDAO.CriteriosRubricas.SingleOrDefault(c => c.CriterioId == CriterioId);

            if (Criterio != null)
            {
                return new BECriterio
                {
                    CriterioId = Criterio.CriterioId,
                    Nombre = Criterio.Nombre,
                    Valor = Criterio.Valor,
                    Rubrica = new BERubrica { RubricaId = Criterio.RubricaId }
                };
            }

            return null;
        }
コード例 #19
0
ファイル: CriterioRepository.cs プロジェクト: bbecker88/ePSE
        public BECriterio GetCriterio(int CriterioId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Criterio = ePortafolioDAO.CriteriosRubricas.SingleOrDefault(c => c.CriterioId == CriterioId);

            if (Criterio != null)
            {
                return new BECriterio
                {
                    CriterioId = Criterio.CriterioId,
                    Nombre = Criterio.Nombre,
                    Valor = Criterio.Valor,
                    Rubrica = RepositoryFactory.GetRubricaRepository().GetRubrica(Criterio.Rubrica.RubricaId)
                };
            }

            return null;
        }
コード例 #20
0
ファイル: GrupoRepository.cs プロジェクト: bbecker88/ePSE
        public BEGrupo GetGrupoAlumno(int TrabajoId, String AlumnoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var AlumnosGrupo = ePortafolioDAO.AlumnosGrupos.SingleOrDefault(ag => ag.AlumnoId == AlumnoId && ag.Grupo.TrabajoId == TrabajoId);
            var Grupo = AlumnosGrupo != null ? AlumnosGrupo.Grupo : null;
            if (Grupo != null)
            {
                return RepositoryFactory.GetGrupoRepository().GetGrupoNoFK(Grupo.GrupoId);
            }

            return null;
        }
コード例 #21
0
ファイル: GrupoRepository.cs プロジェクト: bbecker88/ePSE
        public List<BEGrupo> GetGruposPendientes(int TrabajoId, String SeccionId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var GruposPendiente = from g in ePortafolioDAO.Grupos
                                  where g.TrabajoId == TrabajoId &&
                                        g.SeccionId == SeccionId &&
                                        g.ArchivosGrupos.Count == 0
                                  select RepositoryFactory.GetGrupoRepository().GetGrupoNoFK(g.GrupoId);

            return GruposPendiente.ToList();
        }
コード例 #22
0
ファイル: TrabajoRepository.cs プロジェクト: bbecker88/ePSE
        public List<BETrabajo> GetTrabajosIndependientes(String AlumnoId, String PeriodoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Grupos = ePortafolioDAO.Grupos.Where(g => g.AlumnosGrupos.Any(ag => ag.AlumnoId == AlumnoId));

            var Trabajos = from g in Grupos
                           where g.Trabajo.PeriodoId == PeriodoId && g.Trabajo.Iniciativa == "EST"
                           select RepositoryFactory.GetTrabajoRepository().GetTrabajoNoFK(g.TrabajoId);

            return Trabajos.ToList();
        }
コード例 #23
0
ファイル: GrupoRepository.cs プロジェクト: bbecker88/ePSE
        public List<BEGrupo> GetGruposTrabajosPendientes(String AlumnoId, String PeriodoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var GruposTrabajosPendientes = from g in ePortafolioDAO.Grupos
                                           where g.Trabajo.PeriodoId == PeriodoId &&
                                           g.AlumnosGrupos.Any(ag => ag.AlumnoId == AlumnoId && ag.GrupoId == g.GrupoId ) &&
                                           !g.ArchivosGrupos.Any(ag => ag.GrupoId == g.GrupoId)
                                           select RepositoryFactory.GetGrupoRepository().GetGrupoNoFK(g.GrupoId);

            return GruposTrabajosPendientes.ToList();
        }
コード例 #24
0
ファイル: GrupoRepository.cs プロジェクト: bbecker88/ePSE
        public void SetLiderGrupo(int GrupoId, String AlumnoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            BEAlumno AlumnoLider = RepositoryFactory.GetAlumnoRepository().GetLiderGrupo(GrupoId);

            var AlumnoGrupoLiderAntiguo = ePortafolioDAO.AlumnosGrupos.SingleOrDefault(ag => ag.GrupoId == GrupoId && ag.AlumnoId == AlumnoLider.AlumnoId);
            var AlumnoGrupoLiderNuevo = ePortafolioDAO.AlumnosGrupos.SingleOrDefault(ag => ag.GrupoId == GrupoId && ag.AlumnoId == AlumnoId);

            if (AlumnoGrupoLiderAntiguo != null)
            {
                AlumnoGrupoLiderAntiguo.EsLider = false;
            }

            if (AlumnoGrupoLiderNuevo != null)
            {
                AlumnoGrupoLiderNuevo.EsLider = true;
            }

            ePortafolioDAO.SubmitChanges();
        }
コード例 #25
0
ファイル: TrabajoRepository.cs プロジェクト: bbecker88/ePSE
        public void SaveTrabajo(BETrabajo Trabajo)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var UpdateTrabajo = ePortafolioDAO.Trabajos.SingleOrDefault(t => t.TrabajoId == Trabajo.TrabajoId);

            if (UpdateTrabajo != null)
            {
                UpdateTrabajo.Instrucciones = Trabajo.Instrucciones;
                UpdateTrabajo.FechaInicio = Trabajo.FechaInicio;
                UpdateTrabajo.FechaFin = Trabajo.FechaFin;
                UpdateTrabajo.EsGrupal = Trabajo.EsGrupal;

                ePortafolioDAO.SubmitChanges();
            }
            else
            {
                var trabajoLinq = new Trabajo();
                trabajoLinq.Iniciativa = Trabajo.Iniciativa;
                trabajoLinq.Instrucciones = Trabajo.Instrucciones;
                trabajoLinq.Nombre = Trabajo.Nombre;
                trabajoLinq.PeriodoId = Trabajo.Periodo.PeriodoId;
                trabajoLinq.EsGrupal = Trabajo.EsGrupal;
                trabajoLinq.FechaFin = Trabajo.FechaFin;
                trabajoLinq.FechaInicio = Trabajo.FechaInicio;
                trabajoLinq.TrabajoId = Trabajo.TrabajoId;
                ePortafolioDAO.Trabajos.InsertOnSubmit(trabajoLinq);

                ePortafolioDAO.SubmitChanges();
                Trabajo.TrabajoId = trabajoLinq.TrabajoId;
            }
        }
コード例 #26
0
ファイル: TrabajoRepository.cs プロジェクト: bbecker88/ePSE
        public List<BETrabajo> GetTrabajosPendientes(String AlumnoId, String PeriodoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Cursos = RepositoryFactory.GetCursoRepository().GetCursosMatriculados(AlumnoId, PeriodoId);

            List<BETrabajo> TrabajosPendientes = new List<BETrabajo>();

            foreach (BECurso Curso in Cursos)
            {
                var Trabajos = ePortafolioDAO.Trabajos.Where(t => t.PeriodoId == PeriodoId && (t.FechaFin == null || t.FechaFin >= DateTime.Today) && t.CursoId == Curso.CursoId).ToList();

                foreach (var Trabajo in Trabajos)
                {
                    if (!ePortafolioDAO.AlumnosGrupos.Any(ag => ag.AlumnoId == AlumnoId && ag.Grupo.TrabajoId == Trabajo.TrabajoId))
                    {
                        TrabajosPendientes.Add(RepositoryFactory.GetTrabajoRepository().GetTrabajo(Trabajo.TrabajoId));
                    }
                }
            }

            TrabajosPendientes = TrabajosPendientes.OrderByDescending(x => x.FechaFin).ToList();
            TrabajosPendientes.Reverse(0, TrabajosPendientes.Count(x => x.FechaFin != null));

            return TrabajosPendientes;
        }
コード例 #27
0
ファイル: GrupoRepository.cs プロジェクト: bbecker88/ePSE
        public BEGrupo GetGrupo(int GrupoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Grupo = ePortafolioDAO.Grupos.SingleOrDefault(g => g.GrupoId == GrupoId);

            if (Grupo != null)
            {
                return new BEGrupo
                    {
                        GrupoId = Grupo.GrupoId,
                        Nota = Grupo.Nota,
                        Seccion = RepositoryFactory.GetSeccionRepository().GetSeccionNoFK(Grupo.SeccionId),
                        Trabajo = RepositoryFactory.GetTrabajoRepository().GetTrabajoNoFK(Grupo.TrabajoId),
                        Lider = RepositoryFactory.GetAlumnoRepository().GetLiderGrupo(Grupo.GrupoId)
                    };
            }
            return null;
        }
コード例 #28
0
ファイル: GrupoRepository.cs プロジェクト: bbecker88/ePSE
        public void SetNotaGrupo(int GrupoId, String Nota)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var Grupo = ePortafolioDAO.Grupos.SingleOrDefault(g => g.GrupoId == GrupoId);

            if (Grupo != null)
            {
                Grupo.Nota = Nota;
                ePortafolioDAO.SubmitChanges();
            }
        }
コード例 #29
0
ファイル: AlumnoRepository.cs プロジェクト: bbecker88/ePSE
        public BEAlumno GetLiderGrupo(int GrupoId)
        {
            ePortafolioDBDataContext ePortafolioDAO = new ePortafolioDBDataContext();

            var LiderAlumnoGrupo = ePortafolioDAO.AlumnosGrupos.SingleOrDefault(ag => ag.GrupoId == GrupoId && ag.EsLider == true);

            if (LiderAlumnoGrupo == null)
                throw new Exception("El grupo no tiene lider");

            return RepositoryFactory.GetAlumnoRepository().GetAlumnoNoFK(LiderAlumnoGrupo.AlumnoId);
        }