public Grupo(String nombreProfesor, Materia materia, int id) { this.Clases = new List<Clase>(); this.NombreProfesor = nombreProfesor; this.Materia = materia; this.Id = id; this.NombreCortoProfesor = profesorShort(); this.Estado = false; }
public static void leerArchivo(Excel.Worksheet hoja, Carrera carrera, int semestre) { Excel.Range range = hoja.UsedRange; int totalFilas = range.Rows.Count; var startCell = (Range)hoja.Cells[1, 1]; var endCell = (Range)hoja.Cells[totalFilas, 4]; var toGetRange = hoja.Range[startCell, endCell]; object[,] data = toGetRange.Value2; int filaActual = 1; while (filaActual <= totalFilas) { if (data[filaActual, 1] != null) { string nombre = (string)data[filaActual, 1]; int creditos = 0; string strCod = (string)data[filaActual, 3]; if ((nombre != null) && (strCod != null)) { int codigo = Convert.ToInt32(strCod); Materia m = new Materia(nombre, creditos, codigo); int grupoActual = 0; Grupo g = null; do { string cadena = (string)data[filaActual, 2]; if (cadena != null) { string[] cadenas = cadena.Split(' '); int numGrupo = Convert.ToInt32(cadenas[0]); if (grupoActual != numGrupo) { grupoActual = numGrupo; string nombreProfesor = ""; for (int j = 1; j < cadenas.Length; j++) nombreProfesor += cadenas[j] + " "; nombreProfesor = nombreProfesor.TrimEnd(); g = new Grupo(nombreProfesor, m, grupoActual); m.Add(g); } do { string[] clase = ((string)data[filaActual, 4]).Split(' '); string salon = clase[3]; int horaInicioInt = Convert.ToInt32(clase[1].Replace(":", "")); int horaFinInt = Convert.ToInt32(clase[2].Replace(":", "")); bool contiene = false; for (int i = 0; i < g.Clases.Count && !contiene; i++) { Clase ca = g.Clases[i]; contiene = (ca.HoraInicio == horaInicioInt && ca.HoraFin == horaFinInt && ca.NumeroDia == Clase.GetDiaSubStringToInt(clase[0])); } if (!contiene) g.Add(new Clase(Clase.GetDiaSubStringToInt(clase[0]), horaInicioInt, horaFinInt, salon)); filaActual++; } while (filaActual <= totalFilas && (data[filaActual, 2] == null || ((string)data[filaActual, 2]) == "") && data[filaActual, 4] != null); filaActual--; } filaActual++; } while (filaActual <= totalFilas && data[filaActual, 1] == null && data[filaActual, 4] != null); filaActual--; carrera.Semestres[semestre - 1].Materias.Add(m); } } filaActual++; } }
public void refrescarGrupos(Materia materia) { treeGrupo.Nodes.Clear(); foreach (Grupo g in materia.Grupos) { treeGrupo.Nodes.Add(g.ToString()); treeGrupo.Nodes[treeGrupo.GetNodeCount(false) - 1].Tag = g; treeGrupo.Nodes[treeGrupo.GetNodeCount(false) - 1].Checked = g.Estado; } treeGrupo.Refresh(); }
public void cambiarEstadoGrupos(Materia m) { foreach (Grupo g in m.Grupos) { g.Estado = m.Estado; if (g.Estado) Grupos.Add(g); else Grupos.Remove(g); } }
public void eliminarMateria(Materia m) { Materias.Remove(m); Grupos.RemoveAll(g => g.Materia.Nombre == m.Nombre); }
public static void leerArchivo(Excel.Worksheet hoja, Carrera carrera, int semestre) { Excel.Range range = hoja.UsedRange; int totalFilas = range.Rows.Count; var startCell = (Range)hoja.Cells[1, 1]; var endCell = (Range)hoja.Cells[totalFilas, 4]; var toGetRange = hoja.Range[startCell, endCell]; object[,] data = toGetRange.Value2; int filaActual = 1; while (filaActual <= totalFilas) { if (data[filaActual, 1] != null) { string nombre = (string)data[filaActual, 1]; int creditos = 0; string strCod = (string)data[filaActual, 3]; if ((nombre != null) && (strCod != null)) { int codigo = Convert.ToInt32(strCod); Materia m = new Materia(nombre, creditos, codigo); int grupoActual = 0; Grupo g = null; do { string cadena = (string)data[filaActual, 2]; if (cadena != null) { string[] cadenas = cadena.Split(' '); int numGrupo = Convert.ToInt32(cadenas[0]); if (grupoActual != numGrupo) { grupoActual = numGrupo; string nombreProfesor = ""; for (int j = 1; j < cadenas.Length; j++) { nombreProfesor += cadenas[j] + " "; } nombreProfesor = nombreProfesor.TrimEnd(); g = new Grupo(nombreProfesor, m, grupoActual); m.Add(g); } do { string[] clase = ((string)data[filaActual, 4]).Split(' '); string salon = clase[3]; int horaInicioInt = Convert.ToInt32(clase[1].Replace(":", "")); int horaFinInt = Convert.ToInt32(clase[2].Replace(":", "")); bool contiene = false; for (int i = 0; i < g.Clases.Count && !contiene; i++) { Clase ca = g.Clases[i]; contiene = (ca.HoraInicio == horaInicioInt && ca.HoraFin == horaFinInt && ca.NumeroDia == Clase.GetDiaSubStringToInt(clase[0])); } if (!contiene) { g.Add(new Clase(Clase.GetDiaSubStringToInt(clase[0]), horaInicioInt, horaFinInt, salon)); } filaActual++; } while (filaActual <= totalFilas && (data[filaActual, 2] == null || ((string)data[filaActual, 2]) == "") && data[filaActual, 4] != null); filaActual--; } filaActual++; } while (filaActual <= totalFilas && data[filaActual, 1] == null && data[filaActual, 4] != null); filaActual--; carrera.Semestres[semestre - 1].Materias.Add(m); } } filaActual++; } }