use of com.tomasio.projects.trainning.model.MatriculaAluno in project trainning by fernandotomasio.
the class ImportIndicacoesToMatricula method execute.
@Override
public void execute() {
IndicacaoDAO indicacaoDAO = new HibernateIndicacaoDAO();
MatriculaDAO matriculaDAO = new HibernateMatriculaDAO();
PreMatriculaDAO preMatriculaDAO = new HibernatePreMatriculaDAO();
Map<Long, List<IndicacaoAluno>> indicacoesAlunosMap = new HashMap<Long, List<IndicacaoAluno>>();
Map<Long, List<IndicacaoInstrutor>> indicacoesInstrutoresMap = new HashMap<Long, List<IndicacaoInstrutor>>();
int i = 0;
try {
List<Matricula> matriculas = matriculaDAO.findAll();
for (Matricula matricula : matriculas) {
Long turmaId = matricula.getTurma().getId();
System.out.print(++i + " - ");
if (matricula instanceof MatriculaAluno) {
List<IndicacaoAluno> indicacoesAlunos = indicacoesAlunosMap.get(turmaId);
if (indicacoesAlunos == null) {
indicacoesAlunos = indicacaoDAO.findAllAlunos(turmaId);
indicacoesAlunosMap.put(turmaId, indicacoesAlunos);
}
for (IndicacaoAluno indicacaoAluno : indicacoesAlunos) {
if (matricula.getPessoa().getId().equals(indicacaoAluno.getPessoa().getId())) {
matricula.setIndicacao(indicacaoAluno);
matriculaDAO.update(matricula);
}
}
} else {
List<IndicacaoInstrutor> indicacoesInstrutores = indicacoesInstrutoresMap.get(turmaId);
if (indicacoesInstrutores == null) {
indicacoesInstrutores = indicacaoDAO.findAllInstrutores(turmaId);
indicacoesInstrutoresMap.put(turmaId, indicacoesInstrutores);
}
for (IndicacaoInstrutor indicacaoInstrutor : indicacoesInstrutores) {
if (matricula.getPessoa().getId().equals(indicacaoInstrutor.getPessoa().getId())) {
matricula.setIndicacao(indicacaoInstrutor);
matriculaDAO.update(matricula);
}
}
}
System.out.println("");
}
System.out.println(matriculas.size());
} catch (DAOException ex) {
Logger.getLogger(ImportIndicacoesToMatricula.class.getName()).log(Level.SEVERE, null, ex);
}
}
Aggregations