Search in sources :

Example 6 with OdfTable

use of org.odftoolkit.odfdom.doc.table.OdfTable in project trainning by fernandotomasio.

the class EXT001ODF method makeReport.

@Override
public void makeReport() {
    AtividadesEnsinoService service = (AtividadesEnsinoService) services.get("atividadesEnsinoService");
    try {
        odt = OdfTextDocument.newTextDocument();
        String cpf = (String) params.get("cpf");
        try {
            Connection connection = openConnection();
            Statement stm = connection.createStatement();
            Statement stm2 = connection.createStatement();
            ResultSet rs = stm.executeQuery("select * from pefcam where IDENT " + "in (404904,383370,403364,419656,344119,252675,404490,308422,380118,393494,415809,322198)");
            while (rs.next()) {
                String posto = rs.getString("POSTO");
                String quadro = rs.getString("QUADRO");
                String nome = rs.getString("NOME");
                String especialidade = rs.getString("ESPEC");
                String identidade = rs.getString("IDENT");
                String tarjeta = posto + " " + quadro + " " + especialidade + " " + nome;
                odt.newParagraph(tarjeta);
                ResultSet rsCursos = stm2.executeQuery("SELECT * FROM pefcrm inner join dctp.petc on pefcrm.codcurso = dctp.petc.codcurso WHERE IDENT=" + identidade + "  order by pefcrm.codcurso");
                rsCursos.last();
                int size = rsCursos.getRow();
                rsCursos.beforeFirst();
                OdfTable indicacoesTable = OdfTable.newTable(odt, size, 2);
                OdfTableCell codigoHeader = indicacoesTable.getCellByPosition(0, 0);
                codigoHeader.setStringValue("Codigo");
                codigoHeader.setHorizontalAlignment("center");
                OdfTableCell cursoHeader = indicacoesTable.getCellByPosition(1, 0);
                cursoHeader.setStringValue("Descricao");
                cursoHeader.setHorizontalAlignment("center");
                int i = 0;
                while (rsCursos.next()) {
                    String codCurso = rsCursos.getString("CODCURSO");
                    String nomeCurso = rsCursos.getString("nomecurso");
                    OdfTableCell codigoCell = indicacoesTable.getCellByPosition(0, i + 1);
                    codigoCell.setStringValue(codCurso);
                    OdfTableCell cursoCell = indicacoesTable.getCellByPosition(1, i + 1);
                    cursoCell.setStringValue(nomeCurso);
                    i++;
                }
            }
            connection.close();
        } catch (SQLException ex) {
            ex.printStackTrace();
        }
        odt.save(os);
    } catch (Exception ex) {
        Logger.getLogger(EXT001ODF.class.getName()).log(Level.SEVERE, null, ex);
    }
}
Also used : OdfTableCell(org.odftoolkit.odfdom.doc.table.OdfTableCell) SQLException(java.sql.SQLException) Statement(java.sql.Statement) Connection(java.sql.Connection) ResultSet(java.sql.ResultSet) OdfTable(org.odftoolkit.odfdom.doc.table.OdfTable) SQLException(java.sql.SQLException) AtividadesEnsinoService(com.tomasio.projects.trainning.interfaces.AtividadesEnsinoService)

Example 7 with OdfTable

use of org.odftoolkit.odfdom.doc.table.OdfTable in project trainning by fernandotomasio.

the class TCATrainningDocumentODF method createAnexo1.

private void createAnexo1(Map<Long, CursoDTO> cursosMap) {
    // ReportUtil.getCursos(cursosMap);
    List<CursoDTO> cursos = null;
    try {
        OdfTable cursosTable = OdfTable.newTable(odt, cursos.size(), 2);
        for (int i = 0; i < cursos.size(); i++) {
            CursoDTO curso = cursos.get(i);
            if (curso == null) {
                continue;
            }
            OdfTableCell codigoCell = cursosTable.getCellByPosition(0, i);
            codigoCell.setStringValue(curso.getCodigo());
            OdfTableCell descricaoCell = cursosTable.getCellByPosition(1, i);
            descricaoCell.setStringValue(curso.getDescricao());
        }
        odt.newParagraph();
    } catch (Exception ex) {
        Logger.getLogger(TCATrainningDocumentODF.class.getName()).log(Level.SEVERE, null, ex);
    }
}
Also used : OdfTableCell(org.odftoolkit.odfdom.doc.table.OdfTableCell) OdfTable(org.odftoolkit.odfdom.doc.table.OdfTable) CursoDTO(com.tomasio.projects.trainning.dto.CursoDTO) IOException(java.io.IOException)

Example 8 with OdfTable

use of org.odftoolkit.odfdom.doc.table.OdfTable in project trainning by fernandotomasio.

the class TCATrainningDocumentODF method createAnexo2.

private void createAnexo2(List<TurmaPlanejadaDTO> turmasPlanejadas, Map<Long, CursoDTO> cursosMap) {
    Map<Long, List<TurmaDTO>> turmasMap = // ReportUtil.buildTurmasMapByCurso(turmasPlanejadas);
    null;
    Map<Long, AnotacaoDTO[]> anotacoesMap = new HashMap<Long, AnotacaoDTO[]>();
    // ReportUtil.arrangeAnotacoesMapByTurmas(turmasPlanejadas, anotacoesMap);
    // ReportUtil.getCursos(cursosMap);
    List<CursoDTO> cursos = null;
    try {
        for (CursoDTO curso : cursos) {
            if (curso == null) {
                continue;
            }
            odt.newParagraph(curso.getCodigo() + " - " + curso.getDescricao());
            odt.newParagraph();
            List<TurmaDTO> turmas = turmasMap.get(curso.getId());
            FolhaRostoDTO folha = planningService.findFolhaRosto(curso.getCodigo());
            if (folha == null) {
                System.out.println("folha nula" + curso.getCodigo());
            } else {
                odt.newParagraph("FOLHA DE ROSTO:");
                OdfTable folhaDeRostoTable = OdfTable.newTable(odt, 5, 1);
                OdfTableCell objetivoCell = folhaDeRostoTable.getCellByPosition(0, 0);
                objetivoCell.setStringValue("OBJETIVO: \n" + folha.getObjetivo());
                OdfTableCell nivelCell = folhaDeRostoTable.getCellByPosition(0, 1);
                nivelCell.setStringValue(folha.getNivel());
                String numero = "";
                if (curso.getDuracao() == 1) {
                    numero = "dia útil";
                } else {
                    numero = "dias úteis";
                }
                OdfTableCell duracaoCell = folhaDeRostoTable.getCellByPosition(0, 2);
                duracaoCell.setStringValue("DURAÇÃO: " + NumberConverterHelper.convert(curso.getDuracao()) + " " + numero);
                OdfTableCell requisitosCell = folhaDeRostoTable.getCellByPosition(0, 3);
                requisitosCell.setStringValue("PRÉ-REQUISITOS: \n" + folha.getPreRequisitos());
                OdfTableCell disciplinasCell = folhaDeRostoTable.getCellByPosition(0, 4);
                disciplinasCell.setStringValue("DISCIPLINAS: \n" + folha.getDisciplinas());
            }
            odt.newParagraph();
            odt.newParagraph("TURMAS PLANEJADAS:");
            if (turmas != null) {
                for (TurmaDTO turma : turmas) {
                    TurmaPlanejadaDTO turmaPlanejada = (TurmaPlanejadaDTO) turma;
                    String textTurma = "";
                    if (turmaPlanejada.getNumeroTurma() < 10) {
                        textTurma = " - TU 0";
                    } else {
                        textTurma = " - TU ";
                    }
                    odt.newParagraph(curso.getCodigo() + textTurma + String.valueOf(turmaPlanejada.getNumeroTurma()));
                    odt.newParagraph("Local de Realização: " + turmaPlanejada.getLocal());
                    Calendar calendar = Calendar.getInstance();
                    calendar.setTime(turma.getDataInicio());
                    calendar.add(Calendar.DAY_OF_MONTH, -30);
                    odt.newParagraph("Prazo para Indicação: " + df.format(calendar.getTime()));
                    odt.newParagraph("Vagas: " + String.valueOf(turma.getQuantidadeVagas()));
                    odt.newParagraph("Período: ");
                    FaseDTO[] fases = turmaPlanejada.getFases();
                    OdfTable fasesTable = OdfTable.newTable(odt, fases.length + 1, 4);
                    OdfTableCell modadidadeHeader = fasesTable.getCellByPosition(0, 0);
                    modadidadeHeader.setStringValue("Modalidade");
                    modadidadeHeader.setHorizontalAlignment("center");
                    OdfTableCell localHeader = fasesTable.getCellByPosition(1, 0);
                    localHeader.setStringValue("Local");
                    localHeader.setHorizontalAlignment("center");
                    OdfTableCell inicioHeader = fasesTable.getCellByPosition(2, 0);
                    inicioHeader.setStringValue("Início");
                    inicioHeader.setHorizontalAlignment("center");
                    OdfTableCell terminoHeader = fasesTable.getCellByPosition(3, 0);
                    terminoHeader.setStringValue("Término");
                    terminoHeader.setHorizontalAlignment("center");
                    for (int i = 0; i < fases.length; i++) {
                        String local = "A DEFINIR";
                        if (fases[i].getLocal() != null) {
                            local = fases[i].getLocal().getSigla();
                        }
                        String dataInicio = "A DEFINIR";
                        if (fases[i].getDataInicio() != null) {
                            dataInicio = df.format(fases[i].getDataInicio());
                        }
                        String dataTermino = "A DEFINIR";
                        if (fases[i].getDataTermino() != null) {
                            dataTermino = df.format(fases[i].getDataTermino());
                        }
                        OdfTableCell modadidadeCell = fasesTable.getCellByPosition(0, i + 1);
                        modadidadeCell.setStringValue(fases[i].getDescricao());
                        OdfTableCell localCell = fasesTable.getCellByPosition(1, i + 1);
                        localCell.setStringValue(local);
                        localCell.setHorizontalAlignment("center");
                        OdfTableCell inicioCell = fasesTable.getCellByPosition(2, i + 1);
                        inicioCell.setStringValue(dataInicio);
                        inicioCell.setHorizontalAlignment("center");
                        OdfTableCell terminoCell = fasesTable.getCellByPosition(3, i + 1);
                        terminoCell.setStringValue(dataTermino);
                        terminoCell.setHorizontalAlignment("center");
                    }
                    odt.newParagraph("Distribuição de Vagas:");
                    TreinamentoPlanejadoDTO[] treinamentosPlanejados = null;
                    // turmaPlanejada.getTreinamentosPlanejados();
                    Arrays.sort(treinamentosPlanejados, new Comparator<TreinamentoPlanejadoDTO>() {

                        @Override
                        public int compare(TreinamentoPlanejadoDTO o1, TreinamentoPlanejadoDTO o2) {
                            return o1.getOrganizacao().getSigla().compareTo(o2.getOrganizacao().getSigla());
                        }
                    });
                    OdfTable planejadosTable = OdfTable.newTable(odt, treinamentosPlanejados.length + 1, 2);
                    OdfTableCell unidadeHeader = planejadosTable.getCellByPosition(0, 0);
                    unidadeHeader.setStringValue("Organização");
                    unidadeHeader.setHorizontalAlignment("center");
                    OdfTableCell vagasHeader = planejadosTable.getCellByPosition(1, 0);
                    vagasHeader.setStringValue("Vagas");
                    vagasHeader.setHorizontalAlignment("center");
                    for (int i = 0; i < treinamentosPlanejados.length; i++) {
                        OdfTableCell unidadeCell = planejadosTable.getCellByPosition(0, i + 1);
                        unidadeCell.setStringValue(treinamentosPlanejados[i].getOrganizacao().getSigla());
                        OdfTableCell vagasCell = planejadosTable.getCellByPosition(1, i + 1);
                        vagasCell.setStringValue(String.valueOf(treinamentosPlanejados[i].getQuantidade()));
                        vagasCell.setHorizontalAlignment("center");
                    }
                    AnotacaoDTO[] listAnotacoes = anotacoesMap.get(turma.getId());
                    String anotacao = "";
                    if (anotacoesMap.get(turma.getId()) != null) {
                        for (AnotacaoDTO anotacaoDTO : listAnotacoes) {
                            if (!anotacaoDTO.isVisibleInTca()) {
                                anotacao += anotacaoDTO.getTexto() + "\n";
                            }
                        }
                    }
                    if (listAnotacoes != null && listAnotacoes.length > 0) {
                        odt.newParagraph("Observações: " + anotacao);
                    }
                    odt.newParagraph();
                }
            }
        }
    } catch (Exception ex) {
        Logger.getLogger(TCATrainningDocumentODF.class.getName()).log(Level.SEVERE, null, ex);
    }
}
Also used : HashMap(java.util.HashMap) TurmaDTO(com.tomasio.projects.trainning.dto.TurmaDTO) FaseDTO(com.tomasio.projects.trainning.dto.FaseDTO) List(java.util.List) TreinamentoPlanejadoDTO(com.tomasio.projects.trainning.dto.TreinamentoPlanejadoDTO) TurmaPlanejadaDTO(com.tomasio.projects.trainning.dto.TurmaPlanejadaDTO) Calendar(java.util.Calendar) FolhaRostoDTO(com.tomasio.projects.trainning.dto.FolhaRostoDTO) IOException(java.io.IOException) OdfTableCell(org.odftoolkit.odfdom.doc.table.OdfTableCell) AnotacaoDTO(com.tomasio.projects.trainning.dto.AnotacaoDTO) OdfTable(org.odftoolkit.odfdom.doc.table.OdfTable) CursoDTO(com.tomasio.projects.trainning.dto.CursoDTO)

Example 9 with OdfTable

use of org.odftoolkit.odfdom.doc.table.OdfTable in project trainning by fernandotomasio.

the class EXC009ODF method makeReport.

@Override
public void makeReport() {
    AtividadesEnsinoService service = (AtividadesEnsinoService) services.get("atividadesEnsinoService");
    OrganizationalService organizationalService = (OrganizationalService) services.get("organizationalService");
    try {
        odt = OdfTextDocument.newTextDocument();
        Long turmaId = (Long) params.get("turmaId");
        TurmaEfetivaDTO turma = service.findTurmaEfetiva(turmaId);
        OrganizacaoDTO gestora = organizationalService.findOrganizacao(turma.getOrganizacaoGestoraId());
        OrganizacaoDTO responsavel = organizationalService.findOrganizacao(turma.getResponsavelId());
        IndicacaoDTO[] indicacoesAlunos = service.findAllIndicacoesAlunosSelecionadosForOrdemMatricula(turmaId);
        IndicacaoInstrutorDTO[] indicacoesInstrutores = service.findAllIndicacoesInstrutoresSelecionados(turmaId);
        // ordenar por nome
        // Arrays.sort(indicacoesAlunos, new Comparator<IndicacaoDTO>() {
        // @Override
        // public int compare(IndicacaoDTO o1, IndicacaoDTO o2) {
        // return o1.getPessoa().getNome().compareTo(o2.getPessoa().getNome());
        // }
        // });
        // manipulação de datas
        GregorianCalendar cal = new GregorianCalendar();
        String ano = "" + cal.get(Calendar.YEAR);
        String mes = "" + cal.get(Calendar.MONTH);
        String dia = "" + cal.get(Calendar.DAY_OF_MONTH);
        SimpleDateFormat dfMes = new SimpleDateFormat("MMMM");
        // CABECALHO
        String cabecalho = "ITEM Nº XXX/" + ano + "/O - " + gestora.getSigla() + " - ";
        // CABECALHO2
        String cabecalho2 = "1 - " + turma.getCurso().getDescricao() + " (" + turma.getCurso().getCodigo() + ")" + " - ORDEM DE MATRÍCULA";
        // verificar se tem civil
        int numCV = 0;
        for (IndicacaoDTO indicacoe : indicacoesAlunos) {
            PessoaDTO pessoa = organizationalService.findPessoa(indicacoe.getPessoa().getId());
            String posto = pessoa.getPosto();
            if ("CV".equals(posto)) {
                numCV++;
            }
        }
        String civilNaTurma = "";
        if (numCV == 1) {
            civilNaTurma += " e civil";
        } else if (numCV > 1) {
            civilNaTurma += " e civís";
        }
        // MONTAGEM DO TEXTO SOBRE OS PERÍODOS PARA COMPOR 1º PARAGRAFO
        FaseDTO[] periodos = turma.getFases();
        String textoPeriodo = "";
        int contadorDeFases = 0;
        for (FaseDTO faseDTO : periodos) {
            contadorDeFases++;
        }
        if (contadorDeFases > 1) {
            if (!gestora.getSigla().equals("DECEA")) {
                textoPeriodo += "a ser realizado no formato " + turma.getTipoTurma() + ", ";
            }
            contadorDeFases = 1;
            for (FaseDTO faseDTO : periodos) {
                if (turma.getFases() != null) {
                    String local = "";
                    if (faseDTO.getLocal() != null) {
                        local = faseDTO.getLocal().getSigla();
                    }
                    String tipoFase = "";
                    if (faseDTO.getTipoFase() != null) {
                        tipoFase = faseDTO.getTipoFase();
                    }
                    textoPeriodo += "sendo a " + contadorDeFases + "ª fase ";
                    if (tipoFase.equals("EAD")) {
                        textoPeriodo += "à distância (" + local + ") ";
                    } else {
                        textoPeriodo += tipoFase + ", a ser realizada no " + local + ", ";
                    }
                    textoPeriodo += "no período de " + faseDTO.getPeriodoFormatted() + ", ";
                    contadorDeFases++;
                }
            }
        } else {
            // igual a uma fase
            for (FaseDTO faseDTO : periodos) {
                if (turma.getFases() != null) {
                    String local = "";
                    if (faseDTO.getLocal() != null) {
                        local = faseDTO.getLocal().getSigla();
                    }
                    String tipoFase = "";
                    if (faseDTO.getTipoFase() != null) {
                        tipoFase = faseDTO.getLocal().getSigla();
                    }
                    if (tipoFase.equals("EAD")) {
                        textoPeriodo += "a ser realizado no formato à distância (" + local + ") ";
                    } else {
                        textoPeriodo += "a ser realizado no formato " + tipoFase + ", no " + local + ", ";
                    }
                    textoPeriodo += "no período de " + faseDTO.getPeriodoFormatted() + ", ";
                }
            }
        }
        // 1º PARAGRAFO
        String inicial = "";
        if (gestora.getSigla().equals("DECEA")) {
            inicial += "Seja dada Ordem de Matrícula, aos militares" + civilNaTurma + " abaixo relacionados, no ";
            inicial += turma.getCurso().getDescricao() + " (" + turma.getCurso().getCodigo() + ", turma " + turma.getNumeroTurma() + ")";
            inicial += ", ";
            // TEXTO SOBRE OS PERÍODOS
            inicial += textoPeriodo;
            if (turma.getResponsavelId() != null) {
                OrganizacaoDTO organizacaoResponsavel = organizationalService.findOrganizacao(turma.getResponsavelId());
                if (!"ILA".equals(organizacaoResponsavel.getSigla())) {
                    inicial += "sob responsabilidade do " + organizacaoResponsavel.getSigla() + ", ";
                } else {
                    inicial += "sob responsabilidade do " + organizacaoResponsavel.getSigla() + ".";
                }
            } else {
                inicial += "sob responsabilidade do " + responsavel.getSigla() + ".";
            }
        } else {
            inicial += "Seja dada Ordem de Matrícula, aos militares" + civilNaTurma + " abaixo relacionados, no ";
            inicial += turma.getCurso().getDescricao() + " (" + turma.getCurso().getCodigo() + "-" + turma.getNumeroTurma() + ")";
            inicial += ", ";
            // TEXTO SOBRE OS PERÍODOS
            inicial += textoPeriodo;
            if (turma.getResponsavelId() != null) {
                OrganizacaoDTO organizacaoResponsavel = organizationalService.findOrganizacao(turma.getResponsavelId());
                if (!"ILA".equals(organizacaoResponsavel.getSigla())) {
                    inicial += "sob responsabilidade do " + organizacaoResponsavel.getSigla() + " e do ILA, ";
                } else {
                    inicial += "sob responsabilidade do " + organizacaoResponsavel.getSigla() + ".";
                }
            } else {
                inicial += "sob responsabilidade do " + responsavel.getSigla() + ".";
            }
        }
        // 2º PARAGRAFO
        // String segundoParagrafo = "";
        // segundoParagrafo += "A Portaria de Ativação encontra-se publicada no BCA nº XXX, de " + dia + " de " + dfMes.format(new Date()).toLowerCase() + " de " + ano + ".";
        // MONTANDO O ARQUIVO FINAL
        odt.newParagraph(cabecalho);
        odt.newParagraph("");
        odt.newParagraph(cabecalho2);
        odt.newParagraph("");
        odt.newParagraph(inicial);
        odt.newParagraph("");
        // odt.newParagraph(segundoParagrafo);
        odt.newParagraph("");
        odt.newParagraph("INSTRUTORES");
        odt.newParagraph("");
        int cont = 1;
        if (gestora.getSigla().equals("DECEA")) {
            // MONTAGEM DA TABELA DE INSTRUTORES
            OdfTable indicacoesTable2 = OdfTable.newTable(odt, indicacoesInstrutores.length + 1, 6);
            OdfTableCell contHeader2 = indicacoesTable2.getCellByPosition(0, 0);
            contHeader2.setStringValue(" ");
            contHeader2.setHorizontalAlignment("center");
            OdfTableCell postoHeader2 = indicacoesTable2.getCellByPosition(1, 0);
            postoHeader2.setStringValue("PT/GD");
            postoHeader2.setHorizontalAlignment("center");
            OdfTableCell especialidadeHeader2 = indicacoesTable2.getCellByPosition(2, 0);
            especialidadeHeader2.setStringValue("ESP");
            especialidadeHeader2.setHorizontalAlignment("center");
            OdfTableCell nomeHeader2 = indicacoesTable2.getCellByPosition(3, 0);
            nomeHeader2.setStringValue("NOME");
            nomeHeader2.setHorizontalAlignment("center");
            OdfTableCell periodoHeader2 = indicacoesTable2.getCellByPosition(4, 0);
            periodoHeader2.setStringValue("PERÍODO");
            periodoHeader2.setHorizontalAlignment("center");
            // OdfTableCell saramHeader2 = indicacoesTable2.getCellByPosition(5, 0);
            // saramHeader2.setStringValue("SARAM");
            // saramHeader2.setHorizontalAlignment("center");
            OdfTableCell cpfHeader2 = indicacoesTable2.getCellByPosition(5, 0);
            cpfHeader2.setStringValue("CPF");
            cpfHeader2.setHorizontalAlignment("center");
            OdfTableCell organizacaoHeader2 = indicacoesTable2.getCellByPosition(6, 0);
            organizacaoHeader2.setStringValue("OM");
            organizacaoHeader2.setHorizontalAlignment("center");
            // LOOP DOAS INSTRUTORES
            for (int i = 0; i < indicacoesInstrutores.length; i++) {
                PessoaDTO pessoa = organizationalService.findPessoa(indicacoesInstrutores[i].getPessoa().getId());
                String posto = pessoa.getPosto();
                String especialidade = pessoa.getEspecialidade();
                String nome = pessoa.getNome();
                String saram = pessoa.getSaram();
                String cpf = pessoa.getCpf();
                String periodo = indicacoesInstrutores[i].getPeriodo().getPeriodoShortFormatted();
                OrganizacaoDTO organizacao = null;
                String siglaOrganizacao = "";
                if (pessoa.getOrganizacao() != null) {
                    organizacao = organizationalService.findOrganizacao(pessoa.getOrganizacao().getId());
                    siglaOrganizacao = organizacao.getSigla();
                } else {
                    siglaOrganizacao = " - ";
                }
                OdfTableCell contCell = indicacoesTable2.getCellByPosition(0, i + 1);
                contCell.setStringValue(cont + "");
                contCell.setHorizontalAlignment("center");
                OdfTableCell postoCell = indicacoesTable2.getCellByPosition(1, i + 1);
                postoCell.setStringValue(posto);
                postoCell.setHorizontalAlignment("center");
                OdfTableCell especialidadeCell = indicacoesTable2.getCellByPosition(2, i + 1);
                especialidadeCell.setStringValue(especialidade);
                especialidadeCell.setHorizontalAlignment("center");
                OdfTableCell nomeCell = indicacoesTable2.getCellByPosition(3, i + 1);
                nomeCell.setStringValue(nome);
                nomeCell.setHorizontalAlignment("center");
                OdfTableCell periodoCell = indicacoesTable2.getCellByPosition(4, i + 1);
                periodoCell.setStringValue(periodo);
                periodoCell.setHorizontalAlignment("center");
                // OdfTableCell saramCell = indicacoesTable2.getCellByPosition(5, i + 1);
                // saramCell.setStringValue(saram);
                // saramCell.setHorizontalAlignment("center");
                OdfTableCell cpfCell = indicacoesTable2.getCellByPosition(5, i + 1);
                cpfCell.setStringValue(cpf);
                cpfCell.setHorizontalAlignment("center");
                OdfTableCell organizacaoCell = indicacoesTable2.getCellByPosition(6, i + 1);
                organizacaoCell.setStringValue(siglaOrganizacao);
                organizacaoCell.setHorizontalAlignment("center");
                cont++;
            }
        }
        // FIM DA MONTAGEM DA TABELA DE INSTRUTORES
        odt.newParagraph("");
        odt.newParagraph("ALUNOS");
        odt.newParagraph("");
        // MONTAGEM DA TABELA DE ALUNOS
        IndicacaoDTO[] indicacoes = indicacoesAlunos;
        OdfTable indicacoesTable = OdfTable.newTable(odt, indicacoes.length + 1, 6);
        OdfTableCell contHeader = indicacoesTable.getCellByPosition(0, 0);
        contHeader.setStringValue(" ");
        contHeader.setHorizontalAlignment("center");
        OdfTableCell postoHeader = indicacoesTable.getCellByPosition(1, 0);
        postoHeader.setStringValue("PT/GD");
        postoHeader.setHorizontalAlignment("center");
        OdfTableCell especialidadeHeader = indicacoesTable.getCellByPosition(2, 0);
        especialidadeHeader.setStringValue("ESP");
        especialidadeHeader.setHorizontalAlignment("center");
        OdfTableCell nomeHeader = indicacoesTable.getCellByPosition(3, 0);
        nomeHeader.setStringValue("NOME");
        nomeHeader.setHorizontalAlignment("center");
        if (gestora.getSigla().equals("DECEA")) {
            OdfTableCell cpfHeader = indicacoesTable.getCellByPosition(4, 0);
            cpfHeader.setStringValue("CPF");
            cpfHeader.setHorizontalAlignment("center");
        } else {
            OdfTableCell saramHeader = indicacoesTable.getCellByPosition(4, 0);
            saramHeader.setStringValue("SARAM");
            saramHeader.setHorizontalAlignment("center");
        }
        OdfTableCell organizacaoHeader = indicacoesTable.getCellByPosition(5, 0);
        organizacaoHeader.setStringValue("OM");
        organizacaoHeader.setHorizontalAlignment("center");
        // LOOP DOAS ALUNOS
        cont = 1;
        for (int i = 0; i < indicacoes.length; i++) {
            PessoaDTO pessoa = organizationalService.findPessoa(indicacoes[i].getPessoa().getId());
            String posto = pessoa.getPosto();
            String especialidade = pessoa.getEspecialidade();
            String nome = pessoa.getNome();
            String saram = pessoa.getSaram();
            String cpf = pessoa.getCpf();
            OrganizacaoDTO organizacao = null;
            String siglaOrganizacao = "";
            if (pessoa.getOrganizacao() != null) {
                organizacao = organizationalService.findOrganizacao(pessoa.getOrganizacao().getId());
                siglaOrganizacao = organizacao.getSigla();
            } else {
                siglaOrganizacao = " - ";
            }
            OdfTableCell contCell = indicacoesTable.getCellByPosition(0, i + 1);
            contCell.setStringValue(cont + "");
            contCell.setHorizontalAlignment("center");
            OdfTableCell postoCell = indicacoesTable.getCellByPosition(1, i + 1);
            postoCell.setStringValue(posto);
            postoCell.setHorizontalAlignment("center");
            OdfTableCell especialidadeCell = indicacoesTable.getCellByPosition(2, i + 1);
            especialidadeCell.setStringValue(especialidade);
            especialidadeCell.setHorizontalAlignment("center");
            OdfTableCell nomeCell = indicacoesTable.getCellByPosition(3, i + 1);
            nomeCell.setStringValue(nome);
            nomeCell.setHorizontalAlignment("center");
            if (gestora.getSigla().equals("DECEA")) {
                OdfTableCell cpfCell = indicacoesTable.getCellByPosition(4, i + 1);
                cpfCell.setStringValue(cpf);
                cpfCell.setHorizontalAlignment("center");
            } else {
                OdfTableCell saramCell = indicacoesTable.getCellByPosition(4, i + 1);
                saramCell.setStringValue(saram);
                saramCell.setHorizontalAlignment("center");
            }
            OdfTableCell organizacaoCell = indicacoesTable.getCellByPosition(5, i + 1);
            organizacaoCell.setStringValue(siglaOrganizacao);
            organizacaoCell.setHorizontalAlignment("center");
            cont++;
        }
        // FIM DA MONTAGEM DA TABELA DE ALUNOS
        if (!gestora.getSigla().equals("DECEA")) {
            // PREENCHIMENTO DO FECHO DO ARQUIVO
            odt.newParagraph("");
            // odt.newParagraph("Rio de Janeiro, " + dia + " de " + dfMes.format(new Date()).toLowerCase() + " de " + ano + ".");
            odt.newParagraph("Confeccionado por:");
            odt.newParagraph("");
            odt.newParagraph("JANE PEREIRA MENDES 3S SAD");
            odt.newParagraph("Auxiliar da 1EM");
            odt.newParagraph("");
            odt.newParagraph("Revisado por:");
            odt.newParagraph("");
            odt.newParagraph("NILO JORGE SOARES 1º Ten QOEA SVA");
            odt.newParagraph("Adjunto da 1EM");
            odt.newParagraph("");
            odt.newParagraph("Aprovado por:");
            odt.newParagraph("");
            odt.newParagraph("LUIZ EDUARDO FERREIRA DA SILVA Ten Cel QOAV");
            odt.newParagraph("Adjunto da 1EM");
            odt.newParagraph("");
            odt.newParagraph("Publique-se:");
            odt.newParagraph("");
            odt.newParagraph("MARCELO SÁ FERNANDES Cel Av");
            odt.newParagraph("Chefe da 1EM");
        }
        // FINALIZAR ARQUIVO
        odt.save(os);
    } catch (Exception ex) {
        Logger.getLogger(EXC009ODF.class.getName()).log(Level.SEVERE, null, ex);
    }
}
Also used : GregorianCalendar(java.util.GregorianCalendar) OdfTableCell(org.odftoolkit.odfdom.doc.table.OdfTableCell) OrganizationalService(com.tomasio.projects.trainning.interfaces.OrganizationalService) OdfTable(org.odftoolkit.odfdom.doc.table.OdfTable) SimpleDateFormat(java.text.SimpleDateFormat) AtividadesEnsinoService(com.tomasio.projects.trainning.interfaces.AtividadesEnsinoService)

Example 10 with OdfTable

use of org.odftoolkit.odfdom.doc.table.OdfTable in project trainning by fernandotomasio.

the class PLN004ODF method makeReport.

@Override
public void makeReport() {
    TrainningService trainningService = (TrainningService) services.get("trainningService");
    PlanningService planningService = (PlanningService) services.get("planningService");
    AtaService ataService = (AtaService) services.get("ataService");
    try {
        Long areaId = (Long) params.get("areaId");
        Long planejamentoId = (Long) params.get("planejamentoId");
        PlanejamentoDTO planejamento = planningService.findPlanejamento(planejamentoId);
        AreaDTO area = trainningService.findArea(areaId);
        ItemPlanejamentoDTO[] itensPlanejamento = planningService.findAllItensPlanejamentoByAreaId(areaId, planejamentoId);
        odt = OdfTextDocument.newTextDocument();
        odt.newParagraph("ATA DA REUNIÃO DE PLANEJAMENTO " + planejamento.getExercicioFormatted() + " DA ÁREA " + area.getNome() + " (" + area.getSigla() + ")");
        odt.newParagraph("");
        List<ItemAtaDTO> listItemAta = new ArrayList<ItemAtaDTO>();
        for (ItemPlanejamentoDTO itemPlanejamento : itensPlanejamento) {
            ItemAtaDTO[] itensAta = ataService.findAllItensAtasByItemPlanejamentoId(itemPlanejamento.getId());
            if (itensAta != null && itensAta.length > 0) {
                listItemAta.addAll(Arrays.asList(itensAta));
            }
        }
        OdfTable ataTable = OdfTable.newTable(odt, listItemAta.size() + 1, 6);
        OdfTableCell numeroHeader = ataTable.getCellByPosition(0, 0);
        numeroHeader.setStringValue("#");
        numeroHeader.setHorizontalAlignment("left");
        OdfTableCell tipoHeader = ataTable.getCellByPosition(1, 0);
        tipoHeader.setStringValue("Tipo");
        tipoHeader.setHorizontalAlignment("left");
        OdfTableCell cursoHeader = ataTable.getCellByPosition(2, 0);
        cursoHeader.setStringValue("Curso");
        cursoHeader.setHorizontalAlignment("center");
        OdfTableCell descricaoHeader = ataTable.getCellByPosition(3, 0);
        descricaoHeader.setStringValue("Descrição");
        descricaoHeader.setHorizontalAlignment("left");
        OdfTableCell reponsavelHeader = ataTable.getCellByPosition(4, 0);
        reponsavelHeader.setStringValue("Responsável");
        reponsavelHeader.setHorizontalAlignment("center");
        OdfTableCell prazoHeader = ataTable.getCellByPosition(5, 0);
        prazoHeader.setStringValue("Prazo");
        prazoHeader.setHorizontalAlignment("center");
        for (int i = 0; i < listItemAta.size(); i++) {
            ItemAtaDTO itemAtaDTO = (ItemAtaDTO) listItemAta.get(i);
            String tipo = "";
            String responsavel = "";
            String prazo = "";
            if (itemAtaDTO instanceof AcaoDTO) {
                tipo = "A";
                responsavel = ((AcaoDTO) itemAtaDTO).getResponsavel();
                prazo = ((AcaoDTO) itemAtaDTO).getPrazo();
            } else if (itemAtaDTO instanceof DecisaoDTO) {
                tipo = "D";
                responsavel = ((DecisaoDTO) itemAtaDTO).getResponsavel();
            } else {
                tipo = "C";
            }
            OdfTableCell numeroCell = ataTable.getCellByPosition(0, i + 1);
            numeroCell.setStringValue(Integer.toString(i + 1));
            OdfTableCell tipoCell = ataTable.getCellByPosition(1, i + 1);
            tipoCell.setStringValue(tipo);
            OdfTableCell cursoCell = ataTable.getCellByPosition(2, i + 1);
            cursoCell.setStringValue(itemAtaDTO.getItemPlanejamento().getCurso().getCodigo());
            OdfTableCell descricaoCell = ataTable.getCellByPosition(3, i + 1);
            descricaoCell.setStringValue(itemAtaDTO.getTexto());
            OdfTableCell responsavelCell = ataTable.getCellByPosition(4, i + 1);
            responsavelCell.setStringValue(responsavel);
            OdfTableCell prazoCell = ataTable.getCellByPosition(5, i + 1);
            prazoCell.setStringValue(prazo);
        }
        odt.newParagraph("");
        odt.newParagraph("DISTRIBUIÇAO DE VAGAS: ");
        for (ItemPlanejamentoDTO itemPlanejamento : itensPlanejamento) {
            odt.newParagraph("");
            odt.newParagraph(itemPlanejamento.getCurso().getCodigo() + " - " + itemPlanejamento.getCurso().getDescricao());
            odt.newParagraph("");
            StripItemPlanejamentoDTO[] strips = planningService.findAllStripItemPlanejamento(itemPlanejamento.getId());
            itemPlanejamento = planningService.findItemPlanejamento(itemPlanejamento.getId());
            ResponsavelAreaDTO[] responsaveis = planningService.findAllResponsaveisAnalise(itemPlanejamento.getPlanejamento().getId(), itemPlanejamento.getCurso().getArea().getId());
            OdfTable distribuicaoTable = OdfTable.newTable(odt, strips.length + 1, 7 + responsaveis.length);
            int pos_responsavel = 7;
            OdfTableCell organizacaoHeader = distribuicaoTable.getCellByPosition(0, 0);
            organizacaoHeader.setStringValue("OM");
            organizacaoHeader.setHorizontalAlignment("left");
            OdfTableCell minimoHeader = distribuicaoTable.getCellByPosition(1, 0);
            minimoHeader.setStringValue("Mínimo");
            minimoHeader.setHorizontalAlignment("center");
            OdfTableCell idealHeader = distribuicaoTable.getCellByPosition(2, 0);
            idealHeader.setStringValue("Ideal");
            idealHeader.setHorizontalAlignment("center");
            OdfTableCell existenteHeader = distribuicaoTable.getCellByPosition(3, 0);
            existenteHeader.setStringValue("Existente");
            existenteHeader.setHorizontalAlignment("center");
            OdfTableCell gapMinimoHeader = distribuicaoTable.getCellByPosition(4, 0);
            gapMinimoHeader.setStringValue("Gap Min");
            gapMinimoHeader.setHorizontalAlignment("center");
            OdfTableCell gapIdealHeader = distribuicaoTable.getCellByPosition(5, 0);
            gapIdealHeader.setStringValue("Gap Ideal");
            gapIdealHeader.setHorizontalAlignment("center");
            OdfTableCell solicitadoHeader = distribuicaoTable.getCellByPosition(6, 0);
            solicitadoHeader.setStringValue("Sol.");
            solicitadoHeader.setHorizontalAlignment("center");
            for (ResponsavelAreaDTO responsavel : responsaveis) {
                System.out.println(responsavel.getOrganizacao().getSigla());
                OdfTableCell responsavelHeader = distribuicaoTable.getCellByPosition(pos_responsavel, 0);
                responsavelHeader.setStringValue(responsavel.getOrganizacao().getSigla());
                responsavelHeader.setHorizontalAlignment("center");
                pos_responsavel++;
            }
            int linha = 1;
            for (StripItemPlanejamentoDTO stripItem : strips) {
                OdfTableCell om = distribuicaoTable.getCellByPosition(0, linha);
                om.setStringValue(stripItem.getOrganizacao().getSigla());
                om.setHorizontalAlignment("left");
                OdfTableCell minimo = distribuicaoTable.getCellByPosition(1, linha);
                minimo.setStringValue(Integer.toString(stripItem.getIndicadorMinimo()));
                minimo.setHorizontalAlignment("center");
                OdfTableCell ideal = distribuicaoTable.getCellByPosition(2, linha);
                ideal.setStringValue(Integer.toString(stripItem.getIndicadorIdeal()));
                ideal.setHorizontalAlignment("center");
                OdfTableCell existente = distribuicaoTable.getCellByPosition(3, linha);
                existente.setStringValue(Integer.toString(stripItem.getIndicadorExistente()));
                existente.setHorizontalAlignment("center");
                OdfTableCell gapMinimo = distribuicaoTable.getCellByPosition(4, linha);
                gapMinimo.setStringValue(Integer.toString(Math.abs(stripItem.getGapMinimo())));
                gapMinimo.setHorizontalAlignment("center");
                OdfTableCell gapIdeal = distribuicaoTable.getCellByPosition(5, linha);
                gapIdeal.setStringValue(Integer.toString(Math.abs(stripItem.getGapIdeal())));
                gapIdeal.setHorizontalAlignment("center");
                OdfTableCell solicitado = distribuicaoTable.getCellByPosition(6, linha);
                if (stripItem.getTreinamentoSolicitado() != null) {
                    solicitado.setStringValue(Integer.toString(stripItem.getTreinamentoSolicitado().getQuantidade()));
                } else {
                    solicitado.setStringValue("-");
                }
                solicitado.setHorizontalAlignment("center");
                Map analisesMap = stripItem.getAnalises();
                pos_responsavel = 7;
                for (ResponsavelAreaDTO responsavel : responsaveis) {
                    String quantidade = "-";
                    if (analisesMap != null) {
                        AnaliseDTO analise = (AnaliseDTO) analisesMap.get(responsavel.getOrganizacao().getId().toString());
                        if (analise != null) {
                            quantidade = String.valueOf(analise.getQuantidade());
                        }
                    }
                    OdfTableCell valor = distribuicaoTable.getCellByPosition(pos_responsavel, linha);
                    valor.setStringValue(quantidade);
                    valor.setHorizontalAlignment("center");
                    pos_responsavel++;
                }
                linha++;
            }
        }
        odt.save(os);
    } catch (Exception ex) {
        Logger.getLogger(PLN004ODF.class.getName()).log(Level.SEVERE, null, ex);
    }
}
Also used : PlanningService(com.tomasio.projects.trainning.interfaces.PlanningService) ItemAtaDTO(com.tomasio.projects.trainning.dto.ItemAtaDTO) ArrayList(java.util.ArrayList) DecisaoDTO(com.tomasio.projects.trainning.dto.DecisaoDTO) AreaDTO(com.tomasio.projects.trainning.dto.AreaDTO) ResponsavelAreaDTO(com.tomasio.projects.trainning.dto.ResponsavelAreaDTO) AtaService(com.tomasio.projects.trainning.interfaces.AtaService) ItemPlanejamentoDTO(com.tomasio.projects.trainning.dto.ItemPlanejamentoDTO) StripItemPlanejamentoDTO(com.tomasio.projects.trainning.dto.StripItemPlanejamentoDTO) ResponsavelAreaDTO(com.tomasio.projects.trainning.dto.ResponsavelAreaDTO) AcaoDTO(com.tomasio.projects.trainning.dto.AcaoDTO) StripItemPlanejamentoDTO(com.tomasio.projects.trainning.dto.StripItemPlanejamentoDTO) AnaliseDTO(com.tomasio.projects.trainning.dto.AnaliseDTO) ItemPlanejamentoDTO(com.tomasio.projects.trainning.dto.ItemPlanejamentoDTO) StripItemPlanejamentoDTO(com.tomasio.projects.trainning.dto.StripItemPlanejamentoDTO) PlanejamentoDTO(com.tomasio.projects.trainning.dto.PlanejamentoDTO) OdfTableCell(org.odftoolkit.odfdom.doc.table.OdfTableCell) TrainningService(com.tomasio.projects.trainning.interfaces.TrainningService) OdfTable(org.odftoolkit.odfdom.doc.table.OdfTable) Map(java.util.Map)

Aggregations

OdfTable (org.odftoolkit.odfdom.doc.table.OdfTable)18 OdfTableCell (org.odftoolkit.odfdom.doc.table.OdfTableCell)14 IOException (java.io.IOException)7 ArrayList (java.util.ArrayList)6 HashMap (java.util.HashMap)6 AtividadesEnsinoService (com.tomasio.projects.trainning.interfaces.AtividadesEnsinoService)5 List (java.util.List)5 CursoDTO (com.tomasio.projects.trainning.dto.CursoDTO)4 OrganizationalService (com.tomasio.projects.trainning.interfaces.OrganizationalService)4 FileNotFoundException (java.io.FileNotFoundException)4 OdfDocument (org.odftoolkit.odfdom.doc.OdfDocument)4 TurmaDTO (com.tomasio.projects.trainning.dto.TurmaDTO)3 File (java.io.File)3 Map (java.util.Map)3 OdfSpreadsheetDocument (org.odftoolkit.odfdom.doc.OdfSpreadsheetDocument)3 ArrayNode (com.fasterxml.jackson.databind.node.ArrayNode)2 ObjectNode (com.fasterxml.jackson.databind.node.ObjectNode)2 Cell (com.google.refine.model.Cell)2 Recon (com.google.refine.model.Recon)2 AnotacaoDTO (com.tomasio.projects.trainning.dto.AnotacaoDTO)2