use of com.qcadoo.mes.workPlans.pdf.document.order.column.OrderColumn in project mes by qcadoo.
the class WorkPlanColumnServiceImpl method getOrderColumns.
@Override
public Map<OrderColumn, ColumnAlignment> getOrderColumns(final Entity workPlan) {
Map<OrderColumn, ColumnAlignment> orderColumnWithAlignment = Maps.newLinkedHashMap();
Map<String, OrderColumn> identifierOrderColumn = applicationContext.getBeansOfType(OrderColumn.class);
List<Entity> columns = getWorkPlanOrderColumns(workPlan);
for (Entity column : columns) {
Entity columnForOrders = getColumnForOrders(column);
String identifier = getIdentifier(columnForOrders);
ColumnAlignment alignment = getColumnAlignment(columnForOrders);
OrderColumn key = identifierOrderColumn.get(identifier);
if (Objects.nonNull(key)) {
orderColumnWithAlignment.put(key, alignment);
}
}
return orderColumnWithAlignment;
}
use of com.qcadoo.mes.workPlans.pdf.document.order.column.OrderColumn in project mes by qcadoo.
the class OrderTable method print.
public void print(GroupingContainer groupingContainer, Document document, Locale locale) throws DocumentException {
document.add(ordersTableHeaderParagraph(locale));
Map<OrderColumn, ColumnAlignment> orderColumnToAlignment = groupingContainer.getOrderColumnToAlignment();
int columnCount = orderColumnToAlignment.size();
Map<String, HeaderAlignment> headerAlignments = new HashMap<String, HeaderAlignment>(columnCount);
List<String> headers = new ArrayList<String>(columnCount);
fill(locale, orderColumnToAlignment, headers, headerAlignments);
PdfPTable orderTable = pdfHelper.createTableWithHeader(columnCount, headers, false, headerAlignments);
PdfPCell defaultCell = orderTable.getDefaultCell();
for (Entity order : groupingContainer.getOrders()) {
for (Map.Entry<OrderColumn, ColumnAlignment> e : orderColumnToAlignment.entrySet()) {
alignColumn(defaultCell, e.getValue());
orderTable.addCell(orderColumnValuePhrase(order, e.getKey()));
}
}
document.add(orderTable);
document.add(Chunk.NEWLINE);
}
Aggregations