Search in sources :

Example 6 with List

use of com.itextpdf.text.List in project trainning by fernandotomasio.

the class DOC002PDF method buildTableUnidade.

private PdfPTable buildTableUnidade(UnidadeDidaticaDTO unidade) throws DocumentException {
    PdfPTable table = new PdfPTable(4);
    table.setWidths(new int[] { 2, 4, 1, 1 });
    table.setWidthPercentage(100);
    PdfPCell cellDescricao;
    Phrase phraseDescricao = new Phrase();
    phraseDescricao.add(new Chunk("UNIDADE DIDÁTICA " + unidade.getDisciplina().getNumeroDisciplina() + "." + unidade.getNumero() + ": ", fontManager.getBoldFont()));
    phraseDescricao.add(new Chunk(unidade.getDescricao().toUpperCase(), fontManager.getDefaultFont()));
    cellDescricao = new PdfPCell(phraseDescricao);
    cellDescricao.setColspan(2);
    cellDescricao.setPadding(10);
    table.addCell(cellDescricao);
    PdfPCell cellCHUnidade;
    Phrase phraseCHUnidade = new Phrase();
    phraseCHUnidade.add(new Chunk("CH: ", fontManager.getBoldFont()));
    phraseCHUnidade.add(new Chunk(unidade.getQuantidadeTemposAula() + " tempo(s)", fontManager.getDefaultFont()));
    cellCHUnidade = new PdfPCell(phraseCHUnidade);
    cellCHUnidade.setColspan(2);
    cellCHUnidade.setPadding(10);
    table.addCell(cellCHUnidade);
    PdfPCell cellObjetivosEspecificos;
    cellObjetivosEspecificos = new PdfPCell();
    ObjetivoUnidadeDidaticaDTO[] objetivosUnidade = teachingDocumentsService.findAllObjetivosUnidadesDidaticasByUnidade(unidade.getId());
    Paragraph objetivosHead = new Paragraph("OBJETIVOS ESPECÍFICOS: ", fontManager.getBoldFont());
    cellObjetivosEspecificos.addElement(objetivosHead);
    List objetivosList = new List(List.ORDERED, List.ALPHABETICAL);
    objetivosList.setLowercase(true);
    int count = 0;
    for (ObjetivoUnidadeDidaticaDTO objetivoUnidade : objetivosUnidade) {
        count++;
        String descricao;
        if (objetivosUnidade.length == count) {
            descricao = objetivoUnidade.getDescricao() + " (" + objetivoUnidade.getNivelAprendizagem().getCodigo() + ")" + ".";
        } else if (objetivosUnidade.length - 1 == count) {
            descricao = objetivoUnidade.getDescricao() + " (" + objetivoUnidade.getNivelAprendizagem().getCodigo() + ")" + "; e";
        } else {
            descricao = objetivoUnidade.getDescricao() + " (" + objetivoUnidade.getNivelAprendizagem().getCodigo() + ")" + ";";
        }
        ListItem item = new ListItem(descricao, fontManager.getDefaultFont());
        objetivosList.add(item);
    }
    cellObjetivosEspecificos.addElement(objetivosList);
    cellObjetivosEspecificos.setColspan(4);
    cellObjetivosEspecificos.setPadding(10);
    table.addCell(cellObjetivosEspecificos);
    PdfPCell cellSubunidadesHeader;
    cellSubunidadesHeader = new PdfPCell(new Phrase("SUBUNIDADES", fontManager.getBoldFont()));
    cellSubunidadesHeader.setPadding(10);
    table.addCell(cellSubunidadesHeader);
    PdfPCell cellObjetivosOperacionalizadosHeader;
    cellObjetivosOperacionalizadosHeader = new PdfPCell(new Phrase("OBJETIVOS OPERACIONALIZADOS", fontManager.getBoldFont()));
    cellObjetivosOperacionalizadosHeader.setPadding(10);
    table.addCell(cellObjetivosOperacionalizadosHeader);
    PdfPCell cellCHSubunidadeHeader;
    cellCHSubunidadeHeader = new PdfPCell(new Phrase("CH", fontManager.getBoldFont()));
    cellCHSubunidadeHeader.setPadding(10);
    table.addCell(cellCHSubunidadeHeader);
    PdfPCell cellTecnicaEnsinoHeader;
    cellTecnicaEnsinoHeader = new PdfPCell(new Phrase("TEC", fontManager.getBoldFont()));
    cellTecnicaEnsinoHeader.setPadding(10);
    table.addCell(cellTecnicaEnsinoHeader);
    SubunidadeDidaticaDTO[] subunidades = teachingDocumentsService.findAllSubunidadesDidaticas(unidade.getId());
    for (SubunidadeDidaticaDTO subunidade : subunidades) {
        PdfPCell cellSubunidades;
        cellSubunidades = new PdfPCell();
        cellSubunidades.addElement(new Paragraph(unidade.getDisciplina().getNumeroDisciplina() + "." + unidade.getNumero() + "." + subunidade.getNumero(), fontManager.getDefaultFont()));
        cellSubunidades.addElement(new Paragraph(subunidade.getDescricao().toUpperCase(), fontManager.getDefaultFont()));
        cellSubunidades.setPadding(10);
        cellSubunidades.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellSubunidades.setVerticalAlignment(Element.ALIGN_MIDDLE);
        table.addCell(cellSubunidades);
        PdfPCell cellObjetivosOperacionalizados;
        cellObjetivosOperacionalizados = new PdfPCell(new Phrase(""));
        cellObjetivosOperacionalizados.setPadding(10);
        ObjetivoOperacionalizadoDTO[] objetivosOperacionalizados = teachingDocumentsService.findAllObjetivosOperacionalizadosBySubunidade(subunidade.getId());
        List objetivosOperacionalizadosList = new List(List.ORDERED, List.ALPHABETICAL);
        objetivosOperacionalizadosList.setLowercase(true);
        int countOperacionalizados = 0;
        for (ObjetivoOperacionalizadoDTO objetivoOperacionalizado : objetivosOperacionalizados) {
            countOperacionalizados++;
            String descricao;
            if (objetivosOperacionalizados.length == countOperacionalizados) {
                descricao = objetivoOperacionalizado.getDescricao() + " (" + objetivoOperacionalizado.getNivelAprendizagem().getCodigo() + ")" + ".";
            } else if (objetivosOperacionalizados.length - 1 == countOperacionalizados) {
                descricao = objetivoOperacionalizado.getDescricao() + " (" + objetivoOperacionalizado.getNivelAprendizagem().getCodigo() + ")" + "; e";
            } else {
                descricao = objetivoOperacionalizado.getDescricao() + " (" + objetivoOperacionalizado.getNivelAprendizagem().getCodigo() + ")" + ";";
            }
            ListItem item = new ListItem(descricao, fontManager.getDefaultFont());
            objetivosOperacionalizadosList.add(item);
        }
        cellObjetivosOperacionalizados.addElement(objetivosOperacionalizadosList);
        table.addCell(cellObjetivosOperacionalizados);
        PdfPCell cellCHSubunidade;
        cellCHSubunidade = new PdfPCell(new Phrase(String.valueOf(subunidade.getQuantidadeTemposAula()), fontManager.getDefaultFont()));
        cellCHSubunidade.setPadding(10);
        table.addCell(cellCHSubunidade);
        PdfPCell cellTecnicaEnsino;
        cellTecnicaEnsino = new PdfPCell(new Phrase("AE", fontManager.getDefaultFont()));
        cellTecnicaEnsino.setPadding(10);
        table.addCell(cellTecnicaEnsino);
    }
    return table;
}
Also used : PdfPCell(com.itextpdf.text.pdf.PdfPCell) SubunidadeDidaticaDTO(com.tomasio.projects.trainning.dto.SubunidadeDidaticaDTO) Phrase(com.itextpdf.text.Phrase) Chunk(com.itextpdf.text.Chunk) ObjetivoOperacionalizadoDTO(com.tomasio.projects.trainning.dto.ObjetivoOperacionalizadoDTO) Paragraph(com.itextpdf.text.Paragraph) PdfPTable(com.itextpdf.text.pdf.PdfPTable) List(com.itextpdf.text.List) ArrayList(java.util.ArrayList) ListItem(com.itextpdf.text.ListItem) ObjetivoUnidadeDidaticaDTO(com.tomasio.projects.trainning.dto.ObjetivoUnidadeDidaticaDTO)

Aggregations

List (com.itextpdf.text.List)6 ListItem (com.itextpdf.text.ListItem)6 Paragraph (com.itextpdf.text.Paragraph)6 ArrayList (java.util.ArrayList)6 Chunk (com.itextpdf.text.Chunk)3 Phrase (com.itextpdf.text.Phrase)3 ObjetivoOperacionalizadoDTO (com.tomasio.projects.trainning.dto.ObjetivoOperacionalizadoDTO)3 SubunidadeDidaticaDTO (com.tomasio.projects.trainning.dto.SubunidadeDidaticaDTO)3 PdfPCell (com.itextpdf.text.pdf.PdfPCell)2 PdfPTable (com.itextpdf.text.pdf.PdfPTable)2 ObjetivoDisciplinaDTO (com.tomasio.projects.trainning.dto.ObjetivoDisciplinaDTO)2 ObjetivoUnidadeDidaticaDTO (com.tomasio.projects.trainning.dto.ObjetivoUnidadeDidaticaDTO)2 SecaoApostilaDTO (com.tomasio.projects.trainning.dto.SecaoApostilaDTO)1 UnidadeDidaticaDTO (com.tomasio.projects.trainning.dto.UnidadeDidaticaDTO)1