Search in sources :

Example 16 with TurmaEfetiva

use of com.tomasio.projects.trainning.model.TurmaEfetiva in project trainning by fernandotomasio.

the class AtividadesEnsinoServiceSimpleImpl method removePreMatricula.

@Override
@Transactional
public void removePreMatricula(Long preMatriculaId) {
    PreMatriculaDAO preMatriculaDAO = factory.getPreMatriculaDAO();
    IndicacaoDAO indicacaoDAO = factory.getIndicacaoDAO();
    TurmaDAO turmaDAO = factory.getTurmaDAO();
    try {
        PreMatricula preMatricula = preMatriculaDAO.find(preMatriculaId);
        Indicacao indicacao = preMatricula.getIndicacao();
        TurmaEfetiva turma = preMatricula.getTurma();
        preMatriculaDAO.remove(preMatriculaId);
        indicacao.setPreMatriculado(false);
        indicacaoDAO.update(indicacao);
        if (hasPreMatriculas(turma.getId())) {
            turma.setPreAtivado(true);
        } else {
            turma.setPreAtivado(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());
    }
}
Also used : IndicacaoDAO(com.tomasio.projects.trainning.dao.IndicacaoDAO) DAOException(com.tomasio.projects.trainning.exception.DAOException) StatusTurmaEfetiva(com.tomasio.projects.trainning.model.StatusTurmaEfetiva) TurmaEfetiva(com.tomasio.projects.trainning.model.TurmaEfetiva) CoreException(com.tomasio.projects.trainning.exeption.CoreException) PreMatricula(com.tomasio.projects.trainning.model.PreMatricula) Indicacao(com.tomasio.projects.trainning.model.Indicacao) TurmaDAO(com.tomasio.projects.trainning.dao.TurmaDAO) DAOException(com.tomasio.projects.trainning.exception.DAOException) ParseException(java.text.ParseException) CoreException(com.tomasio.projects.trainning.exeption.CoreException) PreMatriculaDAO(com.tomasio.projects.trainning.dao.PreMatriculaDAO) Transactional(org.springframework.transaction.annotation.Transactional)

Example 17 with TurmaEfetiva

use of com.tomasio.projects.trainning.model.TurmaEfetiva in project trainning by fernandotomasio.

the class HibernateIndicacaoDAO method travaDeIndicacao.

@Override
public void travaDeIndicacao(Indicacao indicacao, String chamada) throws DAOException {
    Session session = sessionFactory.getCurrentSession();
    TurmaEfetiva turma = (TurmaEfetiva) session.get(TurmaEfetiva.class, indicacao.getTurma().getId());
    SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy");
    SimpleDateFormat dfExec = new SimpleDateFormat("yyyy");
    Date exercicio = null;
    try {
        exercicio = dfExec.parse(dfExec.format(new Date()));
    } catch (ParseException ex) {
        Logger.getLogger(HibernateIndicacaoDAO.class.getName()).log(Level.SEVERE, null, ex);
    }
    String erroMessage = "";
    boolean erro = false;
    String message = "<br>";
    // if (indicacao instanceof IndicacaoAluno) {
    // teste: se matriculado no mesmo curso no ano vigente
    // não permitir e avisar ao usuário - COMGAP PODE
    @SuppressWarnings("unchecked") List<Matricula> matriculasNesteCurso = session.createQuery("" + "from MatriculaAluno m " + "where m.pessoa.id = :pessoaId " + "and m.turma.exercicio=:exercicio " + "and m.turma.curso.id=:cursoId").setLong("pessoaId", indicacao.getPessoa().getId()).setLong("cursoId", turma.getCurso().getId()).setDate("exercicio", exercicio).list();
    if (matriculasNesteCurso.size() > 0) {
        // vasculhar as matriculas para verificar se é válida e pegar os detalhes
        for (Matricula matricula : matriculasNesteCurso) {
            Organizacao organizacaoGestora = (Organizacao) session.get(Organizacao.class, matricula.getTurma().getOrganizacaoGestoraId());
            // verificar se é válida
            if (!matricula.isCancelada()) {
                String ano;
                ano = dfExec.format(matricula.getTurma().getExercicio());
                message += "=> " + matricula.getTurma().getCurso().getCodigo() + " - " + matricula.getTurma().getNumeroTurma() + " / " + ano + " (" + organizacaoGestora.getSigla() + ") - Período de " + df.format(matricula.getTurma().getDataInicio()) + " a " + df.format(matricula.getTurma().getDataTermino()) + "<br>";
            }
        }
        erroMessage += "O candidato já está matriculado neste curso no ano vigente, na(s) seguinte(s) edição(ões):<br>" + message + "<BR>";
        erro = true;
    // throw new DAOException("O candidato já está matriculado neste curso no ano vigênte");
    }
    // teste: se já concluiu COM APROVEITAMENTO esse curso anteriormente
    // não permitir e avisar ao usuário - COMGAP PODE
    @SuppressWarnings("unchecked") List<Conclusao> conclusoes = session.createQuery("" + "from Conclusao c " + "where c.pessoa.id = :pessoaId " + "and c.capacitacao.id= :capacitacaoId " + "and c.comAproveitamento=true").setLong("pessoaId", indicacao.getPessoa().getId()).setLong("capacitacaoId", turma.getCurso().getId()).list();
    if (conclusoes.size() > 0) {
        message = "";
        // vasculhar as apresentacoes para pegar os detalhes
        for (Conclusao curso : conclusoes) {
            if (curso.getMatricula() != null) {
                String ano;
                Organizacao organizacaoGestora = (Organizacao) session.get(Organizacao.class, curso.getMatricula().getTurma().getOrganizacaoGestoraId());
                ano = dfExec.format(curso.getMatricula().getTurma().getExercicio());
                message += "=> " + curso.getMatricula().getTurma().getCurso().getCodigo() + " - " + curso.getMatricula().getTurma().getNumeroTurma() + " / " + ano + " (" + organizacaoGestora.getSigla() + ") - Período de " + df.format(curso.getMatricula().getTurma().getDataInicio()) + " a " + df.format(curso.getMatricula().getTurma().getDataTermino()) + "<br>";
            } else {
                // curso concluído sem vínculo com tumas do SGC
                message += "=> " + curso.getAno() + " (" + curso.getLocal() + ") - Período de " + df.format(curso.getPeriodo().getDataInicio()) + " a " + df.format(curso.getPeriodo().getDataTermino()) + "<br>";
            }
        }
        erroMessage += "O Candidato já concluiu com aproveitamento esta capacitação em:<br>" + message + "<br>";
        erro = true;
    // throw new DAOException("Capacitação já realizada por este indicado");
    }
    // não permitir e avisar ao usuário - COMGAP PODE
    if (turma.getDataInicio() != null && turma.getDataTermino() != null) {
        Date dataInicioIndic = null;
        Date dataTerminoIndic = null;
        try {
            dataInicioIndic = df.parse(df.format(turma.getDataInicio()));
            dataTerminoIndic = df.parse(df.format(turma.getDataTermino()));
        } catch (ParseException ex) {
            Logger.getLogger(HibernateIndicacaoDAO.class.getName()).log(Level.SEVERE, null, ex);
        }
        // verificar se tem matricula em curso
        @SuppressWarnings("unchecked") List<Matricula> matriculas = session.createQuery("" + "from MatriculaAluno m " + "where m.pessoa.id = :pessoaId").setLong("pessoaId", indicacao.getPessoa().getId()).list();
        if (matriculas.size() > 0) {
            // foi matriculado antes
            // verificar se alguma dessa é no mesmo período da indicação
            // descobrir a menor data inicio e a maior data de termino
            boolean mesmaData = false;
            boolean erroMesmaData = false;
            message = "";
            // vasculhar as matriculas
            for (Matricula matricula : matriculas) {
                // verificar se é válida
                if (!matricula.isCancelada()) {
                    if (matricula.getTurma().getDataInicio() != null && matricula.getTurma().getDataTermino() != null) {
                        Date dataInicioMatricula = null;
                        Date dataTerminoMatricula = null;
                        try {
                            dataInicioMatricula = df.parse(df.format(matricula.getTurma().getDataInicio()));
                            dataTerminoMatricula = df.parse(df.format(matricula.getTurma().getDataTermino()));
                        } catch (ParseException ex) {
                            Logger.getLogger(HibernateIndicacaoDAO.class.getName()).log(Level.SEVERE, null, ex);
                        }
                        // verificar se o período da indicação coincide
                        if ((dataInicioIndic.equals(dataInicioMatricula)) || (dataInicioIndic.equals(dataTerminoMatricula)) || (dataTerminoIndic.equals(dataInicioMatricula)) || (dataTerminoIndic.equals(dataTerminoMatricula))) {
                            mesmaData = true;
                        // verificar se o curso em que está mariculado está dentro do curso indicado
                        } else if ((dataInicioIndic.before(dataInicioMatricula) && dataTerminoIndic.after(dataTerminoMatricula))) {
                            // dentro do periodo de indicação
                            mesmaData = true;
                        // verificar se o INICIO do curso em que está matriculado está dentro do curso indicado
                        } else if ((dataInicioIndic.before(dataInicioMatricula) && dataTerminoIndic.after(dataInicioMatricula))) {
                            // inicio do matriculado dentro do indicado
                            mesmaData = true;
                        // verificar se o TEMINO do curso em que está matriculado está dentro do curso indicado
                        } else if ((dataInicioIndic.before(dataTerminoMatricula) && dataTerminoIndic.after(dataTerminoMatricula))) {
                            // termino do matriculado dentro do indicado
                            mesmaData = true;
                        // verificar se o curso em que está indicado está dentro do curso matriculado
                        } else if ((dataInicioIndic.after(dataInicioMatricula) && dataTerminoIndic.before(dataTerminoMatricula))) {
                            // mariculado dentro do periodo do curso a ser indicado
                            mesmaData = true;
                        }
                        if (mesmaData == true) {
                            String ano;
                            ano = dfExec.format(matricula.getTurma().getExercicio());
                            Organizacao organizacaoGestora = (Organizacao) session.get(Organizacao.class, matricula.getTurma().getOrganizacaoGestoraId());
                            // teste: se já matriculado em curso nesta mesma data
                            erroMesmaData = true;
                            // não permitir e avisar ao usuário
                            message += "=> " + matricula.getTurma().getCurso().getCodigo() + " - " + matricula.getTurma().getNumeroTurma() + " / " + ano + " (" + organizacaoGestora.getSigla() + ") - Período de " + df.format(matricula.getTurma().getDataInicio()) + " a " + df.format(matricula.getTurma().getDataTermino()) + "<br>";
                        }
                    }
                    mesmaData = false;
                }
            }
            // loop varendo todas matriculas
            if (erroMesmaData) {
                erroMessage += "O candidato já está matriculado no(s) seguinte(s) curso(s) no mesmo período:<br>" + message + "<br>";
                erro = true;
            // throw new DAOException("O candidato já está matriculado no(s) seguinte(s) curso(s) no mesmo período: " + message + "<br>");
            }
        }
    }
    // teste: se já indicado para esta turma do curso
    // não permitir e avisar ao usuário
    Long countIndicacao = null;
    // VERIFICAR QUEM CHAMOU O MÉTODO
    if (chamada.equals("CREATE")) {
        countIndicacao = (Long) session.createQuery("" + "select count(*) from IndicacaoAluno i " + "where i.pessoa.id = :pessoaId " + "and i.turma.id = :turmaId").setLong("pessoaId", indicacao.getPessoa().getId()).setLong("turmaId", turma.getId()).uniqueResult();
    } else if (chamada.equals("UPDATE")) {
        countIndicacao = (Long) session.createQuery("" + "select count(*) from IndicacaoAluno i " + "where i.pessoa.id = :pessoaId " + "and i.turma.id = :turmaId " + "and i.id <> :indicacaoId").setLong("indicacaoId", indicacao.getId()).setLong("pessoaId", indicacao.getPessoa().getId()).setLong("turmaId", turma.getId()).uniqueResult();
    }
    if (countIndicacao > 0) {
        erroMessage += "O candidato já está indicado para esta Turma<br>";
        erro = true;
    // throw new DAOException("Indicação já existente");
    }
    // }
    // teste: se concluiu SEM aproveitamento algum curso no ano vigente
    // não permitir e avisar ao usuário - COMGAP PODE
    // verificar matricula VÁLIDA com conclusão SEM APROVEITAMENTO
    Long countMatricula = (Long) session.createQuery("" + "select count(*) from MatriculaAluno m " + "where m.pessoaId = :pessoaId " + "and m.turma.exercicio=:exercicio").setLong("pessoaId", indicacao.getPessoa().getId()).setDate("exercicio", exercicio).uniqueResult();
    if (countMatricula > 0) {
        // teve matriculas no ano
        // verificar se o curso matriculado já terminou e se não concluiu
        @SuppressWarnings("unchecked") List<Matricula> matriculas = session.createQuery("" + "from MatriculaAluno m " + "where m.pessoa.id = :pessoaId " + "and m.turma.exercicio=:exercicio").setLong("pessoaId", indicacao.getPessoa().getId()).setDate("exercicio", exercicio).list();
        message = "";
        boolean erroNaoConcluiuComAproveitamento = false;
        // vasculhar as matriculas
        for (Matricula matricula : matriculas) {
            // verificar se matricula válida
            if (!matricula.isCancelada()) {
                // verificar se curso terminou
                if (matricula.getTurma().getDataTermino().before(new Date())) {
                    @SuppressWarnings("unchecked") List<Conclusao> conclusoesSemAproveitamento = session.createQuery("" + "from Conclusao conclusao " + "where conclusao.matricula.id=:matriculaId" + "and conclusao.comAproveitamento=false").setLong("matriculaId", matricula.getId()).list();
                    if (conclusoesSemAproveitamento.size() > 0) {
                        // vasculhar para verificar se não estão justificadas
                        for (Conclusao conclusao : conclusoesSemAproveitamento) {
                            if (!conclusao.isJustificado()) {
                                // não justificada
                                erroNaoConcluiuComAproveitamento = true;
                                String ano;
                                Organizacao organizacaoGestora = (Organizacao) session.get(Organizacao.class, matricula.getTurma().getOrganizacaoGestoraId());
                                ano = dfExec.format(matricula.getTurma().getExercicio());
                                // teste: concluiu sem aproveitamnto algum curso no ano vigente
                                message += "=> " + matricula.getTurma().getCurso().getCodigo() + " - " + matricula.getTurma().getNumeroTurma() + " / " + ano + " (" + organizacaoGestora.getSigla() + ") - Período de " + df.format(matricula.getTurma().getDataInicio()) + " a " + df.format(matricula.getTurma().getDataTermino()) + "<br>";
                            }
                        }
                    }
                }
            }
        }
        if (erroNaoConcluiuComAproveitamento) {
            erroMessage += "O candidato concluíu sem aproveitamento o(s) seguinte(s) cuso(s) no ano vigentem:<br>" + message + "<br>As conclusões sem aproveitamento, quando não justificadas, impossilitam a idicação no ano vigente<br>";
            erro = true;
        // throw new DAOException("O candidato não concluíu o(s) seguinte(s) cuso(s) " + message +  "no ano vigentem o impossibilitando de ser indicado.");
        }
    }
    // teste final de erro
    if (erro) {
        throw new DAOException(erroMessage);
    }
}
Also used : TurmaEfetiva(com.tomasio.projects.trainning.model.TurmaEfetiva) Conclusao(com.tomasio.projects.trainning.model.Conclusao) Matricula(com.tomasio.projects.trainning.model.Matricula) Date(java.util.Date) DAOException(com.tomasio.projects.trainning.exception.DAOException) Organizacao(com.tomasio.projects.trainning.model.Organizacao) ParseException(java.text.ParseException) SimpleDateFormat(java.text.SimpleDateFormat) Session(org.hibernate.Session)

Example 18 with TurmaEfetiva

use of com.tomasio.projects.trainning.model.TurmaEfetiva in project trainning by fernandotomasio.

the class HibernateIndicacaoDAO method alertaDeIndicacao.

@SuppressWarnings("unchecked")
@Override
public void alertaDeIndicacao(Indicacao indicacao, String chamada) throws DAOException {
    Session session = sessionFactory.getCurrentSession();
    TurmaEfetiva turma = (TurmaEfetiva) session.get(TurmaEfetiva.class, indicacao.getTurma().getId());
    SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy");
    SimpleDateFormat dfExec = new SimpleDateFormat("yyyy");
    Date exercicio = null;
    try {
        exercicio = dfExec.parse(dfExec.format(new Date()));
    } catch (ParseException ex) {
        Logger.getLogger(HibernateIndicacaoDAO.class.getName()).log(Level.SEVERE, null, ex);
    }
    String erroMessage = "<br>";
    boolean erro = false;
    // if (indicacao instanceof IndicacaoAluno) {
    // teste: se indicado no mesmo curso em edições diferentes
    // avisar ao usuário
    // VERIFICAR QUEM CHAMOU O MÉTODO
    Long countIndicacao = null;
    if (chamada.equals("CREATE")) {
        countIndicacao = (Long) session.createQuery("" + "select count(*) from IndicacaoAluno i " + "where i.pessoa.id = :pessoaId " + "and i.turma.exercicio=:exercicio " + "and i.turma.id <> :turmaId " + "and i.turma.curso.id = :cursoId").setLong("pessoaId", indicacao.getPessoa().getId()).setLong("cursoId", turma.getCurso().getId()).setDate("exercicio", exercicio).setLong("turmaId", indicacao.getTurma().getId()).uniqueResult();
    } else if (chamada.equals("UPDATE")) {
        countIndicacao = (Long) session.createQuery("" + "select count(*) from IndicacaoAluno i " + "where i.pessoa.id = :pessoaId " + "and i.turma.exercicio=:exercicio " + "and i.turma.curso.id = :cursoId " + "and i.turma.id <> :turmaId " + "and i.id <> :indicacaoId").setLong("indicacaoId", indicacao.getId()).setLong("pessoaId", indicacao.getPessoa().getId()).setLong("cursoId", turma.getCurso().getId()).setDate("exercicio", exercicio).setLong("turmaId", indicacao.getTurma().getId()).uniqueResult();
    }
    if (countIndicacao > 0) {
        List<IndicacaoAluno> indicacoes = null;
        if (chamada.equals("CREATE")) {
            indicacoes = session.createQuery("" + "from IndicacaoAluno i " + "where i.pessoa.id = :pessoaId " + "and i.turma.exercicio=:exercicio " + "and i.turma.id <> :turmaId " + "and i.turma.curso.id = :cursoId").setLong("pessoaId", indicacao.getPessoa().getId()).setLong("cursoId", turma.getCurso().getId()).setDate("exercicio", exercicio).setLong("turmaId", turma.getId()).list();
        } else if (chamada.equals("UPDATE")) {
            indicacoes = session.createQuery("" + "from IndicacaoAluno i " + "where i.pessoa.id = :pessoaId " + "and i.turma.exercicio=:exercicio " + "and i.turma.curso.id = :cursoId " + "and i.turma.id <> :turmaId " + "and i.id <> :indicacaoId").setLong("indicacaoId", indicacao.getId()).setLong("pessoaId", indicacao.getPessoa().getId()).setLong("cursoId", turma.getCurso().getId()).setDate("exercicio", exercicio).setLong("turmaId", indicacao.getTurma().getId()).list();
        }
        String message = "";
        if (indicacoes.size() > 0) {
            // vasculhar as indicacoes para coletar os detalhes das edições
            for (@SuppressWarnings("unused") IndicacaoAluno indic : indicacoes) {
                String ano;
                ano = dfExec.format(turma.getExercicio());
                Organizacao organizacaoGestora = (Organizacao) session.get(Organizacao.class, turma.getOrganizacaoGestoraId());
                message += "=> " + turma.getCurso().getCodigo() + " - " + turma.getNumeroTurma() + " / " + ano + " (" + organizacaoGestora.getSigla() + ") - Período de " + df.format(turma.getDataInicio()) + " a " + df.format(turma.getDataTermino()) + "<br>";
            }
            // loop varendo todas matriculas
            erroMessage += "O candidato já está indicado neste curso no ano vigente nas seguinte(s) edição(ões):<br>" + message + "<br>";
            erro = true;
        // throw new DAOException("O candidato já está indicado neste curso nas seguinte(s) edição(ões) " + message + " no ano vigente.");
        }
    }
    // }
    if (erro) {
        throw new DAOException(erroMessage);
    }
}
Also used : TurmaEfetiva(com.tomasio.projects.trainning.model.TurmaEfetiva) Date(java.util.Date) DAOException(com.tomasio.projects.trainning.exception.DAOException) IndicacaoAluno(com.tomasio.projects.trainning.model.IndicacaoAluno) Organizacao(com.tomasio.projects.trainning.model.Organizacao) ParseException(java.text.ParseException) SimpleDateFormat(java.text.SimpleDateFormat) Session(org.hibernate.Session)

Example 19 with TurmaEfetiva

use of com.tomasio.projects.trainning.model.TurmaEfetiva in project trainning by fernandotomasio.

the class HibernateTurmaDAO method findAllTurmasEfetivasNotCancelOfResponsavelOrResponsavelConclusao.

@SuppressWarnings("unchecked")
@Override
public List<TurmaEfetiva> findAllTurmasEfetivasNotCancelOfResponsavelOrResponsavelConclusao(Date exercicio, Long organizacaoId) throws DAOException {
    Session session = sessionFactory.getCurrentSession();
    SimpleDateFormat df = new SimpleDateFormat("yyyy");
    try {
        exercicio = df.parse(df.format(exercicio));
    } catch (ParseException ex) {
        Logger.getLogger(HibernateTurmaDAO.class.getName()).log(Level.SEVERE, null, ex);
    }
    try {
        // selecionar todas turmas da organizacao no ano
        List<TurmaEfetiva> turmas = session.createQuery("from TurmaEfetiva t " + "where t.exercicio = :exercicio " + "and (t.responsavelId = :organizacaoId1 or t.responsavelConclusaoId = :organizacaoId2)" + "and t.cancelado = false").setLong("organizacaoId1", organizacaoId).setLong("organizacaoId2", organizacaoId).setDate("exercicio", exercicio).list();
        Collections.sort(turmas, new TurmaEfetivaSort());
        return turmas;
    } catch (HibernateException e) {
        Logger.getLogger(HibernateTurmaDAO.class.getName()).log(Level.SEVERE, null, e);
        throw new DAOException(MessageHelper.getMessage("turmas.find.list.error"));
    }
}
Also used : DAOException(com.tomasio.projects.trainning.exception.DAOException) StatusTurmaEfetiva(com.tomasio.projects.trainning.model.StatusTurmaEfetiva) TurmaEfetiva(com.tomasio.projects.trainning.model.TurmaEfetiva) TurmaEfetivaSort(com.tomasio.projects.trainning.sort.TurmaEfetivaSort) HibernateException(org.hibernate.HibernateException) ParseException(java.text.ParseException) SimpleDateFormat(java.text.SimpleDateFormat) Session(org.hibernate.Session)

Example 20 with TurmaEfetiva

use of com.tomasio.projects.trainning.model.TurmaEfetiva in project trainning by fernandotomasio.

the class HibernateTurmaDAO method instantiateTurma.

@SuppressWarnings("unused")
private Turma instantiateTurma(TurmaDTO dto) {
    Turma turma;
    if (dto instanceof TurmaEfetivaDTO) {
        TurmaEfetivaDTO aux = (TurmaEfetivaDTO) dto;
        turma = new TurmaEfetiva(aux);
    } else {
        TurmaPlanejadaDTO aux = (TurmaPlanejadaDTO) dto;
        turma = new TurmaPlanejada(aux);
    }
    return turma;
}
Also used : TurmaPlanejada(com.tomasio.projects.trainning.model.TurmaPlanejada) TurmaEfetivaDTO(com.tomasio.projects.trainning.dto.TurmaEfetivaDTO) Turma(com.tomasio.projects.trainning.model.Turma) StatusTurmaEfetiva(com.tomasio.projects.trainning.model.StatusTurmaEfetiva) TurmaEfetiva(com.tomasio.projects.trainning.model.TurmaEfetiva) TurmaPlanejadaDTO(com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO)

Aggregations

TurmaEfetiva (com.tomasio.projects.trainning.model.TurmaEfetiva)37 DAOException (com.tomasio.projects.trainning.exception.DAOException)33 StatusTurmaEfetiva (com.tomasio.projects.trainning.model.StatusTurmaEfetiva)32 ParseException (java.text.ParseException)27 Transactional (org.springframework.transaction.annotation.Transactional)23 TurmaDAO (com.tomasio.projects.trainning.dao.TurmaDAO)22 CoreException (com.tomasio.projects.trainning.exeption.CoreException)16 SimpleDateFormat (java.text.SimpleDateFormat)14 IndicacaoDAO (com.tomasio.projects.trainning.dao.IndicacaoDAO)12 Session (org.hibernate.Session)11 Indicacao (com.tomasio.projects.trainning.model.Indicacao)10 PreMatriculaDAO (com.tomasio.projects.trainning.dao.PreMatriculaDAO)9 TurmaEfetivaDTO (com.tomasio.projects.trainning.dto.TurmaEfetivaDTO)9 PreMatricula (com.tomasio.projects.trainning.model.PreMatricula)9 Matricula (com.tomasio.projects.trainning.model.Matricula)8 HibernateException (org.hibernate.HibernateException)8 CancelamentoMatriculaDAO (com.tomasio.projects.trainning.dao.CancelamentoMatriculaDAO)7 MatriculaDAO (com.tomasio.projects.trainning.dao.MatriculaDAO)7 NotificacaoMatriculaDAO (com.tomasio.projects.trainning.dao.NotificacaoMatriculaDAO)7 CancelamentoMatricula (com.tomasio.projects.trainning.model.CancelamentoMatricula)7