1068,23 → 1068,7 |
if(docenteTurmas.size() == 0) |
{ |
//NAO Há sumários vamos associar todos os docentes a todas as turmas |
if(courseUnit.getTurmas() != null && courseUnit.getTeachers() != null) |
{ |
for(CourseUnitTurma turma: courseUnit.getTurmas()) |
{ |
for(Teacher t : courseUnit.getTeachers()) |
{ |
Tipologia simples = new Tipologia(); |
simples.setMarkWarning(true); |
//simples.setUse(true); |
simples.setCdDocente(""+t.getSigesCode()); |
simples.setCdTurma(turma.getTurma()); |
simples.setCdTipologia(Globals.BACO_TIPOLOGIA_SIMPLES_VIRTUAL_CODE); |
simples.setDsTipologia(Globals.BACO_TIPOLOGIA_SIMPLES_DS); |
merge.add(simples); |
} |
} |
} |
getTipologiasSimplesParaEstesTeachersParaTodasAsTurmas(courseUnit,new HashSet<Teacher>(courseUnit.getTeachers()), merge); |
} |
else |
{ |
1095,10 → 1079,55 |
merge.add(tipologia); |
} |
} |
//NOVO |
//FRAGMENTO PARA OS QUE FALTAM APENAS POR SEGURANÇA JA DEVIAM TER VINDO DO T_DOC_TURMA |
//DO SINC |
//NO LOCAL ONDE AS TIPOLOGIAS SAO INCIALIZADAS NO IMPORT |
//ISTO E MAU PORQUE SE HOUVER TURMAS OS DOCENTES SAO ASSOCIADOS |
//A TODAS E SO DEVERIAM SER ASSOCIADOS AS QUE ESTAO ASSOCAIDOS NO SIGES |
//POR ISSO E QUE ISTO SO SE RESOLVE NO DisciplinaDao durante a Sincronizacao |
//para saber as relacoes TDOC TURMA |
Map<String,Teacher> professoresEsperados = new HashMap<String, Teacher>(); |
for(Teacher t: courseUnit.getTeachers()) |
{ |
professoresEsperados.put(t.getSigesCode() + "", t); |
} |
|
for(CourseUnitImpl.Tipologia tMerge: merge) |
{ |
professoresEsperados.remove(tMerge.getCdDocente()); |
} |
getTipologiasSimplesParaEstesTeachersParaTodasAsTurmas(courseUnit,professoresEsperados.values(), merge); |
//FRAGMENTO EM FALTA PARA INTRODUZIR PROFS SEM SUMARIO |
|
|
|
} |
|
|
return merge; |
} |
|
private void getTipologiasSimplesParaEstesTeachersParaTodasAsTurmas(CourseUnit courseUnit,Collection<Teacher> teachers, ArrayList<Tipologia> merge) { |
if(courseUnit.getTurmas() != null && courseUnit.getTeachers() != null) |
{ |
for(CourseUnitTurma turma: courseUnit.getTurmas()) |
{ |
for(Teacher t : teachers) |
{ |
Tipologia simples = new Tipologia(); |
simples.setMarkWarning(true); |
//simples.setUse(true); |
simples.setCdDocente(""+t.getSigesCode()); |
simples.setCdTurma(turma.getTurma()); |
simples.setCdTipologia(Globals.BACO_TIPOLOGIA_SIMPLES_VIRTUAL_CODE); |
simples.setDsTipologia(Globals.BACO_TIPOLOGIA_SIMPLES_DS); |
merge.add(simples); |
} |
} |
} |
} |
|
/** |
* Cria uma tipologia Simples para cada par Docente-Turma nesta cadeira olhando para |
* todas as tipologias existentes, uma vez que o Baco não guarda associações entre |