use of com.lowagie.text.Font in project OpenClinica by OpenClinica.
the class DownloadDiscrepancyNote method createThreadHeader.
private Paragraph createThreadHeader(DiscrepancyNoteThread discNoteThread) {
String content = "";
int size = discNoteThread.getLinkedNoteList().size();
int counter = 0;
for (DiscrepancyNoteBean discBean : discNoteThread.getLinkedNoteList()) {
++counter;
content += discBean.getEntityName() + "; " + RESOLUTION_STATUS_MAP.get(discBean.getResolutionStatusId());
if (size > 1 && counter != size) {
content += " --->";
}
}
Paragraph para = new Paragraph(content, new Font(Font.HELVETICA, 16, Font.BOLD, new Color(0, 0, 0)));
return para;
}
use of com.lowagie.text.Font in project OpenClinica by OpenClinica.
the class DownloadDiscrepancyNote method serializeListToPDF.
public void serializeListToPDF(List<DiscrepancyNoteBean> listOfBeans, OutputStream stream, String studyIdentifier) {
ServletOutputStream servletStream = (ServletOutputStream) stream;
Document pdfDoc = new Document();
try {
PdfWriter.getInstance(pdfDoc, servletStream);
pdfDoc.open();
// Create header for the study identifier or name
if (studyIdentifier != null) {
HeaderFooter header = new HeaderFooter(new Phrase("Study Identifier: " + studyIdentifier + " pg."), true);
header.setAlignment(Element.ALIGN_CENTER);
Paragraph para = new Paragraph("Study Identifier: " + studyIdentifier, new Font(Font.HELVETICA, 18, Font.BOLD, new Color(0, 0, 0)));
para.setAlignment(Element.ALIGN_CENTER);
pdfDoc.setHeader(header);
pdfDoc.add(para);
}
for (DiscrepancyNoteBean discNoteBean : listOfBeans) {
pdfDoc.add(this.createTableFromBean(discNoteBean));
pdfDoc.add(new Paragraph("\n"));
}
// pdfDoc.add(new Paragraph(content));
} catch (DocumentException e) {
e.printStackTrace();
}
pdfDoc.close();
}
use of com.lowagie.text.Font in project OpenClinica by OpenClinica.
the class DownloadDiscrepancyNote method createTableThreadHeader.
private Table createTableThreadHeader(DiscrepancyNoteThread discNoteThread) throws BadElementException {
Table table = new Table(2);
table.setTableFitsPage(true);
table.setCellsFitPage(true);
table.setBorderWidth(1);
table.setBorderColor(new java.awt.Color(0, 0, 0));
table.setPadding(4);
table.setSpacing(4);
if (discNoteThread == null || discNoteThread.getLinkedNoteList().isEmpty()) {
return table;
}
// Get information for the header; the resolution status, however, has to be the latest
// resolution status for the DN thread
DiscrepancyNoteBean dnBean = discNoteThread.getLinkedNoteList().getFirst();
DiscrepancyNoteUtil discUtil = new DiscrepancyNoteUtil();
String latestResolutionStatus = discUtil.getResolutionStatusName(discNoteThread.getLinkedNoteList().getFirst().getResolutionStatusId());
StringBuilder content = new StringBuilder("");
if (dnBean != null) {
if (!"".equalsIgnoreCase(dnBean.getEntityName())) {
content.append("Item field name/value: ");
content.append(dnBean.getEntityName());
if (!"".equalsIgnoreCase(dnBean.getEntityValue())) {
content.append(" = ");
content.append(dnBean.getEntityValue());
}
}
Paragraph para = new Paragraph(content.toString(), new Font(Font.HELVETICA, 14, Font.BOLD, new Color(0, 0, 0)));
Cell cell = new Cell(para);
cell.setHeader(true);
cell.setHorizontalAlignment(Element.ALIGN_LEFT);
cell.setColspan(2);
table.addCell(cell);
table.endHeaders();
// Add at least three more rows of data -- dnBean.getSubjectName()
// row 1
cell = createCell("Study Subject", dnBean.getSubjectName());
table.addCell(cell);
cell = createCell("Study Event", dnBean.getEventName());
table.addCell(cell);
// row 2
cell = createCell("Study Event Date", dnBean.getEventStart() + "");
table.addCell(cell);
StringBuilder tmpStrBuilder = new StringBuilder("CRF: ");
tmpStrBuilder.append(dnBean.getCrfName());
tmpStrBuilder.append("\n");
tmpStrBuilder.append("Status: ");
tmpStrBuilder.append(dnBean.getCrfStatus());
content.append(dnBean.getCrfName());
cell = new Cell(new Paragraph(tmpStrBuilder.toString(), new Font(Font.HELVETICA, 14, Font.BOLD, new Color(0, 0, 0))));
table.addCell(cell);
// row 3
cell = createCell("Type", discUtil.getResolutionStatusTypeName(dnBean.getDiscrepancyNoteTypeId()));
table.addCell(cell);
cell = createCell("Resolution Status", latestResolutionStatus);
table.addCell(cell);
cell = createCell("Number of notes", discNoteThread.getLinkedNoteList().size() + "");
table.addCell(cell);
cell = createCell("Discrepancy Note ID", dnBean.getId() + "");
table.addCell(cell);
cell = createCell("Days Open", dnBean.getAge() + "");
table.addCell(cell);
String daysSinceUpdated = escapeQuotesInCSV(dnBean.getDays() + "");
cell = createCell("Days Since Updated", daysSinceUpdated.equals("0") ? "" : daysSinceUpdated + "");
table.addCell(cell);
}
return table;
}
Aggregations