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;
}
Aggregations