/** * Retorna la lista con los grupos a los que se le puede hacer inclusion **/ public LinkedList<Grupo> ObtenerGruposParaInclusion(int pCurso) { try { _objConexionBase = new Inclutec_BDEntities(); var _Grupos = from _sifGrupos in _objConexionBase.SIFGrupoes where _sifGrupos.FK_Curso_idCurso == pCurso select _sifGrupos; LinkedList<Grupo> _sifGrupoLista = new LinkedList<Grupo>(); foreach (SIFGrupo _sifGrupo in _Grupos) { Grupo _grupo = new Grupo(); _grupo.Id_Grupo = _sifGrupo.id_Grupo; _grupo.Num_Cupos = _sifGrupo.num_cupos; _grupo.Num_Cupos_Extra = _sifGrupo.num_cupos_extra; _grupo.Num_Grupo = _sifGrupo.num_grupo; _grupo.Li_Horarios = new LinkedList<Horario>(); //Agrega todos los horarios de ese grupo var _liHorario = from _sitHorarios in _objConexionBase.SITHorarios where _sitHorarios.FK_Grupo_idGrupo == _grupo.Id_Grupo select _sitHorarios; foreach (SITHorario _sitHorario in _liHorario) { Horario _objHorario = new Horario(); _objHorario.Id_Horario = _sitHorario.id_Horario; _objHorario.Txt_Dia = _sitHorario.txt_dia; _objHorario.Txt_Hora_Final = _sitHorario.tim_hora_fin.ToString(); _objHorario.Txt_Hora_Inicio = _sitHorario.tim_hora_inicio.ToString(); _grupo.Li_Horarios.AddLast(_objHorario); } _sifGrupoLista.AddLast(_grupo); } _objConexionBase.Connection.Close(); return _sifGrupoLista; } catch (Exception) { return null; } }
/** * Retorna los grupos especificados en una solicitud de inclusion **/ public LinkedList<Grupo_Por_Solicitud> ObtenerGruposInclusion(Solicitud pSolicitud) { try { _objConexionBase = new Inclutec_BDEntities(); var _liGruposSolicitud = from _sifGruposSolicitud in _objConexionBase.SIFGrupo_Por_Solicitud where _sifGruposSolicitud.FK_Solicitud_idSolicitud == pSolicitud.Id_Solicitud select _sifGruposSolicitud; LinkedList<Grupo_Por_Solicitud> _liGrupos = new LinkedList<Grupo_Por_Solicitud>(); foreach(SIFGrupo_Por_Solicitud _sifGrupoSolicitud in _liGruposSolicitud){ //Obtiene el grupo por solicitud Grupo_Por_Solicitud _gpsGrupo = new Grupo_Por_Solicitud(); _gpsGrupo.Id_Grupo_Por_Solicitud = _sifGrupoSolicitud.id_Grupo_Por_Solicitud; _gpsGrupo.Num_Prioridad = _sifGrupoSolicitud.num_prioridad; //Obtiene el grupo SIFGrupo _sifGrupo = (from _sifGrupos in _objConexionBase.SIFGrupoes where _sifGrupos.id_Grupo == _sifGrupoSolicitud.FK_Grupo_idGrupo select _sifGrupos).First(); Grupo _gGrupo = new Grupo(); _gGrupo.Id_Curso = _sifGrupo.FK_Curso_idCurso; _gGrupo.Id_Grupo = _sifGrupo.id_Grupo; _gGrupo.Num_Cupos = _sifGrupo.num_cupos; _gGrupo.Num_Cupos_Extra = _sifGrupo.num_cupos_extra; _gGrupo.Num_Grupo = _sifGrupo.num_grupo; //Define los horarios para los grupos var _liHorarios = from _sitHorarios in _objConexionBase.SITHorarios where _sitHorarios.FK_Grupo_idGrupo == _gGrupo.Id_Grupo select _sitHorarios; _gGrupo.Li_Horarios = new LinkedList<Horario>(); foreach (SITHorario _sitHorario in _liHorarios) { Horario _hHorario = new Horario(); _hHorario.Id_Horario = _sitHorario.id_Horario; _hHorario.Txt_Dia = _sitHorario.txt_dia; _hHorario.Txt_Hora_Final = _sitHorario.tim_hora_fin.ToString(); _hHorario.Txt_Hora_Inicio = _sitHorario.tim_hora_inicio.ToString(); _gGrupo.Li_Horarios.AddLast(_hHorario); } //Define el grupo de grupo por solicitud _gpsGrupo.Id_Grupo = _gGrupo; //Agrega grupo por solicitud a la lista _liGrupos.AddLast(_gpsGrupo); } _objConexionBase.Connection.Close(); return _liGrupos; } catch (Exception) { return null; } }