public Disciplinas(List <DAO.Professor> professores) { disciplinas = new List <Sorteio.Disciplina>(); foreach (DAO.Professor professor in professores) { foreach (DAO.PreferenciaDisciplinas pref in professor.prefDisciplinas) { bool addDisciplina = true; foreach (Sorteio.Disciplina disciplina in disciplinas) { if (disciplina.disciplina.id == pref.disciplina.id) { disciplina.preferencias.Add(pref); addDisciplina = false; break; } } if (addDisciplina) { Sorteio.Disciplina disciplina = new Sorteio.Disciplina(); disciplina.disciplina = pref.disciplina; disciplina.preferencias = new List <DAO.PreferenciaDisciplinas>(); disciplina.preferencias.Add(pref); disciplinas.Add(disciplina); } } } if (this.disciplinas.Count > 0) { this.probabilidade = (100 / (this.disciplinas.Count)); } }
public Disciplinas(List <DAO.Disciplina> disciplinasPeriodo, List <Sorteio.Disciplina> disciplinasProfessor) { this.probabilidade = (100 / disciplinasPeriodo.Count); disciplinas = new List <Sorteio.Disciplina>(); foreach (DAO.Disciplina disciplina in disciplinasPeriodo) { Sorteio.Disciplina temp = new Sorteio.Disciplina(); temp.disciplina = disciplina; temp.cargaHorariaRestante = disciplina.cargaHorariaSemanal; temp.faixaIni = probabilidade * disciplinas.Count; temp.faixaFim = temp.faixaIni + probabilidade - 1; temp.preferencias = new List <DAO.PreferenciaDisciplinas>(); foreach (Disciplina disciplinaProf in disciplinasProfessor) { if (temp.disciplina.id == disciplinaProf.disciplina.id) { temp.preferencias = disciplinaProf.preferencias; break; } } disciplinas.Add(temp); } }
public Professores(Sorteio.Disciplina disciplina) { professores = new List <DAO.Professor>(); foreach (DAO.PreferenciaDisciplinas pref in disciplina.preferencias) { professores.Add(pref.professor); } }
public Professores(Sorteio.Disciplina disciplina, DAO.Turno turno) { professores = new List <DAO.Professor>(); this.turno = turno; foreach (DAO.PreferenciaDisciplinas pref in disciplina.preferencias) { if (valido(pref)) { professores.Add(pref.professor); } } }