Search in sources :

Example 1 with OdfTable

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

the class OdsImporter method createParserUIInitializationData.

@Override
public JSONObject createParserUIInitializationData(ImportingJob job, List<JSONObject> fileRecords, String format) {
    JSONObject options = super.createParserUIInitializationData(job, fileRecords, format);
    JSONArray sheetRecords = new JSONArray();
    JSONUtilities.safePut(options, "sheetRecords", sheetRecords);
    OdfDocument odfDoc = null;
    try {
        JSONObject firstFileRecord = fileRecords.get(0);
        File file = ImportingUtilities.getFile(job, firstFileRecord);
        InputStream is = new FileInputStream(file);
        odfDoc = OdfDocument.loadDocument(is);
        List<OdfTable> tables = odfDoc.getTableList();
        int sheetCount = tables.size();
        boolean hasData = false;
        for (int i = 0; i < sheetCount; i++) {
            OdfTable sheet = tables.get(i);
            int rows = sheet.getRowCount();
            JSONObject sheetRecord = new JSONObject();
            JSONUtilities.safePut(sheetRecord, "name", sheet.getTableName());
            JSONUtilities.safePut(sheetRecord, "rows", rows);
            if (hasData) {
                JSONUtilities.safePut(sheetRecord, "selected", false);
            } else if (rows > 0) {
                JSONUtilities.safePut(sheetRecord, "selected", true);
                hasData = true;
            }
            JSONUtilities.append(sheetRecords, sheetRecord);
        }
    } catch (FileNotFoundException e) {
        logger.info("File not found", e);
    } catch (Exception e) {
        // ODF throws *VERY* wide exceptions
        logger.info("Error reading ODF spreadsheet", e);
    } finally {
        if (odfDoc != null) {
            odfDoc.close();
        }
    }
    return options;
}
Also used : OdfDocument(org.odftoolkit.odfdom.doc.OdfDocument) JSONObject(org.json.JSONObject) FileInputStream(java.io.FileInputStream) InputStream(java.io.InputStream) JSONArray(org.json.JSONArray) FileNotFoundException(java.io.FileNotFoundException) OdfTable(org.odftoolkit.odfdom.doc.table.OdfTable) File(java.io.File) FileInputStream(java.io.FileInputStream) IOException(java.io.IOException) FileNotFoundException(java.io.FileNotFoundException)

Example 2 with OdfTable

use of org.odftoolkit.odfdom.doc.table.OdfTable in project pentaho-kettle by pentaho.

the class OdfWorkbook method getSheet.

@Override
public KSheet getSheet(String sheetName) {
    OdfSheet sheet = openSheetsMap.get(sheetName);
    if (sheet == null) {
        OdfTable table = document.getTableByName(sheetName);
        if (table == null) {
            return null;
        } else {
            sheet = new OdfSheet(table);
            openSheetsMap.put(sheetName, sheet);
        }
    }
    return sheet;
}
Also used : OdfTable(org.odftoolkit.odfdom.doc.table.OdfTable)

Example 3 with OdfTable

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

the class ODSExporter method exportAttributes.

public static void exportAttributes(final ODSExporter thisNode, final String uuid) throws FrameworkException {
    final SecurityContext securityContext = thisNode.getSecurityContext();
    final File output = thisNode.getResultDocument();
    final VirtualType transformation = thisNode.getTransformationProvider();
    try {
        final App app = StructrApp.getInstance();
        final Result result = app.nodeQuery(AbstractNode.class).and(GraphObject.id, uuid).getResult();
        final Result transformedResult = transformation.transformOutput(securityContext, AbstractNode.class, result);
        Map<String, Object> nodeProperties = new HashMap<>();
        GraphObjectMap node = (GraphObjectMap) transformedResult.get(0);
        node.getPropertyKeys(null).forEach(p -> nodeProperties.put(p.dbName(), node.getProperty(p)));
        OdfSpreadsheetDocument spreadsheet = OdfSpreadsheetDocument.loadDocument(output.getFileOnDisk().getAbsolutePath());
        OdfTable sheet = spreadsheet.getTableList().get(0);
        Iterator<Entry<String, Object>> it = nodeProperties.entrySet().iterator();
        while (it.hasNext()) {
            Entry<String, Object> currentEntry = it.next();
            String address = currentEntry.getKey();
            Object val = currentEntry.getValue();
            if (val instanceof Collection) {
                Collection col = (Collection) val;
                writeCollectionToCells(sheet, sheet.getCellByPosition(address), col);
            } else if (val instanceof String[]) {
                String[] arr = (String[]) val;
                List<String> list = new ArrayList<>(Arrays.asList(arr));
                writeCollectionToCells(sheet, sheet.getCellByPosition(address), list);
            } else {
                writeObjectToCell(sheet.getCellByPosition(address), val);
            }
        }
        spreadsheet.save(output.getFileOnDisk().getAbsolutePath());
        spreadsheet.close();
    } catch (Exception e) {
        logger.error("Error while exporting to ODS", e);
    }
}
Also used : StructrApp(org.structr.core.app.StructrApp) App(org.structr.core.app.App) HashMap(java.util.HashMap) OdfSpreadsheetDocument(org.odftoolkit.odfdom.doc.OdfSpreadsheetDocument) VirtualType(org.structr.transform.VirtualType) FrameworkException(org.structr.common.error.FrameworkException) Result(org.structr.core.Result) Entry(java.util.Map.Entry) GraphObjectMap(org.structr.core.GraphObjectMap) SecurityContext(org.structr.common.SecurityContext) Collection(java.util.Collection) GraphObject(org.structr.core.GraphObject) OdfTable(org.odftoolkit.odfdom.doc.table.OdfTable) ArrayList(java.util.ArrayList) List(java.util.List) File(org.structr.web.entity.File)

Example 4 with OdfTable

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

the class EXC001ODF method makeReport.

@Override
public void makeReport() {
    try {
        odt = OdfTextDocument.newTextDocument();
        AtividadesEnsinoService service = (AtividadesEnsinoService) services.get("atividadesEnsinoService");
        OrganizationalService organizationalService = (OrganizationalService) services.get("organizationalService");
        Long turmaId = (Long) params.get("turmaId");
        TurmaDTO turma = service.findTurmaEfetiva(turmaId);
        IndicacaoDTO[] indicacoes = service.findAllIndicacoesAlunos(turmaId);
        odt.newParagraph("CURSO: " + turma.getCurso().getCodigo() + " - " + turma.getCurso().getDescricao());
        odt.newParagraph("TURMA: " + turma.getNumeroTurma());
        odt.newParagraph("INICIO: " + turma.getDataInicioFormatted());
        odt.newParagraph("TERMINO: " + turma.getDataTerminoFormatted());
        OdfTable indicacoesTable = OdfTable.newTable(odt, indicacoes.length + 1, 5);
        OdfTableCell postoHeader = indicacoesTable.getCellByPosition(0, 0);
        postoHeader.setStringValue("Posto/Graduacao");
        postoHeader.setHorizontalAlignment("center");
        OdfTableCell especialidadeHeader = indicacoesTable.getCellByPosition(1, 0);
        especialidadeHeader.setStringValue("Especialidade");
        especialidadeHeader.setHorizontalAlignment("center");
        OdfTableCell nomeHeader = indicacoesTable.getCellByPosition(2, 0);
        nomeHeader.setStringValue("Nome");
        nomeHeader.setHorizontalAlignment("center");
        OdfTableCell saramHeader = indicacoesTable.getCellByPosition(3, 0);
        saramHeader.setStringValue("SARAM");
        saramHeader.setHorizontalAlignment("center");
        OdfTableCell cpfHeader = indicacoesTable.getCellByPosition(4, 0);
        cpfHeader.setStringValue("CPF");
        cpfHeader.setHorizontalAlignment("center");
        OdfTableCell organizacaoHeader = indicacoesTable.getCellByPosition(5, 0);
        organizacaoHeader.setStringValue("Organizacao");
        organizacaoHeader.setHorizontalAlignment("center");
        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 = organizationalService.findOrganizacao(indicacoes[i].getOrganizacao().getId());
            String siglaOrganizacao = organizacao.getSigla();
            OdfTableCell postoCell = indicacoesTable.getCellByPosition(0, i + 1);
            postoCell.setStringValue(posto);
            OdfTableCell especialidadeCell = indicacoesTable.getCellByPosition(1, i + 1);
            especialidadeCell.setStringValue(especialidade);
            OdfTableCell nomeCell = indicacoesTable.getCellByPosition(2, i + 1);
            nomeCell.setStringValue(nome);
            OdfTableCell saramCell = indicacoesTable.getCellByPosition(3, i + 1);
            saramCell.setStringValue(saram);
            OdfTableCell cpfCell = indicacoesTable.getCellByPosition(4, i + 1);
            cpfCell.setStringValue(cpf);
            OdfTableCell organizacaoCell = indicacoesTable.getCellByPosition(5, i + 1);
            organizacaoCell.setStringValue(siglaOrganizacao);
        }
        odt.save(os);
    } catch (Exception ex) {
        Logger.getLogger(EXC001ODF.class.getName()).log(Level.SEVERE, null, ex);
    }
}
Also used : TurmaDTO(com.tomasio.projects.trainning.dto.TurmaDTO) IndicacaoDTO(com.tomasio.projects.trainning.dto.IndicacaoDTO) OdfTableCell(org.odftoolkit.odfdom.doc.table.OdfTableCell) PessoaDTO(com.tomasio.projects.trainning.dto.PessoaDTO) OrganizationalService(com.tomasio.projects.trainning.interfaces.OrganizationalService) OdfTable(org.odftoolkit.odfdom.doc.table.OdfTable) OrganizacaoDTO(com.tomasio.projects.trainning.dto.OrganizacaoDTO) AtividadesEnsinoService(com.tomasio.projects.trainning.interfaces.AtividadesEnsinoService)

Example 5 with OdfTable

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

the class EXC015ODF 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());
        // cancelados
        CancelamentoMatriculaDTO[] cancelados = service.findAllCancelamentoMatriculaByTurma(turmaId);
        // desligados
        ConclusaoDTO[] desligados = service.findAllConcluidosByTurma(turmaId, false);
        // concluidos
        ConclusaoDTO[] conclusoesComAproveitamento = service.findAllConcluidosByTurma(turmaId, true);
        // ordenar por nome
        Arrays.sort(cancelados, new Comparator<CancelamentoMatriculaDTO>() {

            @Override
            public int compare(CancelamentoMatriculaDTO o1, CancelamentoMatriculaDTO o2) {
                return o1.getMatricula().getPessoa().getNome().compareTo(o2.getMatricula().getPessoa().getNome());
            }
        });
        // ordenar por nome
        Arrays.sort(desligados, new Comparator<ConclusaoDTO>() {

            @Override
            public int compare(ConclusaoDTO o1, ConclusaoDTO o2) {
                return o1.getPessoa().getNome().compareTo(o2.getPessoa().getNome());
            }
        });
        // ordenar por nome
        Arrays.sort(conclusoesComAproveitamento, new Comparator<ConclusaoDTO>() {

            @Override
            public int compare(ConclusaoDTO o1, ConclusaoDTO o2) {
                return o1.getPessoa().getNome().compareTo(o2.getPessoa().getNome());
            }
        });
        // manipulação de datas
        GregorianCalendar cal = new GregorianCalendar();
        String ano = "" + cal.get(Calendar.YEAR);
        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 = null;
        if (!gestora.getSigla().equals("DECEA")) {
            cabecalho2 = "1 -   ";
        } else {
            cabecalho2 = "1 - CURSO DE ";
        }
        cabecalho2 += turma.getCurso().getDescricao() + " (" + turma.getCurso().getCodigo() + " - Turma " + turma.getNumeroTurma() + ")" + " - ENCERRAMENTO";
        // CABECALHO3
        String cabecalho3 = null;
        if (!gestora.getSigla().equals("DECEA")) {
            cabecalho3 = "PORTARIA " + gestora.getSigla() + " Nº XXX-X/1EM, DE " + dia + " DE " + dfMes.format(new Date()).toUpperCase() + " DE " + ano + ".";
        } else {
            cabecalho3 = "";
        }
        // INTRODUCAO
        String introducao = null;
        if (!gestora.getSigla().equals("DECEA")) {
            introducao = "Encerra o \"" + turma.getCurso().getDescricao() + " (" + turma.getCurso().getCodigo() + " -  " + turma.getNumeroTurma() + ")\"" + " e dá outras providências.";
        } else {
            introducao = "";
        }
        // INTRODUCAO2
        String introducao2 = null;
        if (gestora.getSigla().equals("DECEA")) {
            introducao2 = "";
        // introducao2 = "O CHEFE DO SUBDEPARTAMENTO DE ADMINISTRAÇÃO DO DEPARTAMENTO DE CONTROLE DO ESPAÇO" +
        // " AÉREO, no uso \n" +
        // "de suas atribuições, que lhe confere, por delegação de competência emanada pelo Exmo. Sr. \n" +
        // "Diretor do Departamento de Controle do Espaço Aéreo, publicada no Boletim Interno Ostensivo nº 50, de 12 de dezembro \n" +
        // "2014, do DECEA, e considerando o disposto no Inciso IX, do Art. 9º do Regulamento do \n" +
        // "Comando-Geral de Apoio, aprovado pela Portaria nº 2.133/GC3, de 29 de novembro de 2013, \n" +
        // "resolve:";
        } else {
            introducao2 = "O CHEFE DO ESTADO-MAIOR DO COMANDO-GERAL DE APOIO, no uso \n" + "de suas atribuições, que lhe confere, por delegação de competência emanada pelo Exmo. Sr. \n" + "Comandante-Geral de Apoio, publicada no Boletim Interno Ostensivo nº 50, de 12 de dezembro \n" + "2014, do COMGAP, e considerando o disposto no Inciso IX, do Art. 9º do Regulamento do \n" + "Comando-Geral de Apoio, aprovado pela Portaria nº 2.133/GC3, de 29 de novembro de 2013, \n" + "resolve:";
        }
        // 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) {
            textoPeriodo += "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 + ", 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 += "realizado no formato à distância (" + local + ") ";
                    } else {
                        textoPeriodo += "realizado no formato " + tipoFase + ", no " + local + ", ";
                    }
                    textoPeriodo += "no período de " + faseDTO.getPeriodoFormatted() + ", ";
                }
            }
        }
        // 1º PARAGRAFO
        String inicial = null;
        if (!gestora.getSigla().equals("DECEA")) {
            inicial = "Art. 1º ";
            inicial += "Encerrar o \"";
        } else {
            inicial = "D)  Encerra o curso de ";
        }
        inicial += turma.getCurso().getDescricao() + " (" + turma.getCurso().getCodigo() + " - Turma " + turma.getNumeroTurma() + ")";
        if (!gestora.getSigla().equals("DECEA")) {
            inicial += "\"";
        }
        inicial += ", ";
        // TEXTO SOBRE OS PERÍODOS
        inicial += textoPeriodo;
        // preenchendo responsabilidade
        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 ILA, ";
        }
        if (!gestora.getSigla().equals("DECEA")) {
            inicial += "ativado através da Portaria XXX/1EM, de XX XXX XXXX, publicada no BCA Ostensivo nº. XXX, de XX XXX XXXX.";
        } else {
            inicial += "ativado no BCA Ostensivo nº XX, de XX MES XXXX.";
        }
        // INíCIO DOS PARAGRAFOS SEGUINTES
        String canceladosParagrafo = "";
        // PARAGRAFO DOS CANCELADOS
        if (cancelados.length >= 1) {
            // montar paragrafo de cancelamento
            canceladosParagrafo += "Cancelar a matrícula ";
            // verifica se mais de um
            if (cancelados.length > 1) {
                canceladosParagrafo += "dos ";
            } else {
                canceladosParagrafo += "do ";
            }
            // verificar se tem civil
            int numCV = 0;
            for (CancelamentoMatriculaDTO cancelado : cancelados) {
                MatriculaDTO matricula = service.findMatricula(cancelado.getMatricula().getId());
                PessoaDTO pessoa = organizationalService.findPessoa(matricula.getPessoa().getId());
                String posto = pessoa.getPosto();
                if ("CV".equals(posto)) {
                    numCV++;
                }
            }
            int numMil = cancelados.length - numCV;
            if (numMil > 0) {
                if (numMil > 1) {
                    canceladosParagrafo += "militares ";
                } else {
                    canceladosParagrafo += "militar ";
                }
            }
            if (numMil > 0 && numCV > 0) {
                canceladosParagrafo += "e ";
            }
            if (numCV > 0) {
                if (numCV > 1) {
                    canceladosParagrafo += "civis ";
                } else {
                    canceladosParagrafo += "civil ";
                }
            }
            canceladosParagrafo += "abaixo ";
            if (cancelados.length > 1) {
                canceladosParagrafo += "relacionados ";
            } else {
                canceladosParagrafo += "relacionado ";
            }
            if (!gestora.getSigla().equals("DECEA")) {
                canceladosParagrafo += "conforme o item 4.8, da ICA 37-563/2016, do COMGAP:";
            } else {
                canceladosParagrafo += ":";
            }
        }
        String desligadosParagrafo = "";
        // PARAGRAFO DOS DESLIGADOS
        if (desligados.length >= 1) {
            // montar paragrafo de desligado
            desligadosParagrafo += "Desligar ";
            // verifica se mais de um
            if (desligados.length > 1) {
                desligadosParagrafo += "os ";
            } else {
                desligadosParagrafo += "o ";
            }
            // verificar se tem civil
            int numCV = 0;
            for (ConclusaoDTO desligado : desligados) {
                PessoaDTO pessoa = organizationalService.findPessoa(desligado.getPessoa().getId());
                String posto = pessoa.getPosto();
                if ("CV".equals(posto)) {
                    numCV++;
                }
            }
            int numMil = desligados.length - numCV;
            if (numMil > 0) {
                if (numMil > 1) {
                    desligadosParagrafo += "militares ";
                } else {
                    desligadosParagrafo += "militar ";
                }
            }
            if (numMil > 0 && numCV > 0) {
                desligadosParagrafo += "e ";
            }
            if (numCV > 0) {
                if (numCV > 1) {
                    desligadosParagrafo += "civis ";
                } else {
                    desligadosParagrafo += "civil ";
                }
            }
            desligadosParagrafo += "abaixo ";
            if (desligados.length > 1) {
                desligadosParagrafo += "relacionados ";
            } else {
                desligadosParagrafo += "relacionado ";
            }
            desligadosParagrafo += "conforme especificado:";
        }
        String aprovadosParagrafo = "";
        // PARAGRAFO DOS APROVADOS
        if (conclusoesComAproveitamento.length >= 1) {
            // montar paragrafo de desligado
            if (!gestora.getSigla().equals("DECEA")) {
                aprovadosParagrafo += "Aprovar, por ";
            } else {
                aprovadosParagrafo += "Concluíram com aproveitamento  ";
            }
            // verifica se mais de um
            if (!gestora.getSigla().equals("DECEA")) {
                if (conclusoesComAproveitamento.length > 1) {
                    aprovadosParagrafo += "terem ";
                } else {
                    aprovadosParagrafo += "ter ";
                }
            }
            if (!gestora.getSigla().equals("DECEA")) {
                aprovadosParagrafo += "concluído com aproveitamento, ";
            }
            // verifica se mais de um
            if (conclusoesComAproveitamento.length > 1) {
                aprovadosParagrafo += "os ";
            } else {
                aprovadosParagrafo += "o ";
            }
            // verificar se tem civil
            int numCV = 0;
            for (ConclusaoDTO aprovado : conclusoesComAproveitamento) {
                PessoaDTO pessoa = organizationalService.findPessoa(aprovado.getPessoa().getId());
                String posto = pessoa.getPosto();
                if ("CV".equals(posto)) {
                    numCV++;
                }
            }
            int numMil = conclusoesComAproveitamento.length - numCV;
            if (numMil > 0) {
                if (numMil > 1) {
                    aprovadosParagrafo += "militares ";
                } else {
                    aprovadosParagrafo += "militar ";
                }
            }
            if (numMil > 0 && numCV > 0) {
                aprovadosParagrafo += "e ";
            }
            if (numCV > 0) {
                if (numCV > 1) {
                    aprovadosParagrafo += "civis ";
                } else {
                    aprovadosParagrafo += "civil ";
                }
            }
            aprovadosParagrafo += "abaixo ";
            if (conclusoesComAproveitamento.length > 1) {
                aprovadosParagrafo += "relacionados:";
            } else {
                aprovadosParagrafo += "relacionado:";
            }
        }
        // PARAGRAFO ÚNICO
        String paragrafoUnico = "";
        if (!gestora.getSigla().equals("DECEA")) {
            paragrafoUnico += "Parágrafo único. As OM dos militares listados neste artigo deverão orientar seus\n" + "militares a inserirem dados de conclusão do referido curso (cód: 70XXX) no SIGPES (utilizando as\n" + "senhas pessoais), além de ratificar as respectivas alterações por meio das Seções de Pessoal (campo\n" + "cadastro de pessoal menu Cursos).";
        } else {
            paragrafoUnico += "";
        }
        // MONTANDO O ARQUIVO FINAL
        odt.newParagraph(cabecalho);
        odt.newParagraph("");
        odt.newParagraph(cabecalho2);
        odt.newParagraph("");
        odt.newParagraph(cabecalho3);
        odt.newParagraph("");
        if (!gestora.getSigla().equals("DECEA")) {
            odt.newParagraph(introducao);
        } else {
            odt.newParagraph("A)  Altera o quadro de instrutores do curso:");
            odt.newParagraph("");
            odt.newParagraph("");
            odt.newParagraph("Sem alteração.");
            odt.newParagraph("");
            odt.newParagraph("");
            odt.newParagraph("Inclusão de instrutor(es):");
            odt.newParagraph("");
            odt.newParagraph("");
            odt.newParagraph("Exclusão de instrutor(es):");
            odt.newParagraph("");
            odt.newParagraph("");
            odt.newParagraph("B)   Altera a matricula de aluno(os):");
            odt.newParagraph("");
            odt.newParagraph("");
            odt.newParagraph("Sem alteração.");
            odt.newParagraph("");
            odt.newParagraph("");
            odt.newParagraph("Inclusão de matrícula de aluno:");
            odt.newParagraph("");
            odt.newParagraph("");
            odt.newParagraph("Cancelamento de matrícula de aluno:");
            odt.newParagraph("");
            odt.newParagraph("");
            odt.newParagraph("Sem alteração.");
            odt.newParagraph("");
            odt.newParagraph("");
            odt.newParagraph("C)   Altera dados da turma(local e/ou período):");
            odt.newParagraph("");
            odt.newParagraph("");
            odt.newParagraph("Modifica o período de realização da turma de: / para:");
            odt.newParagraph("");
            odt.newParagraph("");
            odt.newParagraph("Modifica o local de realização da turma de: / para:");
        }
        odt.newParagraph("");
        odt.newParagraph(introducao2);
        odt.newParagraph("");
        odt.newParagraph(inicial);
        odt.newParagraph("");
        // MONTAGEM DO CORPO DO DOCUMENTO
        int numParagrafo = 2;
        // PARAGRAFO DOS CANCELADOS
        if (!gestora.getSigla().equals("DECEA")) {
            if (cancelados.length >= 1) {
                // if (!gestora.getSigla().equals("DECEA")) {
                odt.newParagraph("Art. " + numParagrafo + "º " + canceladosParagrafo);
                // } else {
                // odt.newParagraph(canceladosParagrafo);
                // }
                odt.newParagraph("");
                // LOOP DOS CANCELADOS
                for (int i = 0; i < cancelados.length; i++) {
                    MatriculaDTO matricula = service.findMatricula(cancelados[i].getMatricula().getId());
                    PessoaDTO pessoa = organizationalService.findPessoa(matricula.getPessoa().getId());
                    String posto = pessoa.getPosto();
                    String especialidade = pessoa.getEspecialidade();
                    String nome = pessoa.getNome();
                    String saram = pessoa.getSaram();
                    OrganizacaoDTO organizacao = organizationalService.findOrganizacao(matricula.getPessoa().getOrganizacao().getId());
                    String siglaOrganizacao = organizacao.getSigla();
                    String cancelado = "" + posto + " " + especialidade + " " + nome + ", da " + siglaOrganizacao;
                    if (cancelados.length > 1) {
                        if (i + 1 == cancelados.length) {
                            cancelado += ".";
                        } else {
                            if (i + 2 == cancelados.length) {
                                cancelado += "; e";
                            } else {
                                cancelado += ";";
                            }
                        }
                    } else {
                        cancelado += ".";
                    }
                    odt.newParagraph("- " + cancelado);
                }
                numParagrafo++;
                odt.newParagraph("");
            }
        }
        // PARAGRAFO DOS DESLIGADOS
        if (!gestora.getSigla().equals("DECEA")) {
            if (desligados.length >= 1) {
                // if (!gestora.getSigla().equals("DECEA")) {
                // odt.newParagraph("Art. " + numParagrafo + "º " + desligadosParagrafo);
                // } else {
                // odt.newParagraph(desligadosParagrafo);
                // }
                odt.newParagraph("Art. " + numParagrafo + "º " + desligadosParagrafo);
                odt.newParagraph("");
                char inciso = 'a';
                // AGRUPANDO OS DESLIGADOS POR ENQUADRAMENTO da letra "a" ao "i"
                List<ConclusaoDTO> desligadosA = new ArrayList<ConclusaoDTO>();
                List<ConclusaoDTO> desligadosB = new ArrayList<ConclusaoDTO>();
                List<ConclusaoDTO> desligadosC = new ArrayList<ConclusaoDTO>();
                List<ConclusaoDTO> desligadosD = new ArrayList<ConclusaoDTO>();
                List<ConclusaoDTO> desligadosE = new ArrayList<ConclusaoDTO>();
                List<ConclusaoDTO> desligadosF = new ArrayList<ConclusaoDTO>();
                List<ConclusaoDTO> desligadosG = new ArrayList<ConclusaoDTO>();
                List<ConclusaoDTO> desligadosH = new ArrayList<ConclusaoDTO>();
                List<ConclusaoDTO> desligadosI = new ArrayList<ConclusaoDTO>();
                String[] letras = { "letra \"a\"", "letra \"b\"", "letra \"c\"", "letra \"d\"", "letra \"e\"", "letra \"f\"", "letra \"g\"", "letra \"h\"", "letra \"i\"" };
                List<ConclusaoDTO> desligadosDefault = new ArrayList<ConclusaoDTO>();
                for (int i = 0; i < desligados.length; i++) {
                    String motivo = desligados[i].getObservacao();
                    int letra;
                    for (letra = 0; letra < letras.length; letra++) {
                        if (motivo.contains(letras[letra])) {
                            break;
                        }
                    }
                    switch(letra) {
                        case // letra "a"
                        0:
                            desligadosA.add(desligados[i]);
                            break;
                        case // letra "b"
                        1:
                            desligadosB.add(desligados[i]);
                            break;
                        case // letra "c"
                        2:
                            desligadosC.add(desligados[i]);
                            break;
                        case // letra "d"
                        3:
                            desligadosD.add(desligados[i]);
                            break;
                        case // letra "e"
                        4:
                            desligadosE.add(desligados[i]);
                            break;
                        case // letra "f"
                        5:
                            desligadosF.add(desligados[i]);
                            break;
                        case // letra "g"
                        6:
                            desligadosG.add(desligados[i]);
                            break;
                        case // letra "h"
                        7:
                            desligadosH.add(desligados[i]);
                            break;
                        case // letra "i"
                        8:
                            desligadosI.add(desligados[i]);
                            break;
                        default:
                            desligadosDefault.add(desligados[i]);
                    }
                }
                // LOOP DESLIGADOS A
                if (desligadosA.size() >= 1) {
                    odt.newParagraph("" + inciso + ") Em decorrência da letra \"a\", do item 4.9.1, da ICA 37-563/XXXX, do COMGAP:");
                    odt.newParagraph("");
                    for (int i = 0; i < desligadosA.size(); i++) {
                        PessoaDTO pessoa = organizationalService.findPessoa(desligadosA.get(i).getPessoa().getId());
                        String posto = pessoa.getPosto();
                        String especialidade = pessoa.getEspecialidade();
                        String nome = pessoa.getNome();
                        String saram = pessoa.getSaram();
                        OrganizacaoDTO organizacao = organizationalService.findOrganizacao(desligadosA.get(i).getPessoa().getOrganizacao().getId());
                        String siglaOrganizacao = organizacao.getSigla();
                        String desligado = "" + posto + " " + especialidade + " " + nome + ", da " + siglaOrganizacao;
                        if (desligadosA.size() > 1) {
                            if (i + 1 == desligadosA.size()) {
                                desligado += ".";
                            } else {
                                if (i + 2 == desligadosA.size()) {
                                    desligado += "; e";
                                } else {
                                    desligado += ";";
                                }
                            }
                        } else {
                            desligado += ".";
                        }
                        odt.newParagraph("- " + desligado);
                    }
                    inciso++;
                    odt.newParagraph("");
                }
                // LOOP DESLIGADOS B
                if (desligadosB.size() >= 1) {
                    odt.newParagraph("" + inciso + ") Em decorrência da letra \"b\", do item 4.9.1, da ICA 37-563/XXXX, do COMGAP:");
                    odt.newParagraph("");
                    for (int i = 0; i < desligadosB.size(); i++) {
                        PessoaDTO pessoa = organizationalService.findPessoa(desligadosB.get(i).getPessoa().getId());
                        String posto = pessoa.getPosto();
                        String especialidade = pessoa.getEspecialidade();
                        String nome = pessoa.getNome();
                        String saram = pessoa.getSaram();
                        OrganizacaoDTO organizacao = organizationalService.findOrganizacao(desligadosB.get(i).getPessoa().getOrganizacao().getId());
                        String siglaOrganizacao = organizacao.getSigla();
                        String desligado = "" + posto + " " + especialidade + " " + nome + ", da " + siglaOrganizacao;
                        if (desligadosB.size() > 1) {
                            if (i + 1 == desligadosB.size()) {
                                desligado += ".";
                            } else {
                                if (i + 2 == desligadosB.size()) {
                                    desligado += "; e";
                                } else {
                                    desligado += ";";
                                }
                            }
                        } else {
                            desligado += ".";
                        }
                        odt.newParagraph("- " + desligado);
                    }
                    inciso++;
                    odt.newParagraph("");
                }
                // LOOP DESLIGADOS C
                if (desligadosC.size() >= 1) {
                    odt.newParagraph("" + inciso + ") Em decorrência da letra \"c\", do item 4.9.1, da ICA 37-563/XXXX, do COMGAP:");
                    odt.newParagraph("");
                    for (int i = 0; i < desligadosC.size(); i++) {
                        PessoaDTO pessoa = organizationalService.findPessoa(desligadosC.get(i).getPessoa().getId());
                        String posto = pessoa.getPosto();
                        String especialidade = pessoa.getEspecialidade();
                        String nome = pessoa.getNome();
                        String saram = pessoa.getSaram();
                        OrganizacaoDTO organizacao = organizationalService.findOrganizacao(desligadosC.get(i).getPessoa().getOrganizacao().getId());
                        String siglaOrganizacao = organizacao.getSigla();
                        String desligado = "" + posto + " " + especialidade + " " + nome + ", da " + siglaOrganizacao;
                        if (desligadosC.size() > 1) {
                            if (i + 1 == desligadosC.size()) {
                                desligado += ".";
                            } else {
                                if (i + 2 == desligadosC.size()) {
                                    desligado += "; e";
                                } else {
                                    desligado += ";";
                                }
                            }
                        } else {
                            desligado += ".";
                        }
                        odt.newParagraph("- " + desligado);
                    }
                    inciso++;
                    odt.newParagraph("");
                }
                // LOOP DESLIGADOS D
                if (desligadosD.size() >= 1) {
                    odt.newParagraph("" + inciso + ") Em decorrência da letra \"d\", do item 4.9.1, da ICA 37-563/XXXX, do COMGAP:");
                    odt.newParagraph("");
                    for (int i = 0; i < desligadosD.size(); i++) {
                        PessoaDTO pessoa = organizationalService.findPessoa(desligadosD.get(i).getPessoa().getId());
                        String posto = pessoa.getPosto();
                        String especialidade = pessoa.getEspecialidade();
                        String nome = pessoa.getNome();
                        String saram = pessoa.getSaram();
                        OrganizacaoDTO organizacao = organizationalService.findOrganizacao(desligadosD.get(i).getPessoa().getOrganizacao().getId());
                        String siglaOrganizacao = organizacao.getSigla();
                        String desligado = "" + posto + " " + especialidade + " " + nome + ", da " + siglaOrganizacao;
                        if (desligadosD.size() > 1) {
                            if (i + 1 == desligadosD.size()) {
                                desligado += ".";
                            } else {
                                if (i + 2 == desligadosD.size()) {
                                    desligado += "; e";
                                } else {
                                    desligado += ";";
                                }
                            }
                        } else {
                            desligado += ".";
                        }
                        odt.newParagraph("- " + desligado);
                    }
                    inciso++;
                    odt.newParagraph("");
                }
                // LOOP DESLIGADOS E
                if (desligadosE.size() >= 1) {
                    odt.newParagraph("" + inciso + ") Em decorrência da letra \"e\", do item 4.9.1, da ICA 37-563/XXXX, do COMGAP:");
                    odt.newParagraph("");
                    for (int i = 0; i < desligadosE.size(); i++) {
                        PessoaDTO pessoa = organizationalService.findPessoa(desligadosE.get(i).getPessoa().getId());
                        String posto = pessoa.getPosto();
                        String especialidade = pessoa.getEspecialidade();
                        String nome = pessoa.getNome();
                        String saram = pessoa.getSaram();
                        OrganizacaoDTO organizacao = organizationalService.findOrganizacao(desligadosE.get(i).getPessoa().getOrganizacao().getId());
                        String siglaOrganizacao = organizacao.getSigla();
                        String desligado = "" + posto + " " + especialidade + " " + nome + ", da " + siglaOrganizacao;
                        if (desligadosE.size() > 1) {
                            if (i + 1 == desligadosE.size()) {
                                desligado += ".";
                            } else {
                                if (i + 2 == desligadosE.size()) {
                                    desligado += "; e";
                                } else {
                                    desligado += ";";
                                }
                            }
                        } else {
                            desligado += ".";
                        }
                        odt.newParagraph("- " + desligado);
                    }
                    inciso++;
                    odt.newParagraph("");
                }
                // LOOP DESLIGADOS F
                if (desligadosF.size() >= 1) {
                    odt.newParagraph("" + inciso + ") Em decorrência da letra \"f\", do item 4.9.1, da ICA 37-563/XXXX, do COMGAP:");
                    odt.newParagraph("");
                    for (int i = 0; i < desligadosF.size(); i++) {
                        PessoaDTO pessoa = organizationalService.findPessoa(desligadosF.get(i).getPessoa().getId());
                        String posto = pessoa.getPosto();
                        String especialidade = pessoa.getEspecialidade();
                        String nome = pessoa.getNome();
                        String saram = pessoa.getSaram();
                        OrganizacaoDTO organizacao = organizationalService.findOrganizacao(desligadosF.get(i).getPessoa().getOrganizacao().getId());
                        String siglaOrganizacao = organizacao.getSigla();
                        String desligado = "" + posto + " " + especialidade + " " + nome + ", da " + siglaOrganizacao;
                        if (desligadosF.size() > 1) {
                            if (i + 1 == desligadosF.size()) {
                                desligado += ".";
                            } else {
                                if (i + 2 == desligadosF.size()) {
                                    desligado += "; e";
                                } else {
                                    desligado += ";";
                                }
                            }
                        } else {
                            desligado += ".";
                        }
                        odt.newParagraph("- " + desligado);
                    }
                    inciso++;
                    odt.newParagraph("");
                }
                // LOOP DESLIGADOS G
                if (desligadosG.size() >= 1) {
                    odt.newParagraph("" + inciso + ") Em decorrência da letra \"g\", do item 4.9.1, da ICA 37-563/XXXX, do COMGAP:");
                    odt.newParagraph("");
                    for (int i = 0; i < desligadosG.size(); i++) {
                        PessoaDTO pessoa = organizationalService.findPessoa(desligadosG.get(i).getPessoa().getId());
                        String posto = pessoa.getPosto();
                        String especialidade = pessoa.getEspecialidade();
                        String nome = pessoa.getNome();
                        String saram = pessoa.getSaram();
                        OrganizacaoDTO organizacao = organizationalService.findOrganizacao(desligadosG.get(i).getPessoa().getOrganizacao().getId());
                        String siglaOrganizacao = organizacao.getSigla();
                        String desligado = "" + posto + " " + especialidade + " " + nome + ", da " + siglaOrganizacao;
                        if (desligadosG.size() > 1) {
                            if (i + 1 == desligadosG.size()) {
                                desligado += ".";
                            } else {
                                if (i + 2 == desligadosG.size()) {
                                    desligado += "; e";
                                } else {
                                    desligado += ";";
                                }
                            }
                        } else {
                            desligado += ".";
                        }
                        odt.newParagraph("- " + desligado);
                    }
                    inciso++;
                    odt.newParagraph("");
                }
                // LOOP DESLIGADOS H
                if (desligadosH.size() >= 1) {
                    odt.newParagraph("" + inciso + ") Em decorrência da letra \"h\", do item 4.9.1, da ICA 37-563/XXXX, do COMGAP:");
                    odt.newParagraph("");
                    for (int i = 0; i < desligadosH.size(); i++) {
                        PessoaDTO pessoa = organizationalService.findPessoa(desligadosH.get(i).getPessoa().getId());
                        String posto = pessoa.getPosto();
                        String especialidade = pessoa.getEspecialidade();
                        String nome = pessoa.getNome();
                        String saram = pessoa.getSaram();
                        OrganizacaoDTO organizacao = organizationalService.findOrganizacao(desligadosH.get(i).getPessoa().getOrganizacao().getId());
                        String siglaOrganizacao = organizacao.getSigla();
                        String desligado = "" + posto + " " + especialidade + " " + nome + ", da " + siglaOrganizacao;
                        if (desligadosH.size() > 1) {
                            if (i + 1 == desligadosH.size()) {
                                desligado += ".";
                            } else {
                                if (i + 2 == desligadosH.size()) {
                                    desligado += "; e";
                                } else {
                                    desligado += ";";
                                }
                            }
                        } else {
                            desligado += ".";
                        }
                        odt.newParagraph("- " + desligado);
                    }
                    inciso++;
                    odt.newParagraph("");
                }
                // LOOP DESLIGADOS I
                if (desligadosI.size() >= 1) {
                    odt.newParagraph("" + inciso + ") Em decorrência da letra \"i\", do item 4.9.1, da ICA 37-563/XXXX, do COMGAP:");
                    odt.newParagraph("");
                    for (int i = 0; i < desligadosI.size(); i++) {
                        PessoaDTO pessoa = organizationalService.findPessoa(desligadosI.get(i).getPessoa().getId());
                        String posto = pessoa.getPosto();
                        String especialidade = pessoa.getEspecialidade();
                        String nome = pessoa.getNome();
                        String saram = pessoa.getSaram();
                        OrganizacaoDTO organizacao = organizationalService.findOrganizacao(desligadosI.get(i).getPessoa().getOrganizacao().getId());
                        String siglaOrganizacao = organizacao.getSigla();
                        String desligado = "" + posto + " " + especialidade + " " + nome + ", da " + siglaOrganizacao;
                        if (desligadosI.size() > 1) {
                            if (i + 1 == desligadosI.size()) {
                                desligado += ".";
                            } else {
                                if (i + 2 == desligadosI.size()) {
                                    desligado += "; e";
                                } else {
                                    desligado += ";";
                                }
                            }
                        } else {
                            desligado += ".";
                        }
                        odt.newParagraph("- " + desligado);
                    }
                    inciso++;
                    odt.newParagraph("");
                }
                // LOOP DESLIGADOS SEM ENQUADRAMENTO
                if (desligadosDefault.size() >= 1) {
                    odt.newParagraph("" + inciso + ") Em decorrência do item 4.9.1, da ICA 37-563/XXXX, do COMGAP:");
                    odt.newParagraph("");
                    for (int i = 0; i < desligadosDefault.size(); i++) {
                        PessoaDTO pessoa = organizationalService.findPessoa(desligadosDefault.get(i).getPessoa().getId());
                        String posto = pessoa.getPosto();
                        String especialidade = pessoa.getEspecialidade();
                        String nome = pessoa.getNome();
                        String saram = pessoa.getSaram();
                        OrganizacaoDTO organizacao = organizationalService.findOrganizacao(desligadosDefault.get(i).getPessoa().getOrganizacao().getId());
                        String siglaOrganizacao = organizacao.getSigla();
                        String desligado = "" + posto + " " + especialidade + " " + nome + ", da " + siglaOrganizacao + " (" + desligadosDefault.get(i).getObservacao() + ")";
                        if (desligadosDefault.size() > 1) {
                            if (i + 1 == desligadosDefault.size()) {
                                desligado += ".";
                            } else {
                                if (i + 2 == desligadosDefault.size()) {
                                    desligado += "; e";
                                } else {
                                    desligado += ";";
                                }
                            }
                        } else {
                            desligado += ".";
                        }
                        odt.newParagraph("- " + desligado);
                    }
                    inciso++;
                    odt.newParagraph("");
                }
                /*LOOP DOS DESLIGADOS GERAL SEM DISTINÇÂO POR LETRA
                     for (int i = 0; i < desligados.length; i++) {
                     PessoaDTO pessoa = organizationalService.findPessoa(desligados[i].getPessoa().getId());
                     String posto = pessoa.getPosto();
                     String especialidade = pessoa.getEspecialidade();
                     String nome = pessoa.getNome();
                     String saram = pessoa.getSaram();

                     OrganizacaoDTO organizacao = organizationalService.findOrganizacao(desligados[i].getPessoa().getOrganizacao().getId());
                     String siglaOrganizacao = organizacao.getSigla();
                    
                     String desligado = "" + posto + " " + especialidade +" " + nome + ", da " + siglaOrganizacao;
                     if(desligados.length>1){
                     if(i+1 == desligados.length){
                     desligado += ".";
                     }else{
                     if(i+2 == desligados.length)
                     desligado += "; e";
                     else
                     desligado += ";";
                     }
                     }else
                     desligado +=".";
                    
                     odt.newParagraph("- " + desligado);
                     }
                     */
                numParagrafo++;
            // odt.newParagraph("");
            }
        }
        // PARAGRAFO DOS APROVADOS
        if (conclusoesComAproveitamento.length >= 1) {
            if (!gestora.getSigla().equals("DECEA")) {
                odt.newParagraph("Art. " + numParagrafo + "º " + aprovadosParagrafo);
            } else {
                odt.newParagraph(aprovadosParagrafo);
            }
            odt.newParagraph("");
            // montando a tabela
            OdfTable indicacoesTable = OdfTable.newTable(odt, conclusoesComAproveitamento.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 saramHeader = indicacoesTable.getCellByPosition(4, 0);
                saramHeader.setStringValue("SARAM");
                saramHeader.setHorizontalAlignment("center");
            } else {
                OdfTableCell cpfHeader = indicacoesTable.getCellByPosition(4, 0);
                cpfHeader.setStringValue("CPF");
                cpfHeader.setHorizontalAlignment("center");
            }
            OdfTableCell organizacaoHeader = indicacoesTable.getCellByPosition(5, 0);
            organizacaoHeader.setStringValue("OM");
            organizacaoHeader.setHorizontalAlignment("center");
            // LOOP DOS APROVADOS
            int cont = 1;
            for (int i = 0; i < conclusoesComAproveitamento.length; i++) {
                PessoaDTO pessoa = organizationalService.findPessoa(conclusoesComAproveitamento[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 = organizationalService.findOrganizacao(conclusoesComAproveitamento[i].getPessoa().getOrganizacao().getId());
                String siglaOrganizacao = organizacao.getSigla();
                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 saramCell = indicacoesTable.getCellByPosition(4, i + 1);
                    saramCell.setStringValue(saram);
                    saramCell.setHorizontalAlignment("center");
                } else {
                    OdfTableCell cpfCell = indicacoesTable.getCellByPosition(4, i + 1);
                    cpfCell.setStringValue(cpf);
                    cpfCell.setHorizontalAlignment("center");
                }
                OdfTableCell organizacaoCell = indicacoesTable.getCellByPosition(5, i + 1);
                organizacaoCell.setStringValue(siglaOrganizacao);
                organizacaoCell.setHorizontalAlignment("center");
                cont++;
            }
            numParagrafo++;
            odt.newParagraph("");
        }
        // PREENCHIMENTO DO FECHO DO ARQUIVO
        odt.newParagraph(paragrafoUnico);
        if (!gestora.getSigla().equals("DECEA")) {
            odt.newParagraph("");
            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");
            odt.newParagraph("");
            odt.newParagraph("Assina:");
            odt.newParagraph("");
            odt.newParagraph("Maj Brig Ar ANTONIO RICARDO PINHEIRO VIEIRA");
            odt.newParagraph("ChEM do COMGAP");
        }
        // FINALIZAR ARQUIVO
        odt.save(os);
    } catch (Exception ex) {
        Logger.getLogger(EXC015ODF.class.getName()).log(Level.SEVERE, null, ex);
    }
}
Also used : ArrayList(java.util.ArrayList) GregorianCalendar(java.util.GregorianCalendar) Date(java.util.Date) 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)

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