use of com.tomasio.projects.trainning.dao.MatriculaDAO in project trainning by fernandotomasio.
the class AtividadesEnsinoServiceSimpleImpl method removeMatricula.
@Override
@Transactional
public void removeMatricula(Long matriculaId) {
MatriculaDAO matriculaDAO = factory.getMatriculaDAO();
IndicacaoDAO indicacaoDAO = factory.getIndicacaoDAO();
TurmaDAO turmaDAO = factory.getTurmaDAO();
try {
Matricula matricula = matriculaDAO.find(matriculaId);
Indicacao indicacao = indicacaoDAO.find(matricula.getIndicacao().getId());
indicacao.setMatriculado(false);
matriculaDAO.remove(matriculaId);
indicacaoDAO.update(indicacao);
TurmaEfetiva turma = (TurmaEfetiva) turmaDAO.find(matricula.getTurma().getId());
// VERIFICAR SE AINDA HÁ ALGUMA MATRICULA
if (hasMatriculas(turma.getId())) {
turma.setAtivado(true);
} else {
turma.setAtivado(false);
}
turmaDAO.update(turma);
} catch (DAOException ex) {
ex.printStackTrace();
throw new CoreException(ex.getMessage());
} catch (Exception ex) {
ex.printStackTrace();
throw new CoreException("Erro em tempo de execução: " + ex.getMessage());
}
}
use of com.tomasio.projects.trainning.dao.MatriculaDAO in project trainning by fernandotomasio.
the class AtividadesEnsinoServiceSimpleImpl method createMatricula.
@Override
@Transactional
public void createMatricula(MatriculaDTO[] matriculas) {
MatriculaDAO matriculaDAO = factory.getMatriculaDAO();
IndicacaoDAO indicacaoDAO = factory.getIndicacaoDAO();
TurmaDAO turmaDAO = factory.getTurmaDAO();
List<Matricula> matriculasList = new ArrayList<Matricula>();
List<Indicacao> indicacoesList = new ArrayList<Indicacao>();
Set<TurmaEfetiva> turmasList = new HashSet<TurmaEfetiva>();
for (MatriculaDTO matricula : matriculas) {
Matricula _matricula = null;
if (matricula != null) {
if (matricula instanceof MatriculaAlunoDTO) {
_matricula = new MatriculaAluno((MatriculaAlunoDTO) matricula);
} else {
_matricula = new MatriculaInstrutor((MatriculaInstrutorDTO) matricula);
}
}
matriculasList.add(_matricula);
indicacoesList.add(_matricula.getIndicacao());
turmasList.add(_matricula.getTurma());
}
try {
matriculaDAO.create(matriculasList);
for (Indicacao indicacao : indicacoesList) {
indicacao.setMatriculado(true);
indicacaoDAO.update(indicacao);
}
for (TurmaEfetiva turmaEfetiva : turmasList) {
turmaEfetiva.setAtivado(true);
turmaDAO.update(turmaEfetiva);
}
} catch (DAOException ex) {
ex.printStackTrace();
throw new CoreException(ex.getMessage());
} catch (Exception ex) {
ex.printStackTrace();
throw new CoreException("Erro em tempo de execução: " + ex.getMessage());
}
}
use of com.tomasio.projects.trainning.dao.MatriculaDAO in project trainning by fernandotomasio.
the class AtividadesEnsinoServiceSimpleImpl method calculateCustoRealizadoAdministrativo.
@Override
@Transactional(readOnly = true)
public BigDecimal calculateCustoRealizadoAdministrativo(TurmaEfetivaDTO[] turmas) {
BigDecimal result = new BigDecimal(0);
MatriculaDAO matriculaDAO = factory.getMatriculaDAO();
String parameterIcea = ConfigHelper.getValue("custos.icea");
BigDecimal custoIndividualIcea = new BigDecimal(parameterIcea);
try {
for (TurmaEfetivaDTO turma : turmas) {
if (turma.isCancelado()) {
continue;
}
List<Matricula> alunos = matriculaDAO.findAllAlunos(turma.getId());
FaseDTO[] fases = turma.getFases();
for (FaseDTO fase : fases) {
if ("PRESENCIAL".equals(fase.getTipoFase())) {
int intervalo = 0;
if (fase.getDataInicio() != null && fase.getDataTermino() != null) {
DateTime dataInicio = new DateTime(fase.getDataInicio().getTime());
DateTime dataTermino = new DateTime(fase.getDataTermino().getTime());
Days d = Days.daysBetween(dataInicio, dataTermino);
intervalo = d.getDays() + 1;
}
if (intervalo <= 0) {
continue;
}
BigDecimal custoTurma = custoIndividualIcea.multiply(new BigDecimal(intervalo)).multiply(new BigDecimal(alunos.size()));
result = result.add(custoTurma);
}
}
}
} catch (DAOException ex) {
Logger.getLogger(AtividadesEnsinoServiceSimpleImpl.class.getName()).log(Level.SEVERE, null, ex);
}
return result;
}
use of com.tomasio.projects.trainning.dao.MatriculaDAO in project trainning by fernandotomasio.
the class AtividadesEnsinoServiceSimpleImpl method removeDesligamento.
@Override
@Transactional
public void removeDesligamento(Long matriculaId) {
DesligamentoDAO desligamentoDAO = factory.getDesligamentoDAO();
MatriculaDAO matriculaDAO = factory.getMatriculaDAO();
IndicacaoDAO indicacaoDAO = factory.getIndicacaoDAO();
TurmaDAO turmaDAO = factory.getTurmaDAO();
try {
// remover um registro na tabela CancelamentoMatricula
Desligamento d = (Desligamento) desligamentoDAO.findDesligamentoByMatricula(matriculaId);
Matricula matricula = matriculaDAO.find(d.getMatricula().getId());
Indicacao indicacao = matricula.getIndicacao();
TurmaEfetiva turma = matricula.getTurma();
if (d != null) {
desligamentoDAO.remove(d.getId());
indicacao.setMatriculado(true);
turma.setAtivado(true);
indicacaoDAO.update(indicacao);
turmaDAO.update(turma);
}
} catch (DAOException ex) {
ex.printStackTrace();
throw new CoreException(ex.getMessage());
} catch (Exception ex) {
ex.printStackTrace();
throw new CoreException(ex.getMessage());
}
}
use of com.tomasio.projects.trainning.dao.MatriculaDAO in project trainning by fernandotomasio.
the class AtividadesEnsinoServiceSimpleImpl method countMatriculasAlunos.
@Override
@Transactional(readOnly = true)
public int countMatriculasAlunos(Date start, Date end) {
MatriculaDAO dao = factory.getMatriculaDAO();
int count = 0;
try {
count = dao.countAllAlunos(start, end);
} catch (DAOException ex) {
throw new CoreException(ex.getMessage());
} catch (Exception ex) {
throw new CoreException("Erro em tempo de execução: " + ex.getMessage());
}
return count;
}
Aggregations