List of usage examples for com.lowagie.text.pdf PdfPTable setHorizontalAlignment
public void setHorizontalAlignment(int horizontalAlignment)
From source file:com.concursive.connect.web.modules.wiki.utils.WikiPDFUtils.java
License:Open Source License
protected static String parseForm(WikiPDFContext context, Connection db, BufferedReader in, String line, Document document, PdfPCell cell) throws Exception { if (line == null) { return line; }/* w w w. ja va2 s.co m*/ CustomForm form = WikiToHTMLUtils.retrieveForm(in, line); LOG.debug("parseForm"); for (CustomFormGroup group : form) { LOG.debug(" group..."); // Start the table PdfPTable pdfTable = new PdfPTable(2); pdfTable.setHorizontalAlignment(Element.ALIGN_LEFT); pdfTable.setSpacingBefore(10); // pdfTable.setWidthPercentage(100); pdfTable.setKeepTogether(true); if (group.getDisplay() && StringUtils.hasText(group.getName())) { // output the 1st row with a colspan of 2 if (StringUtils.hasText(group.getName())) { Paragraph groupParagraph = new Paragraph(group.getName()); PdfPCell groupCell = new PdfPCell(groupParagraph); groupCell.setHorizontalAlignment(Element.ALIGN_CENTER); groupCell.setColspan(2); groupCell.setPadding(20); groupCell.setBorderColor(new Color(100, 100, 100)); groupCell.setBackgroundColor(new Color(200, 200, 200)); groupCell.setNoWrap(true); pdfTable.addCell(groupCell); } } for (CustomFormField field : group) { LOG.debug(" field..."); if (field.hasValue()) { // output the row (2 columns: label, value) Paragraph fieldLabelParagraph = new Paragraph(field.getLabel()); PdfPCell fieldLabelCell = new PdfPCell(fieldLabelParagraph); fieldLabelCell.setPadding(20); fieldLabelCell.setBorderColor(new Color(100, 100, 100)); // fieldLabelCell.setNoWrap(true); pdfTable.addCell(fieldLabelCell); Paragraph fieldValueParagraph = new Paragraph(getFieldValue(context, field)); PdfPCell fieldValueCell = new PdfPCell(fieldValueParagraph); fieldValueCell.setPadding(20); fieldValueCell.setBorderColor(new Color(100, 100, 100)); // fieldValueCell.setNoWrap(true); pdfTable.addCell(fieldValueCell); } } LOG.debug("document.add(pdfTable)"); document.add(pdfTable); } return null; }
From source file:com.efficio.fieldbook.service.LabelPrintingServiceImpl.java
License:Open Source License
/** * Gets the cell height.//from w ww . java2 s . com * * @param numberOfRowsPerPage the number of rows per page * @param pageSizeId the page size id * @return the cell height */ /* private float getCellHeight(int numberOfRowsPerPage, int pageSizeId){ if(pageSizeId == AppConstants.SIZE_OF_PAPER_A4){ if(numberOfRowsPerPage == 7){ return 108f; //ok }else if(numberOfRowsPerPage == 8){ return 97f;//ok }else if(numberOfRowsPerPage == 10){ return 72.5f; } }else{ if(numberOfRowsPerPage == 7){ return 108f; //ok }else if(numberOfRowsPerPage == 8){ return 98.1f;//ok }else if(numberOfRowsPerPage == 10){ return 72.5f;//ok } } return 0f; } */ /* (non-Javadoc) * @see com.efficio.fieldbook.service.api.LabelPrintingService#generateLabels(com.efficio.fieldbook.web.fieldmap.bean.UserFieldmap) */ @Override public String generatePDFLabels(List<StudyTrialInstanceInfo> trialInstances, UserLabelPrinting userLabelPrinting, ByteArrayOutputStream baos) throws MiddlewareQueryException { // setUserLabelPrinting(form.getUserLabelPrinting()); int pageSizeId = Integer.parseInt(userLabelPrinting.getSizeOfLabelSheet()); int numberOfLabelPerRow = Integer.parseInt(userLabelPrinting.getNumberOfLabelPerRow()); int numberofRowsPerPageOfLabel = Integer.parseInt(userLabelPrinting.getNumberOfRowsPerPageOfLabel()); int totalPerPage = numberOfLabelPerRow * numberofRowsPerPageOfLabel; String leftSelectedFields = userLabelPrinting.getLeftSelectedLabelFields(); String rightSelectedFields = userLabelPrinting.getRightSelectedLabelFields(); String barcodeNeeded = userLabelPrinting.getBarcodeNeeded(); String firstBarcodeField = userLabelPrinting.getFirstBarcodeField(); String secondBarcodeField = userLabelPrinting.getSecondBarcodeField(); String thirdBarcodeField = userLabelPrinting.getThirdBarcodeField(); String currentDate = DateUtil.getCurrentDate(); // String fileName = currentDate + ".pdf"; String fileName = userLabelPrinting.getFilenameDLLocation(); try { FileOutputStream fileOutputStream = new FileOutputStream(fileName); try { // Image image1 = Image.getInstance(imageLocation); // PageSize.A4 LabelPaper paper = LabelPaperFactory.generateLabelPaper(numberOfLabelPerRow, numberofRowsPerPageOfLabel, pageSizeId); Rectangle pageSize = PageSize.LETTER; if (pageSizeId == AppConstants.SIZE_OF_PAPER_A4.getInt()) pageSize = PageSize.A4; Document document = new Document(pageSize); /* * 2, 2, 33.3f, 5 * 15, 0, 42, 5 * 10, 0, 17, 5 * 10, 0, 17, 5 * 5, 0, 0, 5 * 15, 0, 37, 5 * 10, 0, 17, 5 if (pageSizeId == AppConstants.SIZE_OF_PAPER_LETTER) { if (numberofRowsPerPageOfLabel == 7) document.setMargins(10, 0, 17, 5); else if (numberofRowsPerPageOfLabel == 8) document.setMargins(5, 0, 0, 5); else if (numberofRowsPerPageOfLabel == 10) document.setMargins(2, 2, 33.3f, 5); } else if (pageSizeId == AppConstants.SIZE_OF_PAPER_A4) { if (numberofRowsPerPageOfLabel == 7) document.setMargins(15, 0, 42, 5); else if (numberofRowsPerPageOfLabel == 8) document.setMargins(15, 0, 37, 5); else if (numberofRowsPerPageOfLabel == 10) document.setMargins(6, 2, 17.5f, 5); } */ //float marginLeft, float marginRight, float marginTop, float marginBottom document.setMargins(paper.getMarginLeft(), paper.getMarginRight(), paper.getMarginTop(), paper.getMarginBottom()); // PdfWriter writer = PdfWriter.getInstance(document, baos); PdfWriter writer = PdfWriter.getInstance(document, fileOutputStream); // step 3 document.open(); // step 4 PdfContentByte canvas = writer.getDirectContent(); int i = 0; int fixTableRowSize = numberOfLabelPerRow; PdfPTable table = new PdfPTable(fixTableRowSize); // table.writeSelectedRows(0, -1, 10, 12, canvas); float columnWidthSize = 265f;// 180f; float[] widthColumns = new float[fixTableRowSize]; for (int counter = 0; counter < widthColumns.length; counter++) { widthColumns[counter] = columnWidthSize; } table.setWidths(widthColumns); table.setWidthPercentage(100); int width = 600; int height = 75; List<File> filesToBeDeleted = new ArrayList<File>(); //float cellHeight = getCellHeight(numberofRowsPerPageOfLabel, pageSizeId); float cellHeight = paper.getCellHeight(); for (StudyTrialInstanceInfo trialInstance : trialInstances) { FieldMapTrialInstanceInfo fieldMapTrialInstanceInfo = trialInstance.getTrialInstance(); Map<String, String> moreFieldInfo = new HashMap<String, String>(); moreFieldInfo.put("locationName", fieldMapTrialInstanceInfo.getLocationName()); moreFieldInfo.put("blockName", fieldMapTrialInstanceInfo.getBlockName()); moreFieldInfo.put("selectedName", trialInstance.getFieldbookName()); moreFieldInfo.put("trialInstanceNumber", fieldMapTrialInstanceInfo.getTrialInstanceNo()); for (FieldMapLabel fieldMapLabel : fieldMapTrialInstanceInfo.getFieldMapLabels()) { i++; String barcodeLabel = generateBarcodeField(moreFieldInfo, fieldMapLabel, firstBarcodeField, secondBarcodeField, thirdBarcodeField, barcodeNeeded); if ("0".equalsIgnoreCase(barcodeNeeded)) { barcodeLabel = " "; } BitMatrix bitMatrix = new Code128Writer().encode(barcodeLabel, BarcodeFormat.CODE_128, width, height, null); String imageLocation = System.getProperty("user.home") + "/" + Math.random() + ".png"; File imageFile = new File(imageLocation); FileOutputStream fout = new FileOutputStream(imageFile); MatrixToImageWriter.writeToStream(bitMatrix, "png", fout); filesToBeDeleted.add(imageFile); Image mainImage = Image.getInstance(imageLocation); PdfPCell cell = new PdfPCell(); cell.setFixedHeight(cellHeight); cell.setNoWrap(false); cell.setPadding(5f); cell.setPaddingBottom(1f); PdfPTable innerImageTableInfo = new PdfPTable(1); innerImageTableInfo.setWidths(new float[] { 1 }); innerImageTableInfo.setWidthPercentage(82); PdfPCell cellImage = new PdfPCell(); if ("1".equalsIgnoreCase(barcodeNeeded)) { cellImage.addElement(mainImage); } else { cellImage.addElement(new Paragraph(" ")); } cellImage.setBorder(Rectangle.NO_BORDER); cellImage.setBackgroundColor(Color.white); cellImage.setPadding(1.5f); innerImageTableInfo.addCell(cellImage); //float fontSize = 6.8f; float fontSize = paper.getFontSize(); //if (numberofRowsPerPageOfLabel == 10) // fontSize = 4.8f; Font fontNormal = FontFactory.getFont("Arial", fontSize, Font.NORMAL); // cell.addElement(mainImage); cell.addElement(innerImageTableInfo); cell.addElement(new Paragraph()); for (int row = 0; row < 5; row++) { if (row == 0) { PdfPTable innerDataTableInfo = new PdfPTable(1); innerDataTableInfo.setWidths(new float[] { 1 }); innerDataTableInfo.setWidthPercentage(85); Font fontNormalData = FontFactory.getFont("Arial", 5.0f, Font.NORMAL); PdfPCell cellInnerData = new PdfPCell(new Phrase(barcodeLabel, fontNormalData)); cellInnerData.setBorder(Rectangle.NO_BORDER); cellInnerData.setBackgroundColor(Color.white); cellInnerData.setPaddingBottom(0.2f); cellInnerData.setPaddingTop(0.2f); cellInnerData.setHorizontalAlignment(Element.ALIGN_MIDDLE); innerDataTableInfo.addCell(cellInnerData); innerDataTableInfo.setHorizontalAlignment(Element.ALIGN_MIDDLE); cell.addElement(innerDataTableInfo); } PdfPTable innerTableInfo = new PdfPTable(2); innerTableInfo.setWidths(new float[] { 1, 1 }); innerTableInfo.setWidthPercentage(85); String leftText = generateBarcodeLabel(moreFieldInfo, fieldMapLabel, leftSelectedFields, row); PdfPCell cellInnerLeft = new PdfPCell(new Paragraph(leftText, fontNormal)); cellInnerLeft.setBorder(Rectangle.NO_BORDER); cellInnerLeft.setBackgroundColor(Color.white); cellInnerLeft.setPaddingBottom(0.5f); cellInnerLeft.setPaddingTop(0.5f); innerTableInfo.addCell(cellInnerLeft); String rightText = generateBarcodeLabel(moreFieldInfo, fieldMapLabel, rightSelectedFields, row); PdfPCell cellInnerRight = new PdfPCell(new Paragraph(rightText, fontNormal)); cellInnerRight.setBorder(Rectangle.NO_BORDER); cellInnerRight.setBackgroundColor(Color.white); cellInnerRight.setPaddingBottom(0.5f); cellInnerRight.setPaddingTop(0.5f); innerTableInfo.addCell(cellInnerRight); cell.addElement(innerTableInfo); } cell.setBorder(Rectangle.NO_BORDER); cell.setBackgroundColor(Color.white); //cell.setBorderColor(Color.BLUE); table.addCell(cell); if (i % numberOfLabelPerRow == 0) { // we go the next line int needed = fixTableRowSize - numberOfLabelPerRow; for (int neededCount = 0; neededCount < needed; neededCount++) { PdfPCell cellNeeded = new PdfPCell(); cellNeeded.setBorder(Rectangle.NO_BORDER); cellNeeded.setBackgroundColor(Color.white); table.addCell(cellNeeded); } table.completeRow(); if (numberofRowsPerPageOfLabel == 10) { //table.setSpacingAfter(9f); table.setSpacingAfter(paper.getSpacingAfter()); } document.add(table); table = new PdfPTable(fixTableRowSize); table.setWidths(widthColumns); table.setWidthPercentage(100); } if (i % totalPerPage == 0) { // we go the next page document.newPage(); } fout.flush(); fout.close(); } } // we need to add the last row if (i % numberOfLabelPerRow != 0) { // we go the next line int needed = fixTableRowSize - numberOfLabelPerRow; int remaining = numberOfLabelPerRow - (i % numberOfLabelPerRow); for (int neededCount = 0; neededCount < remaining; neededCount++) { PdfPCell cellNeeded = new PdfPCell(); cellNeeded.setBorder(Rectangle.NO_BORDER); cellNeeded.setBackgroundColor(Color.white); table.addCell(cellNeeded); } table.completeRow(); if (numberofRowsPerPageOfLabel == 10) { table.setSpacingAfter(paper.getSpacingAfter()); } document.add(table); table = new PdfPTable(fixTableRowSize); table.setWidths(widthColumns); table.setWidthPercentage(100); } document.close(); for (File file : filesToBeDeleted) { file.delete(); } fileOutputStream.close(); } catch (FileNotFoundException e) { LOG.error(e.getMessage(), e); } catch (IOException e) { LOG.error(e.getMessage(), e); } } catch (WriterException e) { LOG.error(e.getMessage(), e); } catch (Exception e) { LOG.error(e.getMessage(), e); } return fileName; }
From source file:com.geek.tutorial.itext.acroform.TextFieldForm.java
License:Open Source License
public TextFieldForm() throws Exception { Document document = new Document(); PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("TextFieldForm.pdf")); document.open();/*from w w w . j av a2 s.c o m*/ PdfPTable table = new PdfPTable(2); table.getDefaultCell().setPadding(5f); // Code 1, will only affect empty field table.setHorizontalAlignment(Element.ALIGN_LEFT); PdfPCell cell; // Code 2, add name TextField table.addCell("Name"); TextField nameField = new TextField(writer, new Rectangle(0, 0, 200, 10), "nameField"); nameField.setBackgroundColor(Color.WHITE); nameField.setBorderColor(Color.BLACK); nameField.setBorderWidth(1); nameField.setBorderStyle(PdfBorderDictionary.STYLE_SOLID); nameField.setText(""); nameField.setAlignment(Element.ALIGN_LEFT); nameField.setOptions(TextField.REQUIRED); cell = new PdfPCell(); cell.setMinimumHeight(10); cell.setCellEvent(new FieldCell(nameField.getTextField(), 200, writer)); table.addCell(cell); // force upper case javascript writer.addJavaScript("var nameField = this.getField('nameField');" + "nameField.setAction('Keystroke'," + "'forceUpperCase()');" + "" + "function forceUpperCase(){" + "if(!event.willCommit)event.change = " + "event.change.toUpperCase();" + "}"); // Code 3, add empty row table.addCell(""); table.addCell(""); // Code 4, add age TextField table.addCell("Age"); TextField ageComb = new TextField(writer, new Rectangle(0, 0, 30, 10), "ageField"); ageComb.setBorderColor(Color.BLACK); ageComb.setBorderWidth(1); ageComb.setBorderStyle(PdfBorderDictionary.STYLE_SOLID); ageComb.setText("12"); ageComb.setAlignment(Element.ALIGN_RIGHT); ageComb.setMaxCharacterLength(2); ageComb.setOptions(TextField.COMB | TextField.DO_NOT_SCROLL); cell = new PdfPCell(); cell.setMinimumHeight(10); cell.setCellEvent(new FieldCell(ageComb.getTextField(), 30, writer)); table.addCell(cell); // validate age javascript writer.addJavaScript("var ageField = this.getField('ageField');" + "ageField.setAction('Validate','checkAge()');" + "function checkAge(){" + "if(event.value < 12){" + "app.alert('Warning! Applicant\\'s age can not" + " be younger than 12.');" + "event.value = 12;" + "}}"); // add empty row table.addCell(""); table.addCell(""); // Code 5, add age TextField table.addCell("Comment"); TextField comment = new TextField(writer, new Rectangle(0, 0, 200, 100), "commentField"); comment.setBorderColor(Color.BLACK); comment.setBorderWidth(1); comment.setBorderStyle(PdfBorderDictionary.STYLE_SOLID); comment.setText(""); comment.setOptions(TextField.MULTILINE | TextField.DO_NOT_SCROLL); cell = new PdfPCell(); cell.setMinimumHeight(100); cell.setCellEvent(new FieldCell(comment.getTextField(), 200, writer)); table.addCell(cell); // check comment characters length javascript writer.addJavaScript("var commentField = " + "this.getField('commentField');" + "commentField" + ".setAction('Keystroke','checkLength()');" + "function checkLength(){" + "if(!event.willCommit && " + "event.value.length > 100){" + "app.alert('Warning! Comment can not " + "be more than 100 characters.');" + "event.change = '';" + "}}"); // add empty row table.addCell(""); table.addCell(""); // Code 6, add submit button PushbuttonField submitBtn = new PushbuttonField(writer, new Rectangle(0, 0, 35, 15), "submitPOST"); submitBtn.setBackgroundColor(Color.GRAY); submitBtn.setBorderStyle(PdfBorderDictionary.STYLE_BEVELED); submitBtn.setText("POST"); submitBtn.setOptions(PushbuttonField.VISIBLE_BUT_DOES_NOT_PRINT); PdfFormField submitField = submitBtn.getField(); submitField.setAction(PdfAction.createSubmitForm("http://www.geek-tutorials.com/java/itext/submit.php", null, PdfAction.SUBMIT_HTML_FORMAT)); cell = new PdfPCell(); cell.setMinimumHeight(15); cell.setCellEvent(new FieldCell(submitField, 35, writer)); table.addCell(cell); // Code 7, add reset button PushbuttonField resetBtn = new PushbuttonField(writer, new Rectangle(0, 0, 35, 15), "reset"); resetBtn.setBackgroundColor(Color.GRAY); resetBtn.setBorderStyle(PdfBorderDictionary.STYLE_BEVELED); resetBtn.setText("RESET"); resetBtn.setOptions(PushbuttonField.VISIBLE_BUT_DOES_NOT_PRINT); PdfFormField resetField = resetBtn.getField(); resetField.setAction(PdfAction.createResetForm(null, 0)); cell = new PdfPCell(); cell.setMinimumHeight(15); cell.setCellEvent(new FieldCell(resetField, 35, writer)); table.addCell(cell); document.add(table); document.close(); }
From source file:com.geek.tutorial.itext.table.SimplePDFTableAlignAndWidth.java
License:Open Source License
public SimplePDFTableAlignAndWidth() throws Exception { Document document = new Document(); PdfWriter.getInstance(document, new FileOutputStream("SimplePDFTableAlignAndWidth.pdf")); document.open();// www . j a v a 2s . com float[] colsWidth = { 1f, 2f }; // Code 1 PdfPTable table = new PdfPTable(colsWidth); table.setWidthPercentage(90); // Code 2 table.setHorizontalAlignment(Element.ALIGN_LEFT); // Code 3 table.addCell("1"); table.addCell("2"); table.addCell("3"); table.addCell("4"); table.addCell("5"); table.addCell("6"); document.add(table); document.close(); }
From source file:com.krawler.esp.servlets.ExportLeavePdfServlet.java
License:Open Source License
private ByteArrayOutputStream createLeaveForm(String cname, HttpServletRequest request, Session session, boolean isEmm) throws JSONException, SessionExpiredException, ParseException { String companyid = AuthHandler.getCompanyid(request); Company com = (Company) session.get(Company.class, companyid); String from = ""; String to = ""; String formTitle = "Absence Leave Form"; int i = 0;/*ww w . j a v a2 s .com*/ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); DecimalFormat decfm = new DecimalFormat("#,##0.00"); Date d2 = null; Date d3 = null; Calendar cal1 = Calendar.getInstance(); Calendar cal2 = Calendar.getInstance(); String month = ""; int days = 0; boolean showborder = true; if (!StringUtil.isNullOrEmpty(request.getParameter("showborder"))) { showborder = Boolean.parseBoolean(request.getParameter("showborder")); } SimpleDateFormat sdf = new SimpleDateFormat("MM-dd-yyyy"); String stDate = request.getParameter("stdate").replace("/", "-"); String endDate = request.getParameter("enddate").replace("/", "-"); d2 = sdf.parse(stDate); d3 = sdf.parse(endDate); days = getWorkingDays(request, session, companyid); ByteArrayOutputStream baos = new ByteArrayOutputStream(); PdfWriter writer = null; try { String empname = ""; String design = ""; String historyid = ""; String net = ""; String name = ""; String wtot = ""; String dtot = ""; String ttot = ""; Date generatedOn = null; DateFormat monthformat = new SimpleDateFormat("MMMM"); DateFormat monthformat2 = new SimpleDateFormat("MMMM dd yyyy"); Query query = null; // if (request.getParameter("flagpdf").equals("datewise")) { // query = session.createQuery("from masterDB.Payhistory t where t.userID.userID=:empid and t.paymonth=:month"); // query.setString("empid", request.getParameter("empid")); // query.setString("month", month); // } // if (request.getParameter("flagpdf").equals("monthwise")) { // month = request.getParameter("month"); // query = session.createQuery("from masterDB.Payhistory t where t.userID.userID=:empid and t.paymonth=:month"); // query.setString("empid", request.getParameter("empid")); // query.setString("month", request.getParameter("month")); // } query = session.createQuery( "from masterDB.Payhistory t where t.userID.userID=:empid and t.paycyclestart=:paycyclestart and t.paycycleend=:paycycleend"); query.setString("empid", request.getParameter("empid")); query.setDate("paycyclestart", d2); query.setDate("paycycleend", d3); String currSymbol = ""; String curid = AuthHandler.getCurrencyID(request); Query queryx = session.createQuery("from KWLCurrency where currencyID=:curid"); queryx.setString("curid", curid); KWLCurrency curncy = (KWLCurrency) queryx.uniqueResult(); String currsym = curncy.getHtmlcode(); String currname = curncy.getName(); try { char a1 = (char) Integer.parseInt(currsym, 16); currSymbol = Character.toString(a1); } catch (Exception e) { currSymbol = currsym; } List lst = (List) query.list(); if (lst.size() == 0) { throw new Exception("Exception occured"); } if (lst.size() > 0) { masterDB.Payhistory wage = (masterDB.Payhistory) lst.get(0); empname = wage.getName(); design = wage.getDesign(); historyid = wage.getHistoryid(); net = String.format("%.2f", Float.valueOf(wage.getNet().trim()).floatValue()); name = wage.getName(); wtot = wage.getWagetot(); ttot = wage.getTaxtot(); dtot = wage.getDeductot(); double unpaidleaves = wage.getUnpaidleaves(); generatedOn = wage.getGeneratedon(); String gen = monthformat2.format(generatedOn); String startdate = monthformat2.format(wage.getCreatedon()); String enddate = monthformat2.format(wage.getCreatedfor()); Document document = new Document(PageSize.A4, 15, 15, 15, 15); writer = PdfWriter.getInstance(document, baos); writer.setPageEvent(new EndPage(request)); document.open(); String userid = request.getParameter("empid"); query = session.createQuery("from com.krawler.common.admin.User as t where t.userID=:empid "); query.setString("empid", userid); lst = (List) query.list(); com.krawler.common.admin.User userinfo = (com.krawler.common.admin.User) lst.get(0); Useraccount ua = (Useraccount) session.get(Useraccount.class, userinfo.getUserID()); String uname = userinfo.getLastName() != null ? userinfo.getLastName() : ""; String empid = ""; if (ua.getEmployeeIdFormat() == null) { empid = ua.getEmployeeid() == null ? "" : hrmsManager.getEmpidFormatEdit(session, request, ua.getEmployeeid()); } else { HashMap<String, Object> requestParams = new HashMap<String, Object>(); requestParams.put("standardEmpId", hrmsManager.getEmpidFormatEdit(session, request, ua.getEmployeeid())); requestParams.put("employeeIdFormat", ua.getEmployeeIdFormat()); empid = hrmsManager.getNewEmployeeIdFormat(requestParams); } String department = wage.getDepartment(); String designation = getUserDesignation(ua); String bankacc = ua.getAccno() != null ? ua.getAccno() : ""; Empprofile empprof = null; String epf = ""; String dateofjoin = ""; try { empprof = (Empprofile) session.get(Empprofile.class, userid); epf = StringUtil.isNullOrEmpty(empprof.getPfno()) ? "" : empprof.getPfno(); dateofjoin = empprof.getJoindate() != null ? empprof.getJoindate().toString() : ""; } catch (Exception ex) { epf = ""; } PdfPTable mainTable = new PdfPTable(1); mainTable.setWidthPercentage(100); PdfPTable table1 = new PdfPTable(3); table1.setWidthPercentage(100); table1.setWidths(new float[] { 40, 40, 20 }); PdfPTable userTable1 = new PdfPTable(1); imgPath = "images/logo1.gif"; String cmpid = AuthHandler.getCompanyid(request); ServletContext sc = getServletContext(); userTable1.setHorizontalAlignment(Element.ALIGN_MIDDLE); userTable1.setWidthPercentage(10); PdfPCell cell11 = null; PdfPCell cell1x = new PdfPCell(new Paragraph(" ", fontMediumBold)); cell1x.setBorder(0); userTable1.addCell(cell1x); try { Image img = Image.getInstance(StorageHandler.GetProfileImgStorePath() + cmpid + ".png"); cell11 = new PdfPCell(img); cell11.setPaddingLeft(5); } catch (Exception e) { cell11 = new PdfPCell(new Paragraph(AuthHandler.getCompanyName(request), fontTblLargeBold)); cell11.setHorizontalAlignment(Element.ALIGN_CENTER); } if (cell11 != null) { cell11.setBorder(0); userTable1.addCell(cell11); } PdfPCell cell1 = new PdfPCell(new Paragraph("", fontMediumBold)); cell1.setHorizontalAlignment(Element.ALIGN_LEFT); cell1.setBorder(0); userTable1.addCell(cell1); PdfPTable userTable2 = new PdfPTable(1); userTable2.setWidthPercentage(100); PdfPCell cell = new PdfPCell(new Paragraph(com.getCompanyName(), fontMediumBold)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setBorder(0); cell.setPaddingTop(15); userTable2.addCell(cell); cell = new PdfPCell(new Paragraph(com.getCity(), fontSmallRegular)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setBorder(0); userTable2.addCell(cell); cell = new PdfPCell(new Paragraph(com.getAddress(), fontSmallRegular)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setBorder(0); userTable2.addCell(cell); cell = new PdfPCell(new Paragraph(com.getState(), fontSmallRegular)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setBorder(0); userTable2.addCell(cell); cell = new PdfPCell(new Paragraph(com.getZipCode(), fontSmallRegular)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setBorder(0); userTable2.addCell(cell); cell = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.payslip.period.params", new Object[] { request.getParameter("stdate"), request.getParameter("enddate") }, RequestContextUtils.getLocale(request)), fontSmallBold)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setBorder(0); userTable2.addCell(cell); PdfPTable userTable3 = new PdfPTable(1); userTable3.setWidthPercentage(100); PdfPCell cell2 = new PdfPCell(new Paragraph("", fontSmallBold)); cell2.setHorizontalAlignment(Element.ALIGN_LEFT); cell2.setBorder(0); userTable1.addCell(cell2); PdfPCell mainCell11 = new PdfPCell(userTable1); if (!showborder) { mainCell11.setBorder(0); } else { mainCell11.setBorder(Rectangle.LEFT); } table1.addCell(mainCell11); PdfPCell mainCell13 = new PdfPCell(userTable2); mainCell13.setBorder(0); table1.addCell(mainCell13); PdfPCell mainCell15 = new PdfPCell(userTable3); if (!showborder) { mainCell15.setBorder(0); } else { mainCell15.setBorder(Rectangle.RIGHT); } table1.addCell(mainCell15); PdfPCell mainCell12 = new PdfPCell(new Paragraph("")); if (!showborder) { mainCell12.setBorder(0); } else { mainCell12.setBorder(Rectangle.LEFT); } table1.addCell(mainCell12); PdfPCell mainCell14 = new PdfPCell(new Paragraph("")); mainCell14.setBorder(0); table1.addCell(mainCell14); PdfPCell mainCell16 = new PdfPCell(new Paragraph("")); if (!showborder) { mainCell16.setBorder(0); } else { mainCell16.setBorder(Rectangle.RIGHT); } table1.addCell(mainCell16); PdfPCell mainCell1 = new PdfPCell(table1); if (!showborder) { mainCell1.setBorder(0); } else { mainCell1.setBorder(1); } mainTable.addCell(mainCell1); // __________________________________________________________________________ PdfPTable table2 = new PdfPTable(4); table2.setWidthPercentage(100); table2.setWidths(new float[] { 20, 30, 20, 30 }); PdfPCell h11 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.common.employee.code", null, RequestContextUtils.getLocale(request)), fontSmallBold)); h11.setHorizontalAlignment(Element.ALIGN_LEFT); h11.setPadding(5); if (!showborder) { h11.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h11); PdfPCell h12 = new PdfPCell(new Paragraph("" + empid, fontSmallRegular)); h12.setHorizontalAlignment(Element.ALIGN_LEFT); h12.setPadding(5); if (!showborder) { h12.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h12); PdfPCell h13 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.common.employee.name", null, RequestContextUtils.getLocale(request)), fontSmallBold)); h13.setHorizontalAlignment(Element.ALIGN_LEFT); h13.setPadding(5); if (!showborder) { h13.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h13); PdfPCell h14 = new PdfPCell(new Paragraph(userinfo.getFirstName() + " " + uname, fontSmallRegular)); h14.setHorizontalAlignment(Element.ALIGN_LEFT); h14.setPadding(5); if (!showborder) { h14.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h14); PdfPCell h21 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.common.department", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); h21.setHorizontalAlignment(Element.ALIGN_LEFT); h21.setPadding(5); if (!showborder) { h21.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h21); PdfPCell h22 = new PdfPCell(new Paragraph(department, fontSmallRegular)); h22.setHorizontalAlignment(Element.ALIGN_LEFT); h22.setPadding(5); if (!showborder) { h22.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h22); PdfPCell h33 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.common.designation", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); h33.setHorizontalAlignment(Element.ALIGN_LEFT); h33.setPadding(5); if (!showborder) { h33.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h33); PdfPCell h34 = new PdfPCell(new Paragraph(designation, fontSmallRegular)); h34.setHorizontalAlignment(Element.ALIGN_LEFT); h34.setPadding(5); if (!showborder) { h34.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h34); PdfPCell h43 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.common.bank.ac.no", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); h43.setHorizontalAlignment(Element.ALIGN_LEFT); h43.setPadding(5); if (!showborder) { h43.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h43); PdfPCell h44 = new PdfPCell(new Paragraph(bankacc, fontSmallRegular)); h44.setHorizontalAlignment(Element.ALIGN_LEFT); h44.setPadding(5); if (!showborder) { h44.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h44); PdfPCell h61 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.common.working.days", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); h61.setHorizontalAlignment(Element.ALIGN_LEFT); h61.setPadding(5); if (!showborder) { h61.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h61); PdfPCell h62 = new PdfPCell(new Paragraph(String.valueOf(days), fontSmallRegular)); h62.setHorizontalAlignment(Element.ALIGN_LEFT); h62.setPadding(5); if (!showborder) { h62.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h62); PdfPCell h63 = new PdfPCell(new Paragraph( messageSource.getMessage("hrms.common.e.p.f", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); h63.setHorizontalAlignment(Element.ALIGN_LEFT); h63.setPadding(5); if (!showborder) { h63.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h63); PdfPCell h64 = new PdfPCell(new Paragraph(epf, fontSmallRegular)); h64.setHorizontalAlignment(Element.ALIGN_LEFT); h64.setPadding(5); if (!showborder) { h64.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h64); PdfPCell h65 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.common.DateofJoining", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); h65.setHorizontalAlignment(Element.ALIGN_LEFT); h65.setPadding(5); if (!showborder) { h65.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h65); PdfPCell h66 = new PdfPCell(new Paragraph(dateofjoin, fontSmallRegular)); h66.setHorizontalAlignment(Element.ALIGN_LEFT); h66.setPadding(5); if (!showborder) { h66.setBorder(0); } // else{ // mainCell1.setBorder(1); // } table2.addCell(h66); for (int y = 0; y < 2; y++) { PdfPCell h71 = new PdfPCell(new Paragraph(" ", fontTblMediumBold)); h71.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { h71.setBorder(0); } else { h71.setBorder(Rectangle.LEFT); } table2.addCell(h71); for (i = 0; i < 2; i++) { h71 = new PdfPCell(new Paragraph(" ", fontTblMediumBold)); h71.setHorizontalAlignment(Element.ALIGN_LEFT); h71.setBorder(0); table2.addCell(h71); } h71 = new PdfPCell(new Paragraph(" ", fontTblMediumBold)); h71.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { h71.setBorder(0); } else { h71.setBorder(Rectangle.RIGHT); } table2.addCell(h71); } PdfPCell mainCell2 = new PdfPCell(table2); if (!showborder) { mainCell2.setBorder(0); } else { mainCell2.setBorder(1); } mainTable.addCell(mainCell2); PdfPTable table3main = new PdfPTable(1); table3main.setWidthPercentage(100); PdfPTable table7main = new PdfPTable(1); table7main.setWidthPercentage(100); PdfPTable table31 = new PdfPTable(4); table31.setWidthPercentage(100); //table31.setWidths(new float[]{20,15,15,20,15,15}); table31.setWidths(new float[] { 30, 20, 30, 20 }); PdfPTable table41 = new PdfPTable(2); table41.setWidthPercentage(100); //table31.setWidths(new float[]{20,15,15,20,15,15}); table41.setWidths(new float[] { 50, 50 }); //*************************************************************************************************************** PdfPCell s11 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.Earnings", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); s11.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { s11.setBorder(0); } else { s11.setBorder(Rectangle.LEFT + Rectangle.BOTTOM); } s11.setPadding(5); table31.addCell(s11); PdfPCell s12 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.amount.params", new Object[] { currSymbol }, RequestContextUtils.getLocale(request)), fontTblMediumBold)); s12.setHorizontalAlignment(Element.ALIGN_RIGHT); s12.setPadding(5); if (!showborder) { s12.setBorder(0); } else { s12.setBorder(Rectangle.LEFT + Rectangle.BOTTOM); } table31.addCell(s12); // PdfPCell s13 = new PdfPCell(new Paragraph("Year to Date", fontTblMediumBold)); // s13.setHorizontalAlignment(Element.ALIGN_RIGHT); // s13.setBorder(Rectangle.LEFT + Rectangle.BOTTOM); // s13.setPadding(5); // table31.addCell(s13); PdfPCell s14 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.Deduction", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); s14.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { s14.setBorder(0); } else { s14.setBorder(Rectangle.LEFT + Rectangle.BOTTOM); } s14.setPadding(5); table31.addCell(s14); PdfPCell s15 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.amount.params", new Object[] { currSymbol }, RequestContextUtils.getLocale(request)), fontTblMediumBold)); s15.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { s15.setBorder(0); } else { s15.setBorder(Rectangle.LEFT + Rectangle.RIGHT + Rectangle.BOTTOM); } s15.setPadding(5); table31.addCell(s15); // PdfPCell s16 = new PdfPCell(new Paragraph("Year to Date", fontTblMediumBold)); // s16.setHorizontalAlignment(Element.ALIGN_RIGHT); // s16.setBorder(Rectangle.RIGHT + Rectangle.LEFT + Rectangle.BOTTOM); // s16.setPadding(5); // table31.addCell(s16); int Wcount = 0; float taxtotal = 0; Query queryw = session.createQuery( "from masterDB.Historydetail t where t.payhistory.userID=:userid and createdfor >=:stdate and createdfor <=:enddate and t.type =:type"); Query basicquery1 = session.createQuery( "from masterDB.Historydetail t where t.payhistory.historyid=:historyid and t.name=:name and t.type=:type "); basicquery1.setString("historyid", historyid); basicquery1.setString("name", "Wages"); basicquery1.setString("type", "Basic"); List lst1 = (List) basicquery1.list(); Query query1 = session.createQuery( "from masterDB.Historydetail t where t.payhistory.historyid=:historyid and t.name=:name and t.type<>:type order by t.amount"); query1.setString("historyid", historyid); query1.setString("name", "Wages"); query1.setString("type", "Basic"); lst1.addAll((List) query1.list()); Query query2 = session.createQuery( "from masterDB.Historydetail t where t.payhistory.historyid=:historyid and t.name=:name order by t.amount"); query2.setString("historyid", historyid); query2.setString("name", "Taxes"); List lst2 = (List) query2.list(); CompanyPreferences comp = (CompanyPreferences) session.get(CompanyPreferences.class, cmpid); int financialMonth = comp.getFinancialmonth(); Calendar c1 = Calendar.getInstance(); c1.setTime(d3); c1.set(Calendar.MONTH, financialMonth); c1.set(Calendar.DATE, 1); Date d = c1.getTime(); Date DOJ = new java.util.Date(empprof.getJoindate().getTime()); if (d3.before(d)) { int currentYear = c1.get(Calendar.YEAR) - 1; c1.set(Calendar.YEAR, currentYear); d = c1.getTime(); } if (DOJ.after(d)) { c1.setTime(DOJ); c1.set(Calendar.DATE, 1); d = c1.getTime(); } Query query3 = session.createQuery( "from masterDB.Historydetail t where t.payhistory.historyid=:historyid and t.name=:name order by t.amount"); query3.setString("historyid", historyid); query3.setString("name", "Deduction"); List lst3 = (List) query3.list(); int size = lst1.size() > (lst2.size() + lst3.size()) ? lst1.size() : lst2.size() + lst3.size(); float wagetotal = 0; double totalYTDEarning = 0, totalYTDDeduction = 0; for (i = 0; i < size; i++) { masterDB.Historydetail hd = null; if (i < lst1.size()) { hd = (masterDB.Historydetail) lst1.get(i); PdfPCell s21 = new PdfPCell(new Paragraph(hd.getType(), fontSmallRegular)); s21.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { s21.setBorder(0); } else { s21.setBorder(Rectangle.LEFT); } s21.setPadding(5); table31.addCell(s21); BigDecimal bd = new BigDecimal(hd.getAmount()); bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP); double newamount = bd.doubleValue(); PdfPCell s22 = new PdfPCell( new Paragraph(String.valueOf(decfm.format(newamount)), fontSmallRegular)); s22.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { s22.setBorder(0); } else { s22.setBorder(Rectangle.LEFT); } s22.setPadding(5); table31.addCell(s22); queryw.setString("userid", request.getParameter("empid")); queryw.setTimestamp("stdate", d); queryw.setTimestamp("enddate", d3); queryw.setString("type", hd.getType()); List lstw = (List) queryw.list(); double wageAmt = 0; masterDB.Historydetail hd1 = null; for (int y = 0; y < lstw.size(); y++) { hd1 = (masterDB.Historydetail) lstw.get(y); wageAmt += Double.parseDouble(hd1.getAmount()); } // PdfPCell s23 = new PdfPCell(new Paragraph(String.valueOf(decfm.format(wageAmt)), fontSmallRegular)); // s23.setHorizontalAlignment(Element.ALIGN_RIGHT); // s23.setBorder(Rectangle.LEFT); // s23.setPadding(5); // table31.addCell(s23); wagetotal = wagetotal + Float.parseFloat(hd.getAmount()); totalYTDEarning = totalYTDEarning + wageAmt; Wcount++; } else { for (int j = 0; j < 2; j++) { PdfPCell s21 = new PdfPCell(new Paragraph("", fontSmallRegular)); s21.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { s21.setBorder(0); } else { s21.setBorder(Rectangle.LEFT); } s21.setPadding(5); table31.addCell(s21); } } if (i < lst2.size()) { hd = (masterDB.Historydetail) lst2.get(i); PdfPCell s24 = new PdfPCell(new Paragraph(hd.getType(), fontSmallRegular)); s24.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { s24.setBorder(0); } else { s24.setBorder(Rectangle.LEFT); } s24.setPadding(5); table31.addCell(s24); BigDecimal bd = new BigDecimal(hd.getAmount()); bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP); double newamount = bd.doubleValue(); PdfPCell s25 = new PdfPCell(new Paragraph(decfm.format(newamount), fontSmallRegular)); s25.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { s25.setBorder(0); } else { s25.setBorder(Rectangle.RIGHT + Rectangle.LEFT); } s25.setPadding(5); table31.addCell(s25); queryw.setString("userid", request.getParameter("empid")); queryw.setTimestamp("stdate", d); queryw.setTimestamp("enddate", d3); queryw.setString("type", hd.getType()); List lstw1 = (List) queryw.list(); double taxAmt = 0; masterDB.Historydetail hd2 = null; for (int y = 0; y < lstw1.size(); y++) { hd2 = (masterDB.Historydetail) lstw1.get(y); taxAmt += Double.parseDouble(hd2.getAmount()); } // PdfPCell s26 = new PdfPCell(new Paragraph(decfm.format(taxAmt), fontSmallRegular)); // s26.setHorizontalAlignment(Element.ALIGN_RIGHT); // s26.setBorder(Rectangle.RIGHT + Rectangle.LEFT); // s26.setPadding(5); // table31.addCell(s26); taxtotal = taxtotal + Float.parseFloat(hd.getAmount()); totalYTDDeduction = totalYTDDeduction + taxAmt; } else { if (i - lst2.size() < lst3.size()) { hd = (masterDB.Historydetail) lst3.get(i - lst2.size()); PdfPCell s24 = new PdfPCell(new Paragraph(hd.getType(), fontSmallRegular)); if (hd.getType().equals("Unpaid_leaves")) { s24 = new PdfPCell( new Paragraph(hd.getType() + "(" + unpaidleaves + ")", fontSmallRegular)); } s24.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { s24.setBorder(0); } else { s24.setBorder(Rectangle.LEFT); } s24.setPadding(5); table31.addCell(s24); BigDecimal bd = new BigDecimal(hd.getAmount()); bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP); double newamount = bd.doubleValue(); PdfPCell s25 = new PdfPCell(new Paragraph(decfm.format(newamount), fontSmallRegular)); s25.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { s25.setBorder(0); } else { s25.setBorder(Rectangle.RIGHT + Rectangle.LEFT); ; } s25.setPadding(5); table31.addCell(s25); queryw.setString("userid", request.getParameter("empid")); queryw.setTimestamp("stdate", d); queryw.setTimestamp("enddate", d3); queryw.setString("type", hd.getType()); List lstw2 = (List) queryw.list(); masterDB.Historydetail hd3 = null; double deductAmt = 0; for (int y = 0; y < lstw2.size(); y++) { hd3 = (masterDB.Historydetail) lstw2.get(y); deductAmt += Double.parseDouble(hd3.getAmount()); } // PdfPCell s26 = new PdfPCell(new Paragraph(decfm.format(deductAmt), fontSmallRegular)); // s26.setHorizontalAlignment(Element.ALIGN_RIGHT); // s26.setBorder(Rectangle.RIGHT + Rectangle.LEFT); // s26.setPadding(5); // table31.addCell(s26); taxtotal = taxtotal + Float.parseFloat(hd.getAmount()); totalYTDDeduction = totalYTDDeduction + deductAmt; } else { // if(i-lst2.size()-lst3.size() < lst4.size()){ // hd = (masterDB.Historydetail) lst4.get(i-lst2.size()-lst3.size()); // PdfPCell v24 = new PdfPCell(new Paragraph(hd.getType(), fontSmallRegular)); // v24.setHorizontalAlignment(Element.ALIGN_LEFT); // v24.setBorder(Rectangle.LEFT); // v24.setPadding(5); // table31.addCell(v24); // // BigDecimal bd = new BigDecimal(hd.getAmount()); // bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP); // double newamount = bd.doubleValue(); // // PdfPCell s25 = new PdfPCell(new Paragraph(decfm.format(newamount), fontSmallRegular)); // s25.setHorizontalAlignment(Element.ALIGN_RIGHT); // s25.setBorder(Rectangle.RIGHT + Rectangle.LEFT);; // s25.setPadding(5); // table31.addCell(s25); // }else{ for (int j = 0; j < 2; j++) { PdfPCell s21 = new PdfPCell(new Paragraph("", fontSmallRegular)); s21.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { s21.setBorder(0); } else { s21.setBorder(Rectangle.LEFT + Rectangle.RIGHT); } s21.setPadding(5); table31.addCell(s21); } } } } // } PdfPCell s91 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.total.earnings", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); s91.setHorizontalAlignment(Element.ALIGN_BASELINE); s91.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { s91.setBorder(0); } else { s91.setBorder(Rectangle.LEFT + Rectangle.TOP + Rectangle.BOTTOM); } s91.setPadding(5); table31.addCell(s91); BigDecimal bd = new BigDecimal(String.valueOf(wagetotal)); bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP); double newamount = bd.doubleValue(); PdfPCell s92 = new PdfPCell(new Paragraph(decfm.format(newamount), fontSmallRegular)); s92.setHorizontalAlignment(Element.ALIGN_BASELINE); s92.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { s92.setBorder(0); } else { s92.setBorder(Rectangle.LEFT + Rectangle.TOP + Rectangle.BOTTOM); } s92.setPadding(5); table31.addCell(s92); // PdfPCell s93 = new PdfPCell(new Paragraph(decfm.format(totalYTDEarning), fontSmallRegular)); // s93.setHorizontalAlignment(Element.ALIGN_BASELINE); // s93.setHorizontalAlignment(Element.ALIGN_RIGHT); // s93.setBorder(Rectangle.LEFT + Rectangle.TOP); // s93.setPadding(5); // table31.addCell(s93); PdfPCell s94 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.total.deductions", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); s94.setHorizontalAlignment(Element.ALIGN_BASELINE); s94.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { s94.setBorder(0); } else { s94.setBorder(Rectangle.LEFT + Rectangle.TOP + Rectangle.BOTTOM); } s94.setPadding(5); table31.addCell(s94); bd = new BigDecimal(String.valueOf(taxtotal)); bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP); newamount = bd.doubleValue(); PdfPCell s95 = new PdfPCell(new Paragraph(decfm.format(newamount), fontSmallRegular)); s95.setHorizontalAlignment(Element.ALIGN_BASELINE); s95.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { s95.setBorder(0); } else { s95.setBorder(Rectangle.RIGHT + Rectangle.LEFT + Rectangle.TOP + Rectangle.BOTTOM); } s95.setPadding(5); table31.addCell(s95); // PdfPCell s96 = new PdfPCell(new Paragraph(decfm.format(totalYTDDeduction), fontSmallRegular)); // s96.setHorizontalAlignment(Element.ALIGN_BASELINE); // s96.setHorizontalAlignment(Element.ALIGN_RIGHT); // s96.setBorder(Rectangle.RIGHT + Rectangle.LEFT + Rectangle.TOP); // s96.setPadding(5); // table31.addCell(s96); for (int y = 0; y < 2; y++) { PdfPCell he71 = new PdfPCell(new Paragraph(" ", fontTblMediumBold)); he71.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { he71.setBorder(0); } else { he71.setBorder(Rectangle.LEFT); } table31.addCell(he71); for (i = 0; i < 2; i++) { he71 = new PdfPCell(new Paragraph(" ", fontTblMediumBold)); he71.setHorizontalAlignment(Element.ALIGN_LEFT); he71.setBorder(0); table31.addCell(he71); } he71 = new PdfPCell(new Paragraph(" ", fontTblMediumBold)); he71.setHorizontalAlignment(Element.ALIGN_LEFT); // he71.setBorder(Rectangle.RIGHT); if (!showborder) { he71.setBorder(0); } else { he71.setBorder(Rectangle.RIGHT); } table31.addCell(he71); } Query query4 = session.createQuery( "from masterDB.Historydetail t where t.payhistory.historyid=:historyid and t.name=:name order by t.amount"); query4.setString("historyid", historyid); query4.setString("name", "Employer Contribution"); List lst4 = (List) query4.list(); double ectotal = 0; PdfPCell ec11 = new PdfPCell( new Paragraph(messageSource.getMessage("hrms.payroll.EmployerContribution", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); ec11.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { ec11.setBorder(0); } else { ec11.setBorder(Rectangle.LEFT + Rectangle.BOTTOM); } ec11.setPadding(5); table41.addCell(ec11); PdfPCell ec12 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.amount.params", new Object[] { currSymbol }, RequestContextUtils.getLocale(request)), fontTblMediumBold)); ec12.setHorizontalAlignment(Element.ALIGN_RIGHT); ec12.setPadding(5); if (!showborder) { ec12.setBorder(0); } else { ec12.setBorder(Rectangle.LEFT + Rectangle.BOTTOM + Rectangle.RIGHT); } table41.addCell(ec12); masterDB.Historydetail hd1 = null; for (i = 0; i < lst4.size(); i++) { hd1 = (masterDB.Historydetail) lst4.get(i); PdfPCell s24 = new PdfPCell(new Paragraph(hd1.getType(), fontSmallRegular)); s24.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { s24.setBorder(0); } else { s24.setBorder(Rectangle.LEFT); } s24.setPadding(5); table41.addCell(s24); bd = new BigDecimal(hd1.getAmount()); bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP); newamount = bd.doubleValue(); ectotal = ectotal + newamount; PdfPCell s25 = new PdfPCell(new Paragraph(decfm.format(newamount), fontSmallRegular)); s25.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { s25.setBorder(0); } else { s25.setBorder(Rectangle.RIGHT + Rectangle.LEFT); } s25.setPadding(5); table41.addCell(s25); } PdfPCell se91 = new PdfPCell( new Paragraph(messageSource.getMessage("hrms.payroll.total.contribution", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); se91.setHorizontalAlignment(Element.ALIGN_BASELINE); se91.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { se91.setBorder(0); } else { se91.setBorder(Rectangle.LEFT + Rectangle.TOP + Rectangle.BOTTOM); } se91.setPadding(5); table41.addCell(se91); bd = new BigDecimal(String.valueOf(ectotal)); bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP); newamount = bd.doubleValue(); PdfPCell se92 = new PdfPCell(new Paragraph(decfm.format(newamount), fontSmallRegular)); se92.setHorizontalAlignment(Element.ALIGN_BASELINE); se92.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { se92.setBorder(0); } else { se92.setBorder(Rectangle.LEFT + Rectangle.TOP + Rectangle.BOTTOM + Rectangle.RIGHT); } se92.setPadding(5); table41.addCell(se92); PdfPCell Cell31 = new PdfPCell(table31); if (!showborder) { Cell31.setBorder(0); } else { Cell31.setBorder(1); } table3main.addCell(Cell31); PdfPCell mainCell4 = new PdfPCell(table3main); if (!showborder) { mainCell4.setBorder(0); } else { mainCell4.setBorder(1); } mainTable.addCell(mainCell4); PdfPCell Cell41 = new PdfPCell(table41); if (!showborder) { Cell41.setBorder(0); } else { Cell41.setBorder(1); } table7main.addCell(Cell41); PdfPCell mainCell44 = new PdfPCell(table7main); if (!showborder) { mainCell44.setBorder(0); } else { mainCell44.setBorder(1); } mainTable.addCell(mainCell44); //*************************************************************************************************************** PdfPTable table4 = new PdfPTable(2); table4.setWidthPercentage(100); for (i = 0; i < 4; i++) { PdfPCell i33 = new PdfPCell(new Paragraph(" ", fontTblMediumBold)); i33.setHorizontalAlignment(Element.ALIGN_CENTER); if (!showborder) { i33.setBorder(0); } else { i33.setBorder(Rectangle.LEFT + Rectangle.RIGHT); } table4.addCell(i33); } PdfPCell i31 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.netpay", null, RequestContextUtils.getLocale(request)) + " ", fontTblMediumBold)); i31.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { i31.setBorder(0); } else { i31.setBorder(Rectangle.LEFT + Rectangle.TOP); } i31.setPadding(5); table4.addCell(i31); double netpay = 0; netpay = wagetotal - taxtotal; netpay = Math.round(netpay); String amount = numberFormatter((double) netpay, currSymbol); //PdfPCell i33 = new PdfPCell(new Paragraph(currSymbol+String.valueOf((int)netpay+".00"), fontSmallRegular)); PdfPCell i33 = new PdfPCell(new Paragraph(amount, fontTblMediumBold)); // PdfPCell i33 = new PdfPCell(new Paragraph("Rs 13,350.00", fontTblMediumBold)); i33.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { i33.setBorder(0); } else { i31.setBorder(Rectangle.RIGHT); } i33.setPadding(5); table4.addCell(i33); PdfPCell i32 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.in.words", null, RequestContextUtils.getLocale(request)), fontTblMediumBold)); i32.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { i32.setBorder(0); } else { i31.setBorder(Rectangle.LEFT); } i32.setPadding(5); table4.addCell(i32); int netpayi = (int) netpay; // String netinword = EnglishNumberToWords.convert(Long.parseLong(String.valueOf(netpayi))); String netinword = "";//new EnglishNumberToWords(request).convert(netpay); PdfPCell i34 = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.only", new Object[] { currname, netinword }, RequestContextUtils.getLocale(request)), fontTblMediumBold)); i34.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { i34.setBorder(0); } else { i31.setBorder(Rectangle.RIGHT); } i34.setPadding(5); table4.addCell(i34); PdfPCell mainCell5 = new PdfPCell(table4); if (!showborder) { mainCell5.setBorder(0); } else { mainCell5.setBorder(1); } mainTable.addCell(mainCell5); document.add(new Paragraph("\n\n")); PdfPTable table5 = new PdfPTable(2); table5.setWidthPercentage(80); cell = new PdfPCell(new Paragraph("___________________________")); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setBorder(0); table5.addCell(cell); cell = new PdfPCell(new Paragraph("___________________________")); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setBorder(0); table5.addCell(cell); cell = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.employee.signature", null, RequestContextUtils.getLocale(request)), fontSmallBold)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setBorder(0); table5.addCell(cell); cell = new PdfPCell(new Paragraph(messageSource.getMessage("hrms.payroll.manager.signature", null, RequestContextUtils.getLocale(request)), fontSmallBold)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setBorder(0); table5.addCell(cell); document.add(mainTable); // document.add(new Paragraph("\n\n\n\n\n\n\n\n\n\n\n\n")); // document.add(table5); document.close(); } return baos; } catch (Exception ex) { ex.printStackTrace(); return null; } finally { writer.close(); } }
From source file:com.krawler.esp.servlets.ExportMPXServlet.java
License:Open Source License
private static void addComponyLogo(Document d) throws ConfigurationException, DocumentException { PdfPTable table = new PdfPTable(1); table.setHorizontalAlignment(Element.ALIGN_RIGHT); table.setWidthPercentage(50);/*from w w w .ja va 2 s . c o m*/ PdfPCell cell = null; try { imgPath = com.krawler.esp.utils.ConfigReader.getinstance().get("platformURL") + "b/" + companySubDomain + "/images/store/?company=true"; // imgPath="http://192.168.0.141:8080/dp_dev/b/Demo/images/store/?company=true"; Image img = Image.getInstance(imgPath); cell = new PdfPCell(img); } catch (Exception e) { cell = new PdfPCell(new Paragraph(companyName, fontBig)); } cell.setBorder(0); cell.setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(cell); table.setSpacingAfter(10); d.add(table); }
From source file:com.krawler.esp.servlets.ExportProjectReportServlet.java
License:Open Source License
private static void addComponyLogo(Document d, HttpServletRequest request) throws ConfigurationException, DocumentException { PdfPTable table = new PdfPTable(2); table.setHorizontalAlignment(Element.ALIGN_LEFT); table.setWidthPercentage(100);/*www . j a va2 s . c o m*/ PdfPCell cell = null; try { imgPath = com.krawler.esp.utils.ConfigReader.getinstance().get("platformURL") + "b/" + companySubDomain + "/images/store/?company=true"; // imgPath="http://192.168.0.141:8080/dp_dev/b/Demo/images/store/?company=true"; Image img = Image.getInstance(imgPath); cell = new PdfPCell(img); } catch (Exception e) { cell = new PdfPCell(new Paragraph(companyName, fontBig)); } cell.setBorder(0); cell.setHorizontalAlignment(Element.ALIGN_LEFT); table.addCell(cell); PdfPCell cell2 = new PdfPCell(new Paragraph(ProjectName.toUpperCase(), FontFactory.getFont("Helvetica", 15, Font.BOLD, Color.BLACK))); cell2.setBorderWidth(0); cell2.setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(cell2); d.add(table); }
From source file:com.krawler.esp.servlets.ExportProjectReportServlet.java
License:Open Source License
private static void addTitleSubtitle(Document d) throws DocumentException, JSONException { java.awt.Color tColor = new Color(Integer.parseInt(config.getString("textColor"), 16)); fontBold.setColor(tColor);//from w w w. j a v a 2 s .c om fontRegular.setColor(tColor); PdfPTable table = new PdfPTable(1); table.setHorizontalAlignment(Element.ALIGN_CENTER); table.setWidthPercentage(100); table.setSpacingBefore(6); //Report Title PdfPCell cell = new PdfPCell(new Paragraph(config.getString("title"), fontBold)); cell.setBorder(0); cell.setBorderWidth(0); cell.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell); //Report Subtitle(s) String[] SubTitles = config.getString("subtitles").split("~");// '~' as separator for (int i = 0; i < SubTitles.length; i++) { cell = new PdfPCell(new Paragraph(SubTitles[i], fontRegular)); cell.setBorder(0); cell.setBorderWidth(0); cell.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell); } table.setSpacingAfter(6); d.add(table); //Separator line PdfPTable line = new PdfPTable(1); line.setWidthPercentage(100); PdfPCell cell1 = null; cell1 = new PdfPCell(new Paragraph("")); cell1.setBorder(PdfPCell.BOTTOM); line.addCell(cell1); d.add(line); }
From source file:com.krawler.esp.servlets.ExportProjectSummaryServlet.java
License:Open Source License
private static void addComponyLogo(Document d, HttpServletRequest request) throws ConfigurationException, DocumentException { PdfPTable table = new PdfPTable(1); table.setHorizontalAlignment(Element.ALIGN_LEFT); table.setWidthPercentage(50);/*from w w w . ja v a2 s.c om*/ PdfPCell cell = null; try { imgPath = com.krawler.esp.utils.ConfigReader.getinstance().get("platformURL") + "b/" + companySubDomain + "/images/store/?company=true"; Image img = Image.getInstance(imgPath); cell = new PdfPCell(img); } catch (Exception e) { cell = new PdfPCell(new Paragraph(companyName, fontBig)); } cell.setBorder(0); cell.setHorizontalAlignment(Element.ALIGN_LEFT); table.addCell(cell); d.add(table); }
From source file:com.krawler.esp.servlets.ExportProjectSummaryServlet.java
License:Open Source License
private static void addTitleSubtitle(Document d) throws DocumentException, JSONException { java.awt.Color tColor = new Color(0, 0, 0); fontBold.setColor(tColor);/*w ww.j a v a 2 s . c o m*/ fontRegular.setColor(tColor); PdfPTable table = new PdfPTable(1); table.setHorizontalAlignment(Element.ALIGN_CENTER); java.text.SimpleDateFormat df = new java.text.SimpleDateFormat("yyyy-MM-dd"); java.util.Date today = new java.util.Date(); table.setWidthPercentage(100); table.setSpacingBefore(6); //Report Title PdfPCell cell = new PdfPCell(new Paragraph("Project Summary", fontBold)); cell.setBorder(0); cell.setBorderWidth(0); cell.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell); //Sub-title(s) cell = new PdfPCell(new Paragraph("(on comparison with " + baseName + ")", fontRegular)); cell.setBorder(0); cell.setBorderWidth(0); cell.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell); //Separator line PdfPTable line = new PdfPTable(1); line.setWidthPercentage(100); PdfPCell cell1 = null; cell1 = new PdfPCell(new Paragraph("")); cell1.setBorder(PdfPCell.BOTTOM); line.addCell(cell1); d.add(table); d.add(line); }