Search in sources :

Example 11 with PessoaDAO

use of com.tomasio.projects.trainning.dao.PessoaDAO in project trainning by fernandotomasio.

the class ImportHelper method recuperarPessoaFromPefcaWithIdentidade.

private static Pessoa recuperarPessoaFromPefcaWithIdentidade(String cpf, Connection conn) {
    if (cpf == null || cpf.length() < 6) {
        return null;
    }
    try {
        PessoaDAO pessoaDAO = new HibernatePessoaDAO();
        Statement stm = conn.createStatement();
        ResultSet rs = stm.executeQuery("select * from drhu.pefca where IDENT='" + cpf + "'");
        while (rs.next()) {
            String local = rs.getString("LOCATUAL");
            String CPF = rs.getString("CPF");
            String nome = rs.getString("NOME");
            String posto = rs.getString("POSTO");
            Date dataAdmissao = rs.getDate("DTADMISS");
            if (CPF == null || CPF.length() < 14) {
                // System.out.println("impossível recuperar pessoa no banco pefcacext" + cpf);
                return null;
            }
            Pessoa pessoa = pessoaDAO.findByCPF(CPF);
            if (pessoa != null) {
                return pessoa;
            }
            pessoa = new Pessoa();
            pessoa.setNome(nome);
            pessoa.setCpf(CPF);
            pessoa.setPosto(posto);
            pessoa.setDataPraca(dataAdmissao);
            Organizacao organizacao = findOrganizacao(local);
            if (organizacao == null) {
                pessoa.setOrganizacaoFromTabelao(local);
            }
            if (organizacao != null) {
                pessoa.setOrganizacao(organizacao);
            }
            Long pessoaId = pessoaDAO.create(pessoa);
            return pessoaDAO.find(pessoaId);
        }
    } 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);
    }
    return null;
}
Also used : DAOException(com.tomasio.projects.trainning.exception.DAOException) Organizacao(com.tomasio.projects.trainning.model.Organizacao) SQLException(java.sql.SQLException) Statement(java.sql.Statement) ImportTurmasImplEfetivasFromTabelao(com.tomasio.projects.trainning.migration.ImportTurmasImplEfetivasFromTabelao) HibernatePessoaDAO(com.tomasio.projects.trainning.dao.HibernatePessoaDAO) PessoaDAO(com.tomasio.projects.trainning.dao.PessoaDAO) ResultSet(java.sql.ResultSet) HibernatePessoaDAO(com.tomasio.projects.trainning.dao.HibernatePessoaDAO) Date(java.sql.Date) Pessoa(com.tomasio.projects.trainning.model.Pessoa)

Example 12 with PessoaDAO

use of com.tomasio.projects.trainning.dao.PessoaDAO in project trainning by fernandotomasio.

the class ImportHelper method recuperarPessoaFromPefcacWithIdentidade.

private static Pessoa recuperarPessoaFromPefcacWithIdentidade(String cpf, Connection conn) {
    if (cpf == null || cpf.length() < 6) {
        return null;
    }
    try {
        PessoaDAO pessoaDAO = new HibernatePessoaDAO();
        Statement stm = conn.createStatement();
        ResultSet rs = stm.executeQuery("select * from drhu.pefcac where IDENT='" + cpf + "'");
        while (rs.next()) {
            String local = rs.getString("LOCATUAL");
            String CPF = rs.getString("CPF");
            String nome = rs.getString("NOME");
            Date dataAdmissao = rs.getDate("DTADMISS");
            if (CPF == null || CPF.length() < 14) {
                // System.out.println("impossível recuperar pessoa no banco pefcacext" + cpf);
                return null;
            }
            Pessoa pessoa = pessoaDAO.findByCPF(CPF);
            if (pessoa != null) {
                return pessoa;
            }
            pessoa = new Pessoa();
            pessoa.setNome(nome);
            pessoa.setCpf(CPF);
            pessoa.setPosto("CV");
            pessoa.setDataPraca(dataAdmissao);
            Organizacao organizacao = findOrganizacao(local);
            if (organizacao == null) {
                pessoa.setOrganizacaoFromTabelao(local);
            }
            if (organizacao != null) {
                pessoa.setOrganizacao(organizacao);
            }
            Long pessoaId = pessoaDAO.create(pessoa);
            return pessoaDAO.find(pessoaId);
        }
    } 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);
    }
    return null;
}
Also used : DAOException(com.tomasio.projects.trainning.exception.DAOException) Organizacao(com.tomasio.projects.trainning.model.Organizacao) SQLException(java.sql.SQLException) Statement(java.sql.Statement) ImportTurmasImplEfetivasFromTabelao(com.tomasio.projects.trainning.migration.ImportTurmasImplEfetivasFromTabelao) HibernatePessoaDAO(com.tomasio.projects.trainning.dao.HibernatePessoaDAO) PessoaDAO(com.tomasio.projects.trainning.dao.PessoaDAO) ResultSet(java.sql.ResultSet) HibernatePessoaDAO(com.tomasio.projects.trainning.dao.HibernatePessoaDAO) Date(java.sql.Date) Pessoa(com.tomasio.projects.trainning.model.Pessoa)

Example 13 with PessoaDAO

use of com.tomasio.projects.trainning.dao.PessoaDAO in project trainning by fernandotomasio.

the class ImportConclusoesImpl method execute.

@Override
public void execute() {
    try {
        CursoDAO cursoDAO = null;
        PessoaDAO pessoaDAO = new HibernatePessoaDAO();
        ConclusaoDAO conclusaoDAO = new HibernateConclusaoDAO();
        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/dctp?user=root&password=roland");
        Statement stm = conn.createStatement();
        ResultSet rs = stm.executeQuery("SELECT * FROM pefcr");
        int i = 0;
        while (rs.next()) {
            // System.out.println(++i);
            String codigo = rs.getString("codcurso");
            String local = rs.getString("local");
            String cpf = rs.getString("cpf");
            String grau = rs.getString("grau");
            Date inicio = rs.getDate("dtInicio");
            Date termino = rs.getDate("dtTerm");
            Conclusao conclusao = new Conclusao();
            if (grau != null) {
                grau.trim();
                grau = grau.replace(",", ".");
                if (!grau.equals("")) {
                    try {
                        conclusao.setGrau(Float.parseFloat(grau));
                    } catch (NumberFormatException e) {
                    }
                }
            }
            if (local == null) {
                local = "";
            }
            Curso curso = cursoDAO.findByCodigo(codigo);
            if (curso == null) {
                continue;
            }
            Pessoa pessoa = ImportHelper.findPessoa(cpf, conn);
            if (pessoa == null) {
                System.out.println("PESSOA NÃO ENCONTRADA: " + cpf + " - " + codigo + "," + inicio + ", " + termino + ", " + local);
                continue;
            }
            SimpleDateFormat df = new SimpleDateFormat("yyyy");
            String anoString = null;
            if (inicio != null) {
                anoString = df.format(inicio);
            }
            if (anoString != null) {
                conclusao.setAno(Integer.parseInt(anoString));
            }
            conclusao.setCapacitacao(curso);
            conclusao.setLocal(local);
            if (inicio != null && termino != null) {
                Periodo periodo = new Periodo();
                periodo.setDataInicio(inicio);
                periodo.setDataTermino(termino);
                conclusao.setPeriodo(periodo);
            }
            conclusao.setPessoa(pessoa);
            conclusaoDAO.create(conclusao);
        }
        conn.close();
    } catch (SQLException ex) {
        Logger.getLogger(ImportConclusoesImpl.class.getName()).log(Level.SEVERE, null, ex);
    } catch (DAOException ex) {
        Logger.getLogger(ImportConclusoesImpl.class.getName()).log(Level.SEVERE, null, ex);
    }
}
Also used : Conclusao(com.tomasio.projects.trainning.model.Conclusao) HibernatePessoaDAO(com.tomasio.projects.trainning.dao.HibernatePessoaDAO) PessoaDAO(com.tomasio.projects.trainning.dao.PessoaDAO) HibernateConclusaoDAO(com.tomasio.projects.trainning.dao.HibernateConclusaoDAO) Periodo(com.tomasio.projects.trainning.model.Periodo) HibernateCursoDAO(com.tomasio.projects.trainning.dao.HibernateCursoDAO) CursoDAO(com.tomasio.projects.trainning.dao.CursoDAO) Pessoa(com.tomasio.projects.trainning.model.Pessoa) DAOException(com.tomasio.projects.trainning.exception.DAOException) HibernateConclusaoDAO(com.tomasio.projects.trainning.dao.HibernateConclusaoDAO) ConclusaoDAO(com.tomasio.projects.trainning.dao.ConclusaoDAO) HibernatePessoaDAO(com.tomasio.projects.trainning.dao.HibernatePessoaDAO) Curso(com.tomasio.projects.trainning.model.Curso) SimpleDateFormat(java.text.SimpleDateFormat)

Example 14 with PessoaDAO

use of com.tomasio.projects.trainning.dao.PessoaDAO in project trainning by fernandotomasio.

the class AtividadesEnsinoServiceSimpleImpl method calculateCustoRealizadoAlunos.

@Override
@Transactional(readOnly = true)
public Map<String, BigDecimal> calculateCustoRealizadoAlunos(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> 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() + 2;
                    }
                    if (intervalo <= 0) {
                        continue;
                    }
                    if (intervalo > 50) {
                        intervalo = 50;
                    }
                    for (Matricula aluno : alunos) {
                        if (aluno.isCancelada()) {
                            continue;
                        }
                        Pessoa pessoa = pessoaDAO.find(aluno.getPessoa().getId());
                        if (pessoa.getOrganizacao() != null) {
                            Organizacao organizacaoAluno = organizacaoDAO.find(pessoa.getOrganizacao().getId());
                            if (organizacaoAluno.createDTO() instanceof ExternoDTO) {
                                continue;
                            }
                            Organizacao organizacaoLocal = organizacaoDAO.find(fase.getLocal().getId());
                            if (!organizacaoAluno.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;
}
Also used : HashMap(java.util.HashMap) PessoaDAO(com.tomasio.projects.trainning.dao.PessoaDAO) CancelamentoMatricula(com.tomasio.projects.trainning.model.CancelamentoMatricula) Matricula(com.tomasio.projects.trainning.model.Matricula) NotificacaoMatricula(com.tomasio.projects.trainning.model.NotificacaoMatricula) PreMatricula(com.tomasio.projects.trainning.model.PreMatricula) BigDecimal(java.math.BigDecimal) DateTime(org.joda.time.DateTime) FaseDTO(com.tomasio.projects.trainning.dto.FaseDTO) Pessoa(com.tomasio.projects.trainning.model.Pessoa) DAOException(com.tomasio.projects.trainning.exception.DAOException) OrganizacaoDAO(com.tomasio.projects.trainning.dao.OrganizacaoDAO) TurmaEfetivaDTO(com.tomasio.projects.trainning.dto.TurmaEfetivaDTO) Organizacao(com.tomasio.projects.trainning.model.Organizacao) CancelamentoMatriculaDAO(com.tomasio.projects.trainning.dao.CancelamentoMatriculaDAO) MatriculaDAO(com.tomasio.projects.trainning.dao.MatriculaDAO) NotificacaoMatriculaDAO(com.tomasio.projects.trainning.dao.NotificacaoMatriculaDAO) PreMatriculaDAO(com.tomasio.projects.trainning.dao.PreMatriculaDAO) Days(org.joda.time.Days) ExternoDTO(com.tomasio.projects.trainning.dto.ExternoDTO) Transactional(org.springframework.transaction.annotation.Transactional)

Example 15 with PessoaDAO

use of com.tomasio.projects.trainning.dao.PessoaDAO in project trainning by fernandotomasio.

the class ImportPessoasFromSIGPESToTrainning method execute.

public void execute() {
    PessoaDAO pessoaDAO = factory.getPessoaDAO();
    OrganizacaoDAO organizacaoDA0 = factory.getOrganizacaoDAO();
    try {
        int updated = pessoaDAO.setAllInactive();
        System.out.println(updated + " registros marcados como inativos");
        Connection conn = DriverManager.getConnection("jdbc:postgresql://10.32.63.101/sigpes_interface?user=sigpesuser&password=#ccarj123#");
        Statement stm = conn.createStatement();
        ResultSet rs = stm.executeQuery("SELECT * FROM militares");
        ArrayList<String> rejectedCPF = new ArrayList<String>();
        ArrayList<String> organizacoesInexistentes = new ArrayList<String>();
        int i = 0;
        while (rs.next()) {
            i++;
            String nrOrdem = rs.getString("nr_ordem");
            String nrCpf = rs.getString("nr_cpf");
            String sgQdr = rs.getString("sg_qdr");
            String sgPosto = rs.getString("sg_posto");
            String sgEspd = rs.getString("sg_espd");
            String nmGuerra = rs.getString("nm_guerra");
            String nmPessoa = rs.getString("nm_pessoa");
            Date dtPraca = rs.getDate("dt_praca");
            Date dtApres = rs.getDate("dt_apres_atual");
            Date dtNasc = rs.getDate("dt_nasc");
            String cdOrg = rs.getString("cd_org");
            String cdOrgSvc = rs.getString("cd_org_svc");
            String pesFisType = rs.getString("pesfis_type");
            String sgSexo = rs.getString("sg_sexo");
            String nrAntiguidade = rs.getString("nr_antiguidade");
            String nmEmail = rs.getString("nm_email");
            if (nrCpf == null || nrCpf.length() != 11) {
                rejectedCPF.add(nmPessoa + " " + nrCpf);
                continue;
            }
            String formmatedCPF = nrCpf.substring(0, 3) + "." + nrCpf.substring(3, 6) + "." + nrCpf.substring(6, 9) + "-" + nrCpf.substring(9, 11);
            if (nrOrdem.length() == 7) {
                nrOrdem = nrOrdem.substring(0, 3) + "." + nrOrdem.substring(3, 6) + "-" + nrOrdem.substring(6, 7);
            }
            Pessoa pessoa = pessoaDAO.findByCPF(formmatedCPF);
            String sigla = getSiglaOrganizacao(cdOrg);
            Organizacao organizacao = organizacaoDA0.findBySigla(sigla);
            if (organizacao == null) {
                String s = sigla.replace("-", "");
                organizacao = organizacaoDA0.findBySigla(s);
            }
            if (organizacao == null) {
                String s = sigla.replace(" ", "");
                organizacao = organizacaoDA0.findBySigla(s);
            }
            if (organizacao == null) {
                String s = sigla.replace("-", " ");
                organizacao = organizacaoDA0.findBySigla(s);
            }
            if (organizacao == null) {
                String s = sigla.replace("/", "").replace(" ", "");
                organizacao = organizacaoDA0.findBySigla(s);
            }
            if (pessoa == null) {
                pessoa = new Pessoa();
                pessoa.setNome(nmPessoa);
                pessoa.setCpf(formmatedCPF);
                pessoa.setEspecialidade(sgEspd);
                if (nrAntiguidade != null) {
                    int antiguidade = Integer.parseInt(nrAntiguidade);
                    pessoa.setAntiguidade(antiguidade);
                }
                pessoa.setEmailSIGPES(nmEmail);
                pessoa.setNomeGuerra(nmGuerra);
                if (pesFisType != null && pesFisType.equals("CIVIL")) {
                    pessoa.setPosto("CV");
                } else {
                    pessoa.setPosto(sgPosto);
                }
                if (pesFisType != null && pesFisType.equals("TTC")) {
                    pessoa.setQuadro("R1");
                } else {
                    pessoa.setQuadro(sgQdr);
                }
                pessoa.setSaram(nrOrdem);
                if (organizacao != null) {
                    pessoa.setOrganizacao(organizacao);
                }
                pessoa.setSexo(sgSexo);
                pessoa.setDataApresAtual(dtApres);
                pessoa.setDataNascimento(dtNasc);
                pessoa.setDataPraca(dtPraca);
                pessoa.setImported(true);
                pessoa.setAtivo(true);
                try {
                    pessoaDAO.create(pessoa);
                    System.out.println(i + " CREATE PESSOA:" + pessoa.getCpf() + ", " + pessoa.getNome() + ", antiguidade: " + pessoa.getAntiguidade());
                } catch (Exception e) {
                    System.out.println("ERRO AO CRIAR PESSOA: " + pessoa.getCpf() + ", " + pessoa.getNome() + ", antiguidade: " + pessoa.getAntiguidade());
                }
            } else {
                pessoa.setNome(nmPessoa);
                pessoa.setEspecialidade(sgEspd);
                pessoa.setNomeGuerra(nmGuerra);
                System.out.println("Unparsed Antiguidade" + nrAntiguidade);
                if (nrAntiguidade != null) {
                    int antiguidade = Integer.parseInt(nrAntiguidade);
                    System.out.println("Parsed Antiguidade: " + antiguidade);
                    pessoa.setAntiguidade(antiguidade);
                }
                pessoa.setEmailSIGPES(nmEmail);
                if (pesFisType != null && pesFisType.equals("TTC")) {
                    pessoa.setQuadro("R1");
                } else {
                    pessoa.setQuadro(sgQdr);
                }
                if (pesFisType != null && pesFisType.equals("CIVIL")) {
                    pessoa.setPosto("CV");
                } else {
                    pessoa.setPosto(sgPosto);
                }
                pessoa.setSaram(nrOrdem);
                if (organizacao != null) {
                    pessoa.setOrganizacao(organizacao);
                }
                pessoa.setSexo(sgSexo);
                pessoa.setDataApresAtual(dtApres);
                pessoa.setDataNascimento(dtNasc);
                pessoa.setDataPraca(dtPraca);
                pessoa.setImported(true);
                pessoa.setAtivo(true);
                try {
                    pessoaDAO.update(pessoa);
                    System.out.println(i + " UPDATE PESSOA:" + pessoa.getCpf() + ", " + pessoa.getNome() + ", antiguidade: " + pessoa.getAntiguidade());
                } catch (Exception e) {
                    System.out.println("ERRO AO ATUALIZAR PESSOA:" + pessoa.getCpf() + ", " + pessoa.getNome() + ", antiguidade: " + pessoa.getAntiguidade());
                }
            }
        }
        System.out.println("CPFS REJEITADOS ------------------------------");
        for (String cpf : rejectedCPF) {
            System.out.println(cpf);
        }
        System.out.println("OMS NÃO CADASTRADAS ------------------------------");
        for (String o : organizacoesInexistentes) {
            System.out.println(o);
        }
        conn.close();
    } catch (DAOException ex) {
        Logger.getLogger(ImportPessoasFromSIGPESToTrainning.class.getName()).log(Level.SEVERE, null, ex);
    } catch (SQLException ex) {
        Logger.getLogger(this.getClass().getName()).log(Level.SEVERE, null, ex);
    }
}
Also used : HibernatePessoaDAO(com.tomasio.projects.trainning.dao.HibernatePessoaDAO) PessoaDAO(com.tomasio.projects.trainning.dao.PessoaDAO) ArrayList(java.util.ArrayList) DAOException(com.tomasio.projects.trainning.exception.DAOException) Pessoa(com.tomasio.projects.trainning.model.Pessoa) DAOException(com.tomasio.projects.trainning.exception.DAOException) HibernateOrganizacaoDAO(com.tomasio.projects.trainning.dao.HibernateOrganizacaoDAO) OrganizacaoDAO(com.tomasio.projects.trainning.dao.OrganizacaoDAO) Organizacao(com.tomasio.projects.trainning.model.Organizacao)

Aggregations

PessoaDAO (com.tomasio.projects.trainning.dao.PessoaDAO)23 DAOException (com.tomasio.projects.trainning.exception.DAOException)22 HibernatePessoaDAO (com.tomasio.projects.trainning.dao.HibernatePessoaDAO)21 Pessoa (com.tomasio.projects.trainning.model.Pessoa)20 Organizacao (com.tomasio.projects.trainning.model.Organizacao)17 OrganizacaoDAO (com.tomasio.projects.trainning.dao.OrganizacaoDAO)11 ImportTurmasImplEfetivasFromTabelao (com.tomasio.projects.trainning.migration.ImportTurmasImplEfetivasFromTabelao)10 ResultSet (java.sql.ResultSet)10 SQLException (java.sql.SQLException)10 Statement (java.sql.Statement)10 HibernateOrganizacaoDAO (com.tomasio.projects.trainning.dao.HibernateOrganizacaoDAO)9 Date (java.sql.Date)8 HibernateIndicacaoDAO (com.tomasio.projects.trainning.dao.HibernateIndicacaoDAO)6 IndicacaoDAO (com.tomasio.projects.trainning.dao.IndicacaoDAO)6 MatriculaDAO (com.tomasio.projects.trainning.dao.MatriculaDAO)6 Date (java.util.Date)5 HibernateMatriculaDAO (com.tomasio.projects.trainning.dao.HibernateMatriculaDAO)4 Matricula (com.tomasio.projects.trainning.model.Matricula)3 Periodo (com.tomasio.projects.trainning.model.Periodo)3 AnotacaoDAO (com.tomasio.projects.trainning.dao.AnotacaoDAO)2