use of com.itextpdf.text.ListItem 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;
}
use of com.itextpdf.text.ListItem in project trainning by fernandotomasio.
the class TCATrainningDocument 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;
}
List<String> listaEspecial = new ArrayList<String>();
listaEspecial.add("ATM021");
listaEspecial.add("CTP001");
listaEspecial.add("OPM004");
listaEspecial.add("RAD013");
listaEspecial.add("RAD021");
listaEspecial.add("RAD022");
listaEspecial.add("RAD024");
listaEspecial.add("RAD033");
listaEspecial.add("SAR003");
listaEspecial.add("SIV520");
listaEspecial.add("SIV538");
listaEspecial.add("SIV556");
listaEspecial.add("SIV560");
listaEspecial.add("TEL022");
listaEspecial.add("TEL025");
if (!listaEspecial.contains(curso.getCodigo())) {
document.newPage();
}
Paragraph p = null;
p = new Paragraph(ReportUtil.convertEncode(curso.getCodigo()) + " - " + ReportUtil.convertEncode(curso.getDescricao()), fontManager.getH1Font());
p.setAlignment(Element.ALIGN_LEFT);
document.add(p);
List<TurmaDTO> turmas = turmasMap.get(curso.getId());
document.add(Chunk.NEWLINE);
if (turmas.size() == 0) {
Paragraph pCod = null;
pCod = new Paragraph(ReportUtil.convertEncode("Não há turmas"), fontManager.getH2Font());
document.add(pCod);
}
FolhaRostoDTO folha = planningService.findFolhaRosto(curso.getCodigo());
if (folha == null) {
System.out.println("folha nula" + curso.getCodigo());
} else {
Paragraph folhasTitle = new Paragraph(ReportUtil.convertEncode("FOLHA DE ROSTO:"), fontManager.getBoldFont());
document.add(folhasTitle);
PdfPTable t = new PdfPTable(1);
t.setSpacingBefore(10f);
t.setSpacingAfter(20f);
// t.setTotalWidth(130);
t.setHorizontalAlignment(Element.ALIGN_LEFT);
t.setWidthPercentage(100);
// table.setWidths(new int[]{50, 30});
// t.addCell(tableManager.getPhraseCellCenterBold(curso.getCodigo() + " - " + curso.getDescricao()));
t.addCell(tableManager.getPhraseCellLeft("OBJETIVO: \n" + folha.getObjetivo()));
t.addCell(tableManager.getPhraseCellLeft("NVEL: " + folha.getNivel()));
String numero = "";
if (curso.getDuracao() == 1) {
numero = "dia útil";
} else {
numero = "dias úteis";
}
t.addCell(tableManager.getPhraseCellLeft("DURAO: " + NumberConverterHelper.convert(curso.getDuracao()) + " " + numero));
t.addCell(tableManager.getPhraseCellLeft("PR-REQUISITOS: \n" + folha.getPreRequisitos()));
t.addCell(tableManager.getPhraseCellLeft("DISCIPLINAS:\n" + folha.getDisciplinas()));
document.add(t);
}
Paragraph turmasTitle = new Paragraph(ReportUtil.convertEncode("TURMAS PLANEJADAS:"), fontManager.getBoldFont());
document.add(turmasTitle);
if (turmas != null) {
for (TurmaDTO turma : turmas) {
com.itextpdf.text.List turmaDetails = new com.itextpdf.text.List();
turmaDetails.setListSymbol("");
TurmaPlanejadaDTO turmaPlanejada = (TurmaPlanejadaDTO) turma;
String textTurma = "";
if (turmaPlanejada.getNumeroTurma() < 10) {
textTurma = " - TU 0";
} else {
textTurma = " - TU ";
}
Paragraph numeroTurmaParagraph = new Paragraph(ReportUtil.convertEncode("" + curso.getCodigo() + textTurma + String.valueOf(turmaPlanejada.getNumeroTurma())), fontManager.getH2Font());
ListItem itemNumeroTurma = new ListItem(numeroTurmaParagraph);
turmaDetails.add(itemNumeroTurma);
// document.add(numeroTurmaParagraph);
Paragraph localTurmaParagraph = new Paragraph(ReportUtil.convertEncode("Local de Realização: " + turmaPlanejada.getLocal()), fontManager.getDefaultFont());
ListItem itemLocalTurma = new ListItem(localTurmaParagraph);
turmaDetails.add(itemLocalTurma);
Calendar calendar = Calendar.getInstance();
calendar.setTime(turma.getDataInicio());
calendar.add(Calendar.DAY_OF_MONTH, -30);
Paragraph prazoTurmaParagraph = new Paragraph(ReportUtil.convertEncode("Prazo para Indicação: " + df.format(calendar.getTime())), fontManager.getDefaultFont());
ListItem prazoLocalTurma = new ListItem(prazoTurmaParagraph);
turmaDetails.add(prazoLocalTurma);
// document.add(localTurmaParagraph);
Paragraph vagasParagraph = new Paragraph(ReportUtil.convertEncode("Vagas: " + String.valueOf(turma.getQuantidadeVagas())), fontManager.getDefaultFont());
ListItem itemVagas = new ListItem(vagasParagraph);
turmaDetails.add(itemVagas);
// document.add(vagasParagraph);
document.add(turmaDetails);
Paragraph fasesParagraph = new Paragraph(ReportUtil.convertEncode("Período: "), fontManager.getDefaultFont());
document.add(fasesParagraph);
FaseDTO[] fases = turmaPlanejada.getFases();
PdfPTable tableFases = new PdfPTable(4);
tableFases.setSpacingBefore(10f);
tableFases.setSpacingAfter(10f);
// table.setTotalWidth(130);
tableFases.setHorizontalAlignment(Element.ALIGN_LEFT);
tableFases.setWidthPercentage(80);
// table.setWidths(new int[]{50, 30});
tableFases.addCell(tableManager.getHeaderCell("Modalidade"));
tableFases.addCell(tableManager.getHeaderCell("Local"));
tableFases.addCell(tableManager.getHeaderCell("Início"));
tableFases.addCell(tableManager.getHeaderCell("Término"));
tableFases.getDefaultCell().setBackgroundColor(null);
tableFases.setHeaderRows(1);
for (FaseDTO faseDTO : fases) {
String local = "A DEFINIR";
if (faseDTO.getLocal() != null) {
local = faseDTO.getLocal().getSigla();
}
String dataInicio = "A DEFINIR";
if (faseDTO.getDataInicio() != null) {
dataInicio = df.format(faseDTO.getDataInicio());
}
String dataTermino = "A DEFINIR";
if (faseDTO.getDataTermino() != null) {
dataTermino = df.format(faseDTO.getDataTermino());
}
tableFases.addCell(tableManager.getPhraseCellLeft(faseDTO.getDescricao()));
tableFases.addCell(tableManager.getPhraseCellCenter(local));
tableFases.addCell(tableManager.getPhraseCellCenter(dataInicio));
tableFases.addCell(tableManager.getPhraseCellCenter(dataTermino));
}
document.add(tableFases);
Paragraph distribuicaoParagraph = new Paragraph(ReportUtil.convertEncode("Distribuição de Vagas: "), fontManager.getDefaultFont());
document.add(distribuicaoParagraph);
PdfPTable table = new PdfPTable(2);
table.setSpacingBefore(10f);
table.setSpacingAfter(10f);
// table.setTotalWidth(130);
table.setHorizontalAlignment(Element.ALIGN_LEFT);
table.setWidthPercentage(80);
// table.setWidths(new int[]{50, 30});
table.addCell(tableManager.getHeaderCell("Unidade"));
table.addCell(tableManager.getHeaderCell("Vagas"));
table.getDefaultCell().setBackgroundColor(null);
table.setHeaderRows(1);
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());
}
});
for (TreinamentoPlanejadoDTO treinamentoDTO : treinamentosPlanejados) {
table.addCell(tableManager.getPhraseCellLeft(treinamentoDTO.getOrganizacao().getSigla()));
table.addCell(tableManager.getPhraseCellCenter(String.valueOf(treinamentoDTO.getQuantidade())));
}
document.add(table);
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) {
Paragraph anotacoesParagraph = new Paragraph(ReportUtil.convertEncode("Observações: " + anotacao), fontManager.getDefaultFont());
document.add(anotacoesParagraph);
}
document.add(Chunk.NEWLINE);
}
document.add(Chunk.NEWLINE);
}
}
} catch (DocumentException ex) {
Logger.getLogger(TCATrainningDocument.class.getName()).log(Level.SEVERE, null, ex);
}
}
Aggregations