List of usage examples for com.lowagie.text Phrase Phrase
public Phrase(float leading, String string)
Phrase
with a certain leading and a certain String
. From source file:com.qcadoo.mes.productionCounting.print.ProductionBalancePdfService.java
License:Open Source License
public void addMachineTimeBalance(final Document document, final Entity productionBalance, final Locale locale) throws DocumentException { document.add(Chunk.NEWLINE);//from www.j av a 2 s. co m document.add(new Paragraph( translationService.translate("productionCounting.productionBalance.report.paragraph3", locale), FontUtils.getDejavuBold11Dark())); List<String> operationsTimeTableHeader = Lists.newArrayList(); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.operationLevel", locale)); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.operationNumber", locale)); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.plannedDuration", locale)); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.registeredTime", locale)); operationsTimeTableHeader .add(translationService.translate(L_PRODUCTION_BALANCE_REPORT_COLUMN_HEADER_BALANCE, locale)); PdfPTable machineTimeTable = pdfHelper.createTableWithHeader(5, operationsTimeTableHeader, false); List<Entity> operationTimeComponents = productionBalance .getHasManyField(ProductionBalanceFields.OPERATION_TIME_COMPONENTS); if (!operationTimeComponents.isEmpty()) { for (Entity operationTimeComponent : operationTimeComponents) { machineTimeTable .addCell(new Phrase( operationTimeComponent .getBelongsToField( OperationTimeComponentFields.TECHNOLOGY_OPERATION_COMPONENT) .getStringField(TechnologyOperationComponentFields.NODE_NUMBER), FontUtils.getDejavuRegular9Dark())); machineTimeTable .addCell(new Phrase( operationTimeComponent .getBelongsToField( OperationTimeComponentFields.TECHNOLOGY_OPERATION_COMPONENT) .getBelongsToField(TechnologyOperationComponentFields.OPERATION) .getStringField(OperationFields.NUMBER), FontUtils.getDejavuRegular9Dark())); machineTimeTable.addCell(new Phrase( timeConverterService.convertTimeToString(operationTimeComponent .getIntegerField(OperationTimeComponentFields.PLANNED_MACHINE_TIME)), FontUtils.getDejavuRegular9Dark())); machineTimeTable.addCell(new Phrase( timeConverterService.convertTimeToString( operationTimeComponent.getIntegerField(OperationTimeComponentFields.MACHINE_TIME)), FontUtils.getDejavuRegular9Dark())); machineTimeTable.addCell(new Phrase( timeConverterService.convertTimeToString(operationTimeComponent .getIntegerField(OperationTimeComponentFields.MACHINE_TIME_BALANCE)), FontUtils.getDejavuRegular9Dark())); } } machineTimeTable.addCell(new Phrase( translationService.translate("productionCounting.productionBalance.report.total", locale), FontUtils.getDejavuRegular9Dark())); machineTimeTable.addCell(new Phrase("", FontUtils.getDejavuRegular9Dark())); machineTimeTable.addCell(new Phrase( timeConverterService.convertTimeToString( productionBalance.getIntegerField(ProductionBalanceFields.PLANNED_MACHINE_TIME)), FontUtils.getDejavuRegular9Dark())); machineTimeTable.addCell(new Phrase( timeConverterService.convertTimeToString( productionBalance.getIntegerField(ProductionBalanceFields.MACHINE_TIME)), FontUtils.getDejavuRegular9Dark())); machineTimeTable.addCell(new Phrase( timeConverterService.convertTimeToString( productionBalance.getIntegerField(ProductionBalanceFields.MACHINE_TIME_BALANCE)), FontUtils.getDejavuRegular9Dark())); document.add(machineTimeTable); }
From source file:com.qcadoo.mes.productionCounting.print.ProductionBalancePdfService.java
License:Open Source License
public void addLaborTimeBalance(final Document document, final Entity productionBalance, final Locale locale) throws DocumentException { document.add(Chunk.NEWLINE);/*from w w w . j a v a2s . co m*/ document.add(new Paragraph( translationService.translate("productionCounting.productionBalance.report.paragraph4", locale), FontUtils.getDejavuBold11Dark())); List<String> operationsTimeTableHeader = Lists.newArrayList(); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.operationLevel", locale)); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.operationNumber", locale)); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.plannedDuration", locale)); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.registeredTime", locale)); operationsTimeTableHeader .add(translationService.translate(L_PRODUCTION_BALANCE_REPORT_COLUMN_HEADER_BALANCE, locale)); PdfPTable laborTimeTable = pdfHelper.createTableWithHeader(5, operationsTimeTableHeader, false); List<Entity> operationTimeComponents = productionBalance .getHasManyField(ProductionBalanceFields.OPERATION_TIME_COMPONENTS); if (!operationTimeComponents.isEmpty()) { for (Entity operationTimeComponent : operationTimeComponents) { laborTimeTable .addCell(new Phrase( operationTimeComponent .getBelongsToField( OperationTimeComponentFields.TECHNOLOGY_OPERATION_COMPONENT) .getStringField(TechnologyOperationComponentFields.NODE_NUMBER), FontUtils.getDejavuRegular9Dark())); laborTimeTable .addCell(new Phrase( operationTimeComponent .getBelongsToField( OperationTimeComponentFields.TECHNOLOGY_OPERATION_COMPONENT) .getBelongsToField(TechnologyOperationComponentFields.OPERATION) .getStringField(OperationFields.NUMBER), FontUtils.getDejavuRegular9Dark())); laborTimeTable.addCell(new Phrase( timeConverterService.convertTimeToString(operationTimeComponent .getIntegerField(OperationTimeComponentFields.PLANNED_LABOR_TIME)), FontUtils.getDejavuRegular9Dark())); laborTimeTable.addCell(new Phrase( timeConverterService.convertTimeToString( operationTimeComponent.getIntegerField(OperationTimeComponentFields.LABOR_TIME)), FontUtils.getDejavuRegular9Dark())); laborTimeTable.addCell(new Phrase( timeConverterService.convertTimeToString(operationTimeComponent .getIntegerField(OperationTimeComponentFields.LABOR_TIME_BALANCE)), FontUtils.getDejavuRegular9Dark())); } } laborTimeTable.addCell(new Phrase( translationService.translate("productionCounting.productionBalance.report.total", locale), FontUtils.getDejavuRegular9Dark())); laborTimeTable.addCell(new Phrase("", FontUtils.getDejavuRegular9Dark())); laborTimeTable.addCell(new Phrase( timeConverterService.convertTimeToString( productionBalance.getIntegerField(ProductionBalanceFields.PLANNED_LABOR_TIME)), FontUtils.getDejavuRegular9Dark())); laborTimeTable.addCell(new Phrase( timeConverterService .convertTimeToString(productionBalance.getIntegerField(ProductionBalanceFields.LABOR_TIME)), FontUtils.getDejavuRegular9Dark())); laborTimeTable.addCell(new Phrase( timeConverterService.convertTimeToString( productionBalance.getIntegerField(ProductionBalanceFields.LABOR_TIME_BALANCE)), FontUtils.getDejavuRegular9Dark())); document.add(laborTimeTable); }
From source file:com.qcadoo.mes.productionCounting.print.ProductionBalancePdfService.java
License:Open Source License
public void addPieceworkBalance(final Document document, final Entity productionBalance, final Locale locale) throws DocumentException { document.add(Chunk.NEWLINE);/*from w w w .ja va2 s .c om*/ document.add(new Paragraph( translationService.translate("productionCounting.productionBalance.report.paragraph5", locale), FontUtils.getDejavuBold11Dark())); List<String> operationsTimeTableHeader = Lists.newArrayList(); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.operationLevel", locale)); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.operationNumber", locale)); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.plannedCycles", locale)); operationsTimeTableHeader.add(translationService .translate("productionCounting.productionBalance.report.columnHeader.registeredCycles", locale)); operationsTimeTableHeader .add(translationService.translate(L_PRODUCTION_BALANCE_REPORT_COLUMN_HEADER_BALANCE, locale)); PdfPTable pieceworkTable = pdfHelper.createTableWithHeader(5, operationsTimeTableHeader, false); List<Entity> operationPieceworkComponents = productionBalance .getHasManyField(ProductionBalanceFields.OPERATION_PIECEWORK_COMPONENTS); BigDecimal totalPlannedCycles = BigDecimal.ZERO; BigDecimal totalCycles = BigDecimal.ZERO; BigDecimal totalCyclesBalance = BigDecimal.ZERO; if (!operationPieceworkComponents.isEmpty()) { for (Entity operationPieceworkComponent : operationPieceworkComponents) { BigDecimal plannedCycles = operationPieceworkComponent .getDecimalField(OperationPieceworkComponentFields.PLANNED_CYCLES); BigDecimal cycles = operationPieceworkComponent .getDecimalField(OperationPieceworkComponentFields.CYCLES); BigDecimal cyclesBalance = operationPieceworkComponent .getDecimalField(OperationPieceworkComponentFields.CYCLES_BALANCE); pieceworkTable .addCell(new Phrase( operationPieceworkComponent .getBelongsToField( OperationTimeComponentFields.TECHNOLOGY_OPERATION_COMPONENT) .getStringField(TechnologyOperationComponentFields.NODE_NUMBER), FontUtils.getDejavuRegular9Dark())); pieceworkTable .addCell(new Phrase( operationPieceworkComponent .getBelongsToField( OperationTimeComponentFields.TECHNOLOGY_OPERATION_COMPONENT) .getBelongsToField(TechnologyOperationComponentFields.OPERATION) .getStringField(OperationFields.NUMBER), FontUtils.getDejavuRegular9Dark())); pieceworkTable.addCell( new Phrase(numberService.format(plannedCycles), FontUtils.getDejavuRegular9Dark())); pieceworkTable.addCell(new Phrase(numberService.format(cycles), FontUtils.getDejavuRegular9Dark())); pieceworkTable.addCell( new Phrase(numberService.format(cyclesBalance), FontUtils.getDejavuRegular9Dark())); totalPlannedCycles = totalPlannedCycles.add(plannedCycles, numberService.getMathContext()); totalCycles = totalPlannedCycles.add(cycles, numberService.getMathContext()); totalCyclesBalance = totalPlannedCycles.add(cyclesBalance, numberService.getMathContext()); } } pieceworkTable.addCell(new Phrase( translationService.translate("productionCounting.productionBalance.report.total", locale), FontUtils.getDejavuRegular9Dark())); pieceworkTable.addCell(new Phrase("", FontUtils.getDejavuRegular9Dark())); pieceworkTable .addCell(new Phrase(numberService.format(totalPlannedCycles), FontUtils.getDejavuRegular9Dark())); pieceworkTable.addCell(new Phrase(numberService.format(totalCycles), FontUtils.getDejavuRegular9Dark())); pieceworkTable .addCell(new Phrase(numberService.format(totalCyclesBalance), FontUtils.getDejavuRegular9Dark())); document.add(pieceworkTable); }
From source file:com.qcadoo.mes.productionCounting.print.ProductionTrackingReportPdfService.java
License:Open Source License
private void addTableCellAsTable(final PdfPTable table, final String label, final Object fieldValue, final String nullValue, final Font headerFont, final Font valueFont, final DecimalFormat df) { final PdfPTable cellTable = new PdfPTable(2); cellTable.getDefaultCell().setBorder(PdfPCell.NO_BORDER); cellTable.addCell(new Phrase(label, headerFont)); final Object value = fieldValue; if (value == null) { cellTable.addCell(new Phrase(nullValue, valueFont)); } else {/*w ww . j a v a 2s . c o m*/ if (value instanceof BigDecimal && df != null) { cellTable.addCell(new Phrase(df.format(value), valueFont)); } else { cellTable.addCell(new Phrase(value.toString(), valueFont)); } } table.addCell(cellTable); }
From source file:com.qcadoo.mes.productionCounting.print.ProductionTrackingReportPdfService.java
License:Open Source License
private PdfPTable createRightPanel(final Entity productionTrackingReport, final Locale locale) { Entity order = productionTrackingReport.getBelongsToField(ProductionTrackingReportFields.ORDER); final PdfPTable rightPanel = pdfHelper.createPanelTable(1); rightPanel.addCell(new Phrase( translationService.translate( "productionCounting.productionTrackingReport.report.panel.countingParameters", locale), FontUtils.getDejavuBold10Dark())); rightPanel.addCell(new Phrase( L_TABS + translationService.translate( "productionCounting.productionTrackingReport.report.panel.registerQuantityOutProduct", locale) + " " + (order.getBooleanField(OrderFieldsPC.REGISTER_QUANTITY_IN_PRODUCT) ? translationService.translate(L_QCADOO_VIEW_TRUE, locale) : translationService.translate(L_QCADOO_VIEW_FALSE, locale)), FontUtils.getDejavuBold9Dark())); rightPanel.addCell(new Phrase( L_TABS + translationService.translate( "productionCounting.productionTrackingReport.report.panel.registerQuantityInProduct", locale) + " " + (order.getBooleanField(OrderFieldsPC.REGISTER_QUANTITY_OUT_PRODUCT) ? translationService.translate(L_QCADOO_VIEW_TRUE, locale) : translationService.translate(L_QCADOO_VIEW_FALSE, locale)), FontUtils.getDejavuBold9Dark())); rightPanel.addCell(new Phrase( L_TABS + translationService.translate( "productionCounting.productionTrackingReport.report.panel.registerProductionTime", locale) + " " + (order.getBooleanField(OrderFieldsPC.REGISTER_PRODUCTION_TIME) ? translationService.translate(L_QCADOO_VIEW_TRUE, locale) : translationService.translate(L_QCADOO_VIEW_FALSE, locale)), FontUtils.getDejavuBold9Dark())); rightPanel/*from ww w . j av a2s. c om*/ .addCell( new Phrase( L_TABS + translationService.translate( "productionCounting.productionTrackingReport.report.panel.justOne", locale) + " " + (order.getBooleanField(OrderFieldsPC.JUST_ONE) ? translationService.translate(L_QCADOO_VIEW_TRUE, locale) : translationService.translate(L_QCADOO_VIEW_FALSE, locale)), FontUtils.getDejavuBold9Dark())); rightPanel.addCell(new Phrase( L_TABS + translationService .translate("productionCounting.productionTrackingReport.report.panel.allowToClose", locale) + " " + (order.getBooleanField(OrderFieldsPC.ALLOW_TO_CLOSE) ? translationService.translate(L_QCADOO_VIEW_TRUE, locale) : translationService.translate(L_QCADOO_VIEW_FALSE, locale)), FontUtils.getDejavuBold9Dark())); rightPanel .addCell(new Phrase( L_TABS + translationService.translate( "productionCounting.productionTrackingReport.report.panel.autoCloseOrder", locale) + " " + (order.getBooleanField(OrderFieldsPC.AUTO_CLOSE_ORDER) ? translationService.translate(L_QCADOO_VIEW_TRUE, locale) : translationService.translate(L_QCADOO_VIEW_FALSE, locale)), FontUtils.getDejavuBold9Dark())); return rightPanel; }
From source file:com.qcadoo.mes.productionCounting.print.ProductionTrackingReportPdfService.java
License:Open Source License
private void addInputProducts(final Document document, final Entity productionTracking, final Entity technology, final Locale locale) throws DocumentException { document.add(//from w w w . j a va2 s . c om new Paragraph( translationService .translate("productionCounting.productionTrackingReport.report.paragraph2", locale), FontUtils.getDejavuBold11Dark())); List<String> inputProductsTableHeader = Lists.newArrayList(); inputProductsTableHeader.add(translationService .translate("productionCounting.productionTrackingReport.report.columnHeader.number", locale)); inputProductsTableHeader.add(translationService.translate( "productionCounting.productionTrackingReport.report.columnHeader.productionName", locale)); inputProductsTableHeader.add(translationService .translate("productionCounting.productionTrackingReport.report.columnHeader.type", locale)); inputProductsTableHeader.add(translationService .translate("productionCounting.productionTrackingReport.report.columnHeader.quantity", locale)); inputProductsTableHeader.add(translationService.translate("basic.product.unit.label", locale)); PdfPTable inputProductsTable = pdfHelper.createTableWithHeader(5, inputProductsTableHeader, false); if (productionTracking .getHasManyField(ProductionTrackingFields.TRACKING_OPERATION_PRODUCT_IN_COMPONENTS) != null) { List<Entity> trackingOperationProductInComponents = Lists.newArrayList(productionTracking .getHasManyField(ProductionTrackingFields.TRACKING_OPERATION_PRODUCT_IN_COMPONENTS)); Collections.sort(trackingOperationProductInComponents, new EntityProductInOutComparator()); for (Entity trackingOperationProductInComponent : trackingOperationProductInComponents) { inputProductsTable .addCell( new Phrase( trackingOperationProductInComponent .getBelongsToField( TrackingOperationProductInComponentFields.PRODUCT) .getStringField(ProductFields.NUMBER), FontUtils.getDejavuRegular9Dark())); inputProductsTable .addCell( new Phrase( trackingOperationProductInComponent .getBelongsToField( TrackingOperationProductInComponentFields.PRODUCT) .getStringField(ProductFields.NAME), FontUtils.getDejavuRegular9Dark())); String type = technologyService.getProductType(trackingOperationProductInComponent .getBelongsToField(TrackingOperationProductInComponentFields.PRODUCT), technology); inputProductsTable.addCell(new Phrase( translationService.translate("basic.product.globalTypeOfMaterial.value." + type, locale), FontUtils.getDejavuRegular9Dark())); inputProductsTable.getDefaultCell().setHorizontalAlignment(PdfPCell.ALIGN_RIGHT); if (trackingOperationProductInComponent .getField(TrackingOperationProductInComponentFields.USED_QUANTITY) == null) { inputProductsTable.addCell(new Phrase(L_N_A, FontUtils.getDejavuRegular9Dark())); } else { inputProductsTable.addCell(new Phrase( numberService.format(trackingOperationProductInComponent .getField(TrackingOperationProductInComponentFields.USED_QUANTITY)), FontUtils.getDejavuRegular9Dark())); } inputProductsTable.getDefaultCell().setHorizontalAlignment(PdfPCell.ALIGN_LEFT); inputProductsTable .addCell( new Phrase( trackingOperationProductInComponent .getBelongsToField( TrackingOperationProductInComponentFields.PRODUCT) .getStringField(ProductFields.UNIT), FontUtils.getDejavuRegular9Dark())); } } document.add(inputProductsTable); }
From source file:com.qcadoo.mes.productionCounting.print.ProductionTrackingReportPdfService.java
License:Open Source License
private void addOutputProducts(final Document document, final Entity productionTracking, final Entity technology, final Locale locale) throws DocumentException { document.add(/* w w w . j av a2s .c om*/ new Paragraph( translationService .translate("productionCounting.productionTrackingReport.report.paragraph3", locale), FontUtils.getDejavuBold11Dark())); List<String> outputProductsTableHeader = Lists.newArrayList(); outputProductsTableHeader.add(translationService .translate("productionCounting.productionTrackingReport.report.columnHeader.number", locale)); outputProductsTableHeader.add(translationService.translate( "productionCounting.productionTrackingReport.report.columnHeader.productionName", locale)); outputProductsTableHeader.add(translationService .translate("productionCounting.productionTrackingReport.report.columnHeader.type", locale)); outputProductsTableHeader.add(translationService .translate("productionCounting.productionTrackingReport.report.columnHeader.quantity", locale)); outputProductsTableHeader.add(translationService.translate("basic.product.unit.label", locale)); PdfPTable outputProductsTable = pdfHelper.createTableWithHeader(5, outputProductsTableHeader, false); if (productionTracking .getHasManyField(ProductionTrackingFields.TRACKING_OPERATION_PRODUCT_OUT_COMPONENTS) != null) { List<Entity> trackingOperationProductOutComponents = Lists.newArrayList(productionTracking .getHasManyField(ProductionTrackingFields.TRACKING_OPERATION_PRODUCT_OUT_COMPONENTS)); Collections.sort(trackingOperationProductOutComponents, new EntityProductInOutComparator()); for (Entity trackingOperationProductOutComponent : trackingOperationProductOutComponents) { outputProductsTable .addCell( new Phrase( trackingOperationProductOutComponent .getBelongsToField( TrackingOperationProductOutComponentFields.PRODUCT) .getStringField(ProductFields.NUMBER), FontUtils.getDejavuRegular9Dark())); outputProductsTable .addCell( new Phrase( trackingOperationProductOutComponent .getBelongsToField( TrackingOperationProductOutComponentFields.PRODUCT) .getStringField(ProductFields.NAME), FontUtils.getDejavuRegular9Dark())); String type = technologyService.getProductType(trackingOperationProductOutComponent .getBelongsToField(TrackingOperationProductOutComponentFields.PRODUCT), technology); outputProductsTable.addCell(new Phrase( translationService.translate("basic.product.globalTypeOfMaterial.value." + type, locale), FontUtils.getDejavuRegular9Dark())); outputProductsTable.getDefaultCell().setHorizontalAlignment(PdfPCell.ALIGN_RIGHT); if (trackingOperationProductOutComponent .getField(TrackingOperationProductOutComponentFields.USED_QUANTITY) == null) { outputProductsTable.addCell(new Phrase(L_N_A, FontUtils.getDejavuRegular9Dark())); } else { outputProductsTable.addCell(new Phrase( numberService.format(trackingOperationProductOutComponent .getField(TrackingOperationProductOutComponentFields.USED_QUANTITY)), FontUtils.getDejavuRegular9Dark())); } outputProductsTable.getDefaultCell().setHorizontalAlignment(PdfPCell.ALIGN_LEFT); outputProductsTable .addCell( new Phrase( trackingOperationProductOutComponent .getBelongsToField( TrackingOperationProductOutComponentFields.PRODUCT) .getStringField(ProductFields.UNIT), FontUtils.getDejavuRegular9Dark())); } } document.add(outputProductsTable); }
From source file:com.qcadoo.mes.productionCountingWithCosts.pdf.ProductionBalanceWithCostsPdfService.java
License:Open Source License
private void addMaterialCost(final Document document, final Entity productionBalance, final Locale locale) throws DocumentException { List<String> materialCostTableHeader = Lists.newArrayList(); materialCostTableHeader.add(translationService.translate( "productionCounting.productionBalanceDetails.window.materialCostsTab.technologyOperationProductInComponents.column.productNumber", locale));/*from w w w . ja v a2 s.co m*/ materialCostTableHeader.add(translationService.translate( "productionCounting.productionBalanceDetails.window.materialCostsTab.technologyOperationProductInComponents.column.plannedCost", locale)); materialCostTableHeader.add(translationService.translate( "productionCounting.productionBalanceDetails.window.materialCostsTab.technologyOperationProductInComponents.column.registeredCost", locale)); materialCostTableHeader.add(translationService.translate( "productionCounting.productionBalanceDetails.window.materialCostsTab.technologyOperationProductInComponents.column.balance", locale)); Map<String, HeaderAlignment> alignments = Maps.newHashMap(); alignments.put(translationService.translate( "productionCounting.productionBalanceDetails.window.materialCostsTab.technologyInstOperProductInComps.column.productNumber", locale), HeaderAlignment.LEFT); alignments.put(translationService.translate( "productionCounting.productionBalanceDetails.window.materialCostsTab.technologyInstOperProductInComps.column.plannedCost", locale), HeaderAlignment.RIGHT); alignments.put(translationService.translate( "productionCounting.productionBalanceDetails.window.materialCostsTab.technologyInstOperProductInComps.column.registeredCost", locale), HeaderAlignment.RIGHT); alignments.put(translationService.translate( "productionCounting.productionBalanceDetails.window.materialCostsTab.technologyInstOperProductInComps.column.balance", locale), HeaderAlignment.RIGHT); List<Entity> technologyOperationProductInComponents = productionBalance .getHasManyField(ProductionBalanceFieldsPCWC.TECHNOLOGY_OPERATION_PRODUCT_IN_COMPONENTS); if (!technologyOperationProductInComponents.isEmpty()) { document.add(Chunk.NEWLINE); document.add( new Paragraph( translationService.translate( "productionCounting.productionBalance.report.table.materialCost", locale), FontUtils.getDejavuBold11Dark())); technologyOperationProductInComponents = Lists.newLinkedList(technologyOperationProductInComponents); Collections.sort(technologyOperationProductInComponents, new EntityProductInOutComparator()); PdfPTable productsTable = pdfHelper.createTableWithHeader(4, materialCostTableHeader, false, alignments); String currency = " " + currencyService.getCurrencyAlphabeticCode(); for (Entity technologyOperationProductInComponent : technologyOperationProductInComponents) { productsTable.addCell(new Phrase(technologyOperationProductInComponent .getBelongsToField(TechnologyOperationProductInCompFields.PRODUCT) .getStringField(ProductFields.NUMBER), FontUtils.getDejavuRegular7Dark())); productsTable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_RIGHT); String plannedCost = numberService.format(technologyOperationProductInComponent .getField(TechnologyOperationProductInCompFields.PLANNED_COST)); productsTable.addCell(new Phrase((plannedCost == null) ? L_NULL_OBJECT : (plannedCost + currency), FontUtils.getDejavuRegular7Dark())); String registeredCost = numberService.format(technologyOperationProductInComponent .getField(TechnologyOperationProductInCompFields.REGISTERED_COST)); productsTable .addCell(new Phrase((registeredCost == null) ? L_NULL_OBJECT : (registeredCost + currency), FontUtils.getDejavuRegular7Dark())); String balance = numberService.format(technologyOperationProductInComponent .getField(TechnologyOperationProductInCompFields.BALANCE)); productsTable.addCell(new Phrase((balance == null) ? L_NULL_OBJECT : (balance + currency), FontUtils.getDejavuRegular7Dark())); productsTable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT); } productsTable.addCell(new Phrase( translationService.translate("productionCounting.productionBalance.report.total", locale), FontUtils.getDejavuRegular7Dark())); String plannedComponentsCosts = numberService.format( productionBalance.getDecimalField(ProductionBalanceFieldsPCWC.PLANNED_COMPONENTS_COSTS)); productsTable.addCell(new Phrase( (plannedComponentsCosts == null) ? L_NULL_OBJECT : (plannedComponentsCosts + currency), FontUtils.getDejavuRegular7Dark())); String componentsCosts = numberService .format(productionBalance.getDecimalField(ProductionBalanceFieldsPCWC.COMPONENTS_COSTS)); productsTable .addCell(new Phrase((componentsCosts == null) ? L_NULL_OBJECT : (componentsCosts + currency), FontUtils.getDejavuRegular7Dark())); String componentsCostsBalance = numberService.format( productionBalance.getDecimalField(ProductionBalanceFieldsPCWC.COMPONENTS_COSTS_BALANCE)); productsTable.addCell(new Phrase( (componentsCostsBalance == null) ? L_NULL_OBJECT : (componentsCostsBalance + currency), FontUtils.getDejavuRegular7Dark())); productsTable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT); document.add(productsTable); } }
From source file:com.qcadoo.mes.productionCountingWithCosts.pdf.ProductionBalanceWithCostsPdfService.java
License:Open Source License
private void addCostsBalance(final String type, final Document document, final Entity productionBalance, final Locale locale) throws DocumentException { List<String> tableHeader = Lists.newArrayList(); tableHeader.add(translationService.translate( "productionCounting.productionBalanceDetails.window.workCostsTab.operationsCost.column.operationLevel", locale));/* w ww . j ava 2 s . co m*/ tableHeader.add(translationService.translate( "productionCounting.productionBalanceDetails.window.workCostsTab.operationsCost.column.operationName", locale)); tableHeader.add(translationService.translate( "productionCounting.productionBalanceDetails.window.workCostsTab.operationsCost.column.planned" + upperCaseFirstLetter(type, locale) + L_COSTS, locale)); tableHeader.add(translationService .translate("productionCounting.productionBalanceDetails.window.workCostsTab.operationsCost.column." + type + L_COSTS, locale)); tableHeader.add(translationService .translate("productionCounting.productionBalanceDetails.window.workCostsTab.operationsCost.column." + type + "CostsBalance", locale)); Map<String, HeaderAlignment> alignments = Maps.newHashMap(); alignments.put(translationService.translate( "productionCounting.productionBalanceDetails.window.workCostsTab.operationsCost.column.operationLevel", locale), HeaderAlignment.LEFT); alignments.put(translationService.translate( "productionCounting.productionBalanceDetails.window.workCostsTab.operationsCost.column.operationName", locale), HeaderAlignment.LEFT); alignments.put(translationService.translate( "productionCounting.productionBalanceDetails.window.workCostsTab.operationsCost.column.planned" + upperCaseFirstLetter(type, locale) + L_COSTS, locale), HeaderAlignment.RIGHT); alignments.put(translationService .translate("productionCounting.productionBalanceDetails.window.workCostsTab.operationsCost.column." + type + L_COSTS, locale), HeaderAlignment.RIGHT); alignments.put(translationService .translate("productionCounting.productionBalanceDetails.window.workCostsTab.operationsCost.column." + type + "CostsBalance", locale), HeaderAlignment.RIGHT); boolean isPiecework = "cycles".equals(type); List<Entity> operationComponents = productionBalance .getHasManyField(isPiecework ? ProductionBalanceFieldsPCWC.OPERATION_PIECEWORK_COST_COMPONENTS : ProductionBalanceFieldsPCWC.OPERATION_COST_COMPONENTS); if (!operationComponents.isEmpty()) { document.add(Chunk.NEWLINE); document.add(new Paragraph(translationService.translate( "productionCounting.productionBalanceDetails.window.workCostsTab." + type + L_COSTS, locale), FontUtils.getDejavuBold11Dark())); operationComponents = Lists.newLinkedList(operationComponents); Collections.sort(operationComponents, new EntityProductionTrackingOperationComparator()); PdfPTable costsTable = pdfHelper.createTableWithHeader(5, tableHeader, false, alignments); String currency = " " + currencyService.getCurrencyAlphabeticCode(); for (Entity operationComponent : operationComponents) { costsTable.addCell(new Phrase( operationComponent.getBelongsToField(L_TECHNOLOGY_OPERATION_COMPONENT) .getStringField(TechnologyOperationComponentFields.NODE_NUMBER), FontUtils.getDejavuRegular7Dark())); costsTable.addCell(new Phrase(operationComponent.getBelongsToField(L_TECHNOLOGY_OPERATION_COMPONENT) .getBelongsToField(TechnologyOperationComponentFields.OPERATION) .getStringField(OperationFields.NAME), FontUtils.getDejavuRegular7Dark())); costsTable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_RIGHT); String plannedCost = numberService.format( operationComponent.getField("planned" + upperCaseFirstLetter(type, locale) + L_COSTS)); costsTable.addCell(new Phrase((plannedCost == null) ? L_NULL_OBJECT : (plannedCost + currency), FontUtils.getDejavuRegular7Dark())); String registeredCost = numberService.format(operationComponent.getField(type + L_COSTS)); costsTable .addCell(new Phrase((registeredCost == null) ? L_NULL_OBJECT : (registeredCost + currency), FontUtils.getDejavuRegular7Dark())); String balance = numberService.format(operationComponent.getField(type + L_COSTS_BALANCE)); costsTable.addCell(new Phrase((balance == null) ? L_NULL_OBJECT : (balance + currency), FontUtils.getDejavuRegular7Dark())); costsTable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT); } costsTable.addCell(new Phrase( translationService.translate("productionCounting.productionBalance.report.total", locale), FontUtils.getDejavuRegular7Dark())); costsTable.addCell(new Phrase("", FontUtils.getDejavuRegular7Dark())); costsTable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_RIGHT); String plannedCosts = numberService.format( productionBalance.getDecimalField(L_PLANNED + upperCaseFirstLetter(type, locale) + L_COSTS)); costsTable.addCell(new Phrase((plannedCosts == null) ? L_NULL_OBJECT : (plannedCosts + currency), FontUtils.getDejavuRegular7Dark())); String registeredCosts = numberService.format(productionBalance.getDecimalField(type + L_COSTS)); costsTable.addCell(new Phrase((registeredCosts == null) ? L_NULL_OBJECT : (registeredCosts + currency), FontUtils.getDejavuRegular7Dark())); String costsBalance = numberService.format(productionBalance.getDecimalField(type + L_COSTS_BALANCE)); costsTable.addCell(new Phrase((costsBalance == null) ? L_NULL_OBJECT : (costsBalance + currency), FontUtils.getDejavuRegular7Dark())); costsTable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT); document.add(costsTable); } }
From source file:com.qcadoo.mes.productionCountingWithCosts.pdf.ProductionBalanceWithCostsPdfService.java
License:Open Source License
public PdfPTable createParametersForCostsPanel(final Entity productionBalance, final Locale locale) { PdfPTable parametersForCostsPanel = pdfHelper.createPanelTable(1); parametersForCostsPanel.addCell(new Phrase(translationService .translate("productionCounting.productionBalance.report.panel.parametersForCosts", locale) + ":", FontUtils.getDejavuBold10Dark())); PdfPTable content = pdfHelper.createPanelTable(2); content.setTableEvent(null);// w ww . j a v a 2 s. com String sourceOfMaterialCostsField = productionBalance .getStringField(ProductionBalanceFieldsPCWC.SOURCE_OF_MATERIAL_COSTS); String sourceOfMaterialCosts = translationService.translate( "productionCounting.productionBalance.sourceOfMaterialCosts.value." + sourceOfMaterialCostsField, locale); pdfHelper.addTableCellAsTable(content, translationService.translate("productionCounting.productionBalance.sourceOfMaterialCosts.label", locale), sourceOfMaterialCosts, FontUtils.getDejavuBold9Dark(), FontUtils.getDejavuRegular7Dark(), 2); String calculateMaterialCostsModeField = productionBalance .getStringField(ProductionBalanceFieldsPCWC.CALCULATE_MATERIAL_COSTS_MODE); String calculateMaterialCostsMode = translationService .translate("productionCounting.productionBalance.calculateMaterialCostsMode.value." + calculateMaterialCostsModeField, locale); pdfHelper.addTableCellAsTable(content, translationService .translate("productionCounting.productionBalance.calculateMaterialCostsMode.label", locale), calculateMaterialCostsMode, FontUtils.getDejavuBold9Dark(), FontUtils.getDejavuRegular7Dark(), 2); parametersForCostsPanel.addCell(content); return parametersForCostsPanel; }