use of com.tomasio.projects.trainning.dao.PessoaDAO in project trainning by fernandotomasio.
the class AtividadesEnsinoServiceSimpleImpl method calculateCustoRealizadoInstrutores.
@Override
@Transactional(readOnly = true)
public Map<String, BigDecimal> calculateCustoRealizadoInstrutores(TurmaEfetivaDTO[] turmas) {
Map<String, BigDecimal> result = new HashMap();
MatriculaDAO matriculaDAO = factory.getMatriculaDAO();
PessoaDAO pessoaDAO = factory.getPessoaDAO();
String parameterDiaria = ConfigHelper.getValue("custos.diaria");
String parameterPassagem = ConfigHelper.getValue("custos.passagem");
BigDecimal diaria = new BigDecimal(parameterDiaria);
BigDecimal passagem = new BigDecimal(parameterPassagem);
OrganizacaoDAO organizacaoDAO = factory.getOrganizacaoDAO();
BigDecimal transporteRealizado = new BigDecimal(0.00);
BigDecimal diariasRealizado = new BigDecimal(0.00);
try {
for (TurmaEfetivaDTO turma : turmas) {
if (turma.isCancelado()) {
continue;
}
List<Matricula> instrucoes = matriculaDAO.findAllInstrutores(turma.getId());
for (Matricula matricula : instrucoes) {
if (matricula.isCancelada()) {
continue;
}
matricula.getIndicacao().getId();
IndicacaoInstrutorDTO indicacao = (IndicacaoInstrutorDTO) matricula.getIndicacao().createDTO();
int intervalo = 0;
Interval instrucaoInterval = null;
if (indicacao.getPeriodo() != null && indicacao.getPeriodo().getDataInicio() != null && indicacao.getPeriodo().getDataTermino() != null) {
DateTime dataInicioInstrucao = new DateTime(indicacao.getPeriodo().getDataInicio().getTime());
DateTime dataTerminoInstrucao = new DateTime(indicacao.getPeriodo().getDataTermino().getTime());
if (dataInicioInstrucao.isAfter(dataTerminoInstrucao)) {
continue;
}
instrucaoInterval = new Interval(dataInicioInstrucao, dataTerminoInstrucao);
Days d = Days.daysBetween(dataInicioInstrucao, dataTerminoInstrucao);
intervalo = d.getDays() + 2;
}
if (intervalo <= 0) {
continue;
}
if (intervalo > 50) {
intervalo = 50;
}
Pessoa pessoa = pessoaDAO.find(indicacao.getPessoa().getId());
if (pessoa.getOrganizacao() != null) {
Organizacao organizacaoInstrutor = organizacaoDAO.find(pessoa.getOrganizacao().getId());
if (organizacaoInstrutor.createDTO() instanceof ExternoDTO) {
continue;
}
FaseDTO[] fases = turma.getFases();
for (FaseDTO fase : fases) {
if (fase.getDataInicio() != null && fase.getDataTermino() != null) {
DateTime dataInicioFase = new DateTime(fase.getDataInicio().getTime());
DateTime dataTerminoFase = new DateTime(fase.getDataTermino().getTime());
if (dataTerminoFase.isBefore(dataInicioFase)) {
continue;
}
Interval faseInterval = new Interval(dataInicioFase, dataTerminoFase);
if (faseInterval.contains(instrucaoInterval) || instrucaoInterval.contains(faseInterval)) {
Organizacao organizacaoLocal = organizacaoDAO.find(fase.getLocal().getId());
if (!organizacaoInstrutor.getCidade().getId().equals(organizacaoLocal.getCidade().getId())) {
diariasRealizado = diariasRealizado.add(diaria.multiply(new BigDecimal(intervalo)));
transporteRealizado = transporteRealizado.add(passagem);
}
}
}
}
}
}
}
} catch (DAOException ex) {
Logger.getLogger(AtividadesEnsinoServiceSimpleImpl.class.getName()).log(Level.SEVERE, null, ex);
}
result.put("transporte", transporteRealizado);
result.put("diarias", diariasRealizado);
result.put("total", transporteRealizado.add(diariasRealizado));
return result;
}
use of com.tomasio.projects.trainning.dao.PessoaDAO in project trainning by fernandotomasio.
the class ImportTurmasImplEfetivasFromTabelao method periodosInstrutor.
private List<Periodo> periodosInstrutor(String codInstrutor, Connection conn) {
List<Periodo> periodos = new ArrayList<Periodo>();
try {
IndicacaoDAO indicacaoDAO = new HibernateIndicacaoDAO();
OrganizacaoDAO organizacaoDAO = new HibernateOrganizacaoDAO();
PessoaDAO pessoaDAO = new HibernatePessoaDAO();
MatriculaDAO matriculaDAO = new HibernateMatriculaDAO();
Statement stm = conn.createStatement();
ResultSet rs = stm.executeQuery("select * from periodoinstrutores where codInstrutores=" + codInstrutor);
while (rs.next()) {
Date inicio = rs.getDate("inicio");
Date termino = rs.getDate("termino");
Periodo periodo = new Periodo();
periodo.setDataInicio(inicio);
periodo.setDataTermino(termino);
periodos.add(periodo);
}
} catch (SQLException ex) {
Logger.getLogger(ImportTurmasImplEfetivasFromTabelao.class.getName()).log(Level.SEVERE, null, ex);
}
return periodos;
}
use of com.tomasio.projects.trainning.dao.PessoaDAO in project trainning by fernandotomasio.
the class ImportTurmasImplEfetivasFromTabelao method recuperarAnotacoesPagina.
private void recuperarAnotacoesPagina(int codTabelao, TurmaEfetiva turmaCriada, Connection conn) {
try {
IndicacaoDAO indicacaoDAO = new HibernateIndicacaoDAO();
OrganizacaoDAO organizacaoDAO = new HibernateOrganizacaoDAO();
PessoaDAO pessoaDAO = new HibernatePessoaDAO();
AnotacaoDAO anotacaoDAO = new HibernateAnotacaoDAO();
Statement stm = conn.createStatement();
ResultSet rs = stm.executeQuery("select * from tabelao where codTabelao=" + codTabelao);
while (rs.next()) {
String observacoes = rs.getString("avisos");
AnotacaoDTO anotacao = new AnotacaoDTO();
anotacao.setDataCriacao(new Date());
anotacao.setObjectId(turmaCriada.getObjectId());
anotacao.setTexto(observacoes);
anotacao.setUser("IMPORTAÇÃO");
anotacao.setVisibleInWebpage(true);
anotacaoDAO.create(anotacao);
}
} catch (SQLException ex) {
Logger.getLogger(ImportTurmasImplEfetivasFromTabelao.class.getName()).log(Level.SEVERE, null, ex);
} catch (Exception ex) {
Logger.getLogger(ImportTurmasImplEfetivasFromTabelao.class.getName()).log(Level.SEVERE, null, ex);
}
}
use of com.tomasio.projects.trainning.dao.PessoaDAO in project trainning by fernandotomasio.
the class ImportTurmasImplEfetivasFromTabelao method recuperarAnotacoes.
private void recuperarAnotacoes(int codTabelao, TurmaEfetiva turmaCriada, Connection conn) {
try {
IndicacaoDAO indicacaoDAO = new HibernateIndicacaoDAO();
OrganizacaoDAO organizacaoDAO = new HibernateOrganizacaoDAO();
PessoaDAO pessoaDAO = new HibernatePessoaDAO();
AnotacaoDAO anotacaoDAO = new HibernateAnotacaoDAO();
Statement stm = conn.createStatement();
ResultSet rs = stm.executeQuery("select * from tabelao where codTabelao=" + codTabelao);
while (rs.next()) {
String observacoes = rs.getString("observacoes");
AnotacaoDTO anotacao = new AnotacaoDTO();
anotacao.setDataCriacao(new Date());
anotacao.setObjectId(turmaCriada.getObjectId());
anotacao.setTexto(observacoes);
anotacao.setUser("IMPORTAÇÃO");
anotacaoDAO.create(anotacao);
}
} catch (SQLException ex) {
Logger.getLogger(ImportTurmasImplEfetivasFromTabelao.class.getName()).log(Level.SEVERE, null, ex);
} catch (Exception ex) {
Logger.getLogger(ImportTurmasImplEfetivasFromTabelao.class.getName()).log(Level.SEVERE, null, ex);
}
}
use of com.tomasio.projects.trainning.dao.PessoaDAO in project trainning by fernandotomasio.
the class ImportTurmasImplEfetivasFromTabelao method recuperarMatriculas.
private void recuperarMatriculas(int codTabelao, TurmaEfetiva turmaCriada, Connection conn) {
try {
IndicacaoDAO indicacaoDAO = new HibernateIndicacaoDAO();
OrganizacaoDAO organizacaoDAO = new HibernateOrganizacaoDAO();
PessoaDAO pessoaDAO = new HibernatePessoaDAO();
MatriculaDAO matriculaDAO = new HibernateMatriculaDAO();
Statement stm = conn.createStatement();
ResultSet rs = stm.executeQuery("select * from indicacoes where codTabelao=" + codTabelao);
while (rs.next()) {
String cpf = rs.getString("cpf");
boolean matriculado = rs.getBoolean("matriculado");
;
if (!matriculado) {
continue;
}
Pessoa pessoa = ImportHelper.findPessoa(cpf, conn);
if (pessoa == null) {
System.out.println("MATRICULA NÃO IMPORTADA: " + turmaCriada.getCurso().getCodigo() + " - " + turmaCriada.getNumeroTurma() + " ->" + cpf);
continue;
}
Matricula matricula = new MatriculaAluno();
matricula.setTurma(turmaCriada);
matricula.setPessoa(pessoa);
matriculaDAO.create(matricula);
}
} catch (SQLException ex) {
Logger.getLogger(ImportTurmasImplEfetivasFromTabelao.class.getName()).log(Level.SEVERE, null, ex);
} catch (DAOException ex) {
Logger.getLogger(ImportTurmasImplEfetivasFromTabelao.class.getName()).log(Level.SEVERE, null, ex);
}
}
Aggregations