use of com.tomasio.projects.trainning.model.Comando in project trainning by fernandotomasio.
the class AtividadesEnsinoServiceSimpleImpl method updateWorkflowActors.
@Override
@Transactional
public void updateWorkflowActors(Long indicacaoId) throws Exception {
IndicacaoDAO indicacaoDAO = factory.getIndicacaoDAO();
TurmaDAO turmaDAO = factory.getTurmaDAO();
ParecerDAO parecerDAO = factory.getParecerDAO();
Indicacao indicacao = indicacaoDAO.find(indicacaoId);
List<Parecer> pareceres = parecerDAO.findAll(indicacao.getId());
TurmaEfetiva turma = (TurmaEfetiva) turmaDAO.find(indicacao.getTurma().getId());
Organizacao nextActor;
Organizacao lastActor = null;
if (pareceres.size() > 0) {
// pareceres são retornados pelo dao em ordem decrescente
Parecer lastParecer = pareceres.get(0);
lastActor = lastParecer.getOrganizacao();
nextActor = getNextActor(lastParecer.getOrganizacao(), turma);
if (lastParecer instanceof Reprovacao) {
indicacao.setReprovado(true);
} else {
indicacao.setReprovado(false);
}
} else {
// não havendo pareceres
nextActor = getNextActor(indicacao.getOrganizacao(), turma);
/*
verifica se é uma indicação de grande comando para outro grande comando
então o grande comando que indicou ainda precisa aprovar.
*/
if ((indicacao.getOrganizacao() instanceof Comando) && (turma.getOrganizacaoGestoraId().equals(indicacao.getOrganizacao().getId()) == false)) {
nextActor = indicacao.getOrganizacao();
}
indicacao.setReprovado(false);
}
indicacao.setNextWorkflowActor(nextActor);
indicacao.setLastWorkflowActor(lastActor);
indicacaoDAO.update(indicacao);
}
use of com.tomasio.projects.trainning.model.Comando in project trainning by fernandotomasio.
the class OrganizationalServiceSimpleImpl method intantiateOrganizacao.
private Organizacao intantiateOrganizacao(OrganizacaoDTO dto) {
Organizacao organizacao;
if (dto instanceof ExternoDTO) {
ExternoDTO aux = (ExternoDTO) dto;
organizacao = new Externo(aux);
} else if (dto instanceof ComandoDTO) {
ComandoDTO aux = (ComandoDTO) dto;
organizacao = new Comando(aux);
} else {
UnidadeDTO aux = (UnidadeDTO) dto;
organizacao = new Unidade(aux);
}
return organizacao;
}
Aggregations