List of usage examples for com.lowagie.text Document Document
public Document(Rectangle pageSize, float marginLeft, float marginRight, float marginTop, float marginBottom)
Document
-object. From source file:com.krawler.spring.exportFunctionality.exportMPXDAOImpl.java
License:Open Source License
public ByteArrayOutputStream getPdfData(JSONObject grid, HttpServletRequest request, JSONObject obj) throws ServiceException { ByteArrayOutputStream baos = new ByteArrayOutputStream(); PdfWriter writer = null;/*from w ww . j ava2s . com*/ Document document = null; try { JSONArray gridmap = grid == null ? null : grid.getJSONArray("data"); String colHeader = ""; String colHeaderFinal = ""; String fieldListFinal = ""; String fieldList = ""; String width = ""; String align = ""; String alignFinal = ""; String widthFinal = ""; String colHeaderArrStr[] = null; String dataIndexArrStr[] = null; String widthArrStr[] = null; String alignArrStr[] = null; int strLength = 0; float totalWidth = 0; config = new com.krawler.utils.json.base.JSONObject(request.getParameter("config")); document = null; Rectangle rec = null; if (config.getBoolean("landscape")) { Rectangle recPage = new Rectangle(PageSize.A4.rotate()); recPage.setBackgroundColor(new java.awt.Color(Integer.parseInt(config.getString("bgColor"), 16))); document = new Document(recPage, 15, 15, 30, 30); rec = document.getPageSize(); totalWidth = rec.getWidth(); } else { Rectangle recPage = new Rectangle(PageSize.A4); recPage.setBackgroundColor(new java.awt.Color(Integer.parseInt(config.getString("bgColor"), 16))); document = new Document(recPage, 15, 15, 30, 30); rec = document.getPageSize(); totalWidth = rec.getWidth(); } writer = PdfWriter.getInstance(document, baos); writer.setPageEvent(new EndPage()); document.open(); if (config.getBoolean("showLogo")) { addComponyLogo(document, request); } addTitleSubtitle(document); if (gridmap != null) { int givenTotalWidth = 0; for (int i = 0; i < gridmap.length(); i++) { JSONObject temp = gridmap.getJSONObject(i); givenTotalWidth += Integer.parseInt(temp.getString("width")); } double widthRatio = 1; if (givenTotalWidth > (totalWidth - 40.00)) { widthRatio = (totalWidth - 40.00) / givenTotalWidth; // 40.00 is left + right + table margin [15+15+10] margins of documents } for (int i = 0; i < gridmap.length(); i++) { JSONObject temp = gridmap.getJSONObject(i); colHeader += StringUtil.serverHTMLStripper(temp.getString("title")); if (colHeader.indexOf("*") != -1) { colHeader = colHeader.substring(0, colHeader.indexOf("*") - 1) + ","; } else { colHeader += ","; } fieldList += temp.getString("header") + ","; if (!config.getBoolean("landscape")) { int totalWidth1 = (int) ((totalWidth / gridmap.length()) - 5.00); width += "" + totalWidth1 + ","; //resize according to page view[potrait] } else { double adjustedWidth = (Integer.parseInt(temp.getString("width")) * widthRatio); width += ((int) Math.floor(adjustedWidth)) + ","; } if (temp.getString("align").equals("")) { align += "none" + ","; } else { align += temp.getString("align") + ","; } } strLength = colHeader.length() - 1; colHeaderFinal = colHeader.substring(0, strLength); strLength = fieldList.length() - 1; fieldListFinal = fieldList.substring(0, strLength); strLength = width.length() - 1; widthFinal = width.substring(0, strLength); strLength = align.length() - 1; alignFinal = align.substring(0, strLength); colHeaderArrStr = colHeaderFinal.split(","); dataIndexArrStr = fieldListFinal.split(","); widthArrStr = widthFinal.split(","); alignArrStr = alignFinal.split(","); } else { fieldList = request.getParameter("header"); colHeader = request.getParameter("title"); width = request.getParameter("width"); align = request.getParameter("align"); colHeaderArrStr = colHeader.split(","); dataIndexArrStr = fieldList.split(","); widthArrStr = width.split(","); alignArrStr = align.split(","); } JSONArray store = obj.getJSONArray("data"); if (grid != null && grid.has("groupdata")) { JSONObject groupingConfig = grid.getJSONObject("groupdata"); addGroupableTable(groupingConfig, 0, colHeaderArrStr.length, 0, store.length(), store, dataIndexArrStr, colHeaderArrStr, widthArrStr, alignArrStr, document, request); } else { addTable(0, colHeaderArrStr.length, 0, store.length(), store, dataIndexArrStr, colHeaderArrStr, widthArrStr, alignArrStr, document, request); } } catch (Exception e) { throw ServiceException.FAILURE("exportMPXDAOImpl.getPdfData", e); } finally { if (document != null) { document.close(); } if (writer != null) { writer.close(); } } return baos; }
From source file:com.krawler.spring.hrms.exportreport.exportAppraisalReportPDFDAOImpl.java
License:Open Source License
private ByteArrayOutputStream AppraisalDetail(HttpServletRequest request, Session session, boolean isEmm, String str, String goalstr, String quesansstr) throws JSONException, SessionExpiredException, DocumentException, ServiceException, IOException { ByteArrayOutputStream baos = new ByteArrayOutputStream(); String[] colHeader = {//from ww w . j a va2s. com messageSource.getMessage("hrms.common.employee.name", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraisal.cycle.name", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraisal.start.date", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraisal.end.date", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.total.appraisals", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.common.Updates.NoofAppraisalsSubmitted", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.overall.self.comments", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.overall.appraiser.comments", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.overall.competency.score", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.competencies", null, RequestContextUtils.getLocale(request)) }; String[] colHeader1 = { messageSource.getMessage("hrms.common.employee.name", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraisal.cycle.name", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraisal.start.date", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraisal.end.date", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.total.appraisals", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.common.Updates.NoofAppraisalsSubmitted", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.overall.appraiser.comments", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.overall.competency.score", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.competencies", null, RequestContextUtils.getLocale(request)) }; String[] colHeader2 = { messageSource.getMessage("hrms.common.employee.name", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraisal.cycle.name", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraisal.start.date", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraisal.end.date", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.total.appraisals", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.common.Updates.NoofAppraisalsSubmitted", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.overall.competency.score", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.competencies", null, RequestContextUtils.getLocale(request)) }; String[] dataIndex = { "empname", "appcylename", "appcylestdate", "appcylendate", "totalappraisal", "appraisalsubmitted", "empcomment", "mancom", "manavgwght", "" }; String[] dataIndex1 = { "empname", "appcylename", "appcylestdate", "appcylendate", "totalappraisal", "appraisalsubmitted", "mancom", "manavgwght", "" }; String[] dataIndex2 = { "empname", "appcylename", "appcylestdate", "appcylendate", "totalappraisal", "appraisalsubmitted", "manavgwght", "" }; String[] compHeader = { messageSource.getMessage("hrms.common.name", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.description", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.self.appraisal.score", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.self.appraisal.comment", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraiser.competency.score", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraiser.comments", null, RequestContextUtils.getLocale(request)) }; String[] compDataIndex = { "comptename", "comptdesc", "selfcompscore", "selfcomment", "compmanwght" }; String[] compGoalHeader = { messageSource.getMessage("hrms.performance.goals", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.common.assigned.by", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraiser.rating", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraiser.comment", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.self.rating", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.self.comments", null, RequestContextUtils.getLocale(request)) }; String[] compGoalDataIndex = { "gname", "assignedby", "gmanrat", "mangoalcomment", "gemprat", "empgoalcomment" }; String[] quesAnsHeader1 = { messageSource.getMessage("hrms.performance.Questions", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraiser.response", null, RequestContextUtils.getLocale(request)) }; String[] quesAnsHeader = { messageSource.getMessage("hrms.performance.Questions", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraiser.response", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.self.response", null, RequestContextUtils.getLocale(request)) }; String[] quesAnsDataIndex = { hrmsAnonymousAppraisalConstants.question, hrmsAnonymousAppraisalConstants.answer, hrmsAnonymousAppraisalConstants.employeeanswer }; String[] quesAnsDataIndex1 = { hrmsAnonymousAppraisalConstants.question, hrmsAnonymousAppraisalConstants.answer }; String managerComments = ""; String scoreAvg = ""; String companyid = null; PdfWriter writer = null; try { String usID = request.getParameter("userid"); String self = request.getParameter("self"); Boolean removecolumn = false; if (!StringUtil.isNullOrEmpty(self) && self.equals("false")) { quesAnsHeader = quesAnsHeader1; quesAnsDataIndex = quesAnsDataIndex1; colHeader = colHeader1; dataIndex = dataIndex1; removecolumn = true; } if (StringUtil.isNullOrEmpty(usID)) { usID = sessionHandlerImplObj.getUserid(request); } if (StringUtil.isNullOrEmpty(request.getParameter("pdfEmail"))) companyid = sessionHandlerImplObj.getCompanyid(request); else { User u = (User) hibernateTemplate.get(User.class, usID); companyid = u.getCompany().getCompanyID(); } HashMap<String, Object> requestParams = new HashMap<String, Object>(); // companyid = sessionHandlerImplObj.getCompanyid(request); requestParams.put("companyid", companyid); requestParams.put("checklink", "appraisal"); if (!hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { quesAnsHeader = quesAnsHeader1; quesAnsDataIndex = quesAnsDataIndex1; colHeader = colHeader1; removecolumn = true; } requestParams.clear(); requestParams.put("companyid", companyid); requestParams.put("checklink", "overallcomments"); if (!hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { colHeader = colHeader2; dataIndex = dataIndex2; } requestParams.clear(); Document document = new Document(PageSize.A4.rotate(), 25, 25, 25, 25); writer = PdfWriter.getInstance(document, baos); writer.setPageEvent(new EndPage()); document.open(); java.awt.Color tColor = new Color(9, 9, 9); //fontSmallBold.setColor(tColor); Paragraph p = new Paragraph(); PdfPTable table = new PdfPTable(2); table.setWidthPercentage(100); table.setWidths(new float[] { 55, 75 }); PdfPTable mainTable = new PdfPTable(1); mainTable.setTotalWidth(90); mainTable.setWidthPercentage(100); mainTable.setSpacingBefore(20); PdfPCell headcell = null; headcell = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.performance.appraisal.details", null, RequestContextUtils.getLocale(request)), FontContext.REGULAR_BOLD_HELVETICA, tColor))); headcell.setBackgroundColor(new Color(0xEEEEEE)); headcell.setPadding(5); mainTable.addCell(headcell); document.add(mainTable); // String str=hrmsManager.getAppraisalReport(session, request); JSONObject jobjTemplate = new JSONObject(str); com.krawler.utils.json.base.JSONArray jarr = jobjTemplate.getJSONArray("data"); com.krawler.utils.json.base.JSONArray jarr2 = jarr.getJSONObject(0).getJSONArray("data"); JSONObject jobjAppraisal = new JSONObject(jarr2.getString(0)); jarr = jobjAppraisal.getJSONArray("competencies"); int headlen = colHeader.length; if (jarr.length() < 1) { headlen = headlen - 2; } for (int i = 0; i < headlen; i++) { PdfPCell pcell = new PdfPCell( new Paragraph(fontFamilySelector.process(colHeader[i], FontContext.MEDIUM_BOLD_HELVETICA))); pcell.setBorder(0); if (i == 0) pcell.setPaddingTop(10); pcell.setPaddingLeft(15); pcell.setPaddingBottom(4); pcell.setBorderColor(new Color(0xF2F2F2)); pcell.setHorizontalAlignment(Element.ALIGN_LEFT); pcell.setVerticalAlignment(Element.ALIGN_LEFT); table.addCell(pcell); if (!dataIndex[i].equals("mancom")) { pcell = new PdfPCell(new Paragraph(fontFamilySelector.process(!dataIndex[i].equals("") ? !jobjAppraisal.isNull(dataIndex[i]) ? jobjAppraisal.getString(dataIndex[i]) : "" : "", FontContext.SMALL_NORMAL_HELVETICA))); if (i == 0) pcell.setPaddingTop(10); pcell.setBorder(0); pcell.setPaddingLeft(10); pcell.setPaddingBottom(4); pcell.setBorderColor(new Color(0xF2F2F2)); pcell.setHorizontalAlignment(Element.ALIGN_LEFT); pcell.setVerticalAlignment(Element.ALIGN_LEFT); table.addCell(pcell); } else { if (!jobjAppraisal.isNull(dataIndex[i])) { JSONArray spl = new JSONArray(jobjAppraisal.getString(dataIndex[i])); String strData = ""; for (int counter = 0; counter < spl.length(); counter++) { strData += spl.getString(counter) + "\n"; } pcell = new PdfPCell(new Paragraph( fontFamilySelector.process(strData, FontContext.SMALL_NORMAL_HELVETICA))); if (i == 0) pcell.setPaddingTop(10); pcell.setBorder(0); pcell.setPaddingLeft(10); pcell.setPaddingBottom(4); pcell.setBorderColor(new Color(0xF2F2F2)); pcell.setHorizontalAlignment(Element.ALIGN_LEFT); pcell.setVerticalAlignment(Element.ALIGN_LEFT); table.addCell(pcell); } } } document.add(table); PdfPTable quesansTable = new PdfPTable(quesAnsHeader.length); quesansTable.setWidthPercentage(100); if (removecolumn) { quesansTable.setWidths(new float[] { 40, 40 }); } else { quesansTable.setWidths(new float[] { 40, 40, 40 }); } quesansTable.setSpacingBefore(20); quesansTable.setHeaderRows(1); for (int i = 0; i < quesAnsHeader.length; i++) { PdfPCell pgcell = new PdfPCell(new Paragraph( fontFamilySelector.process(quesAnsHeader[i], FontContext.MEDIUM_BOLD_HELVETICA))); pgcell.setBorder(0); pgcell.setBorder(PdfPCell.BOX); pgcell.setPadding(4); pgcell.setBorderColor(Color.GRAY); pgcell.setHorizontalAlignment(Element.ALIGN_CENTER); quesansTable.addCell(pgcell); } JSONObject quesansjobj = new JSONObject(quesansstr); JSONArray quesansjarr = quesansjobj.getJSONArray("quesans"); JSONObject qajobj = new JSONObject(); for (int i = 0; i < quesansjarr.length(); i++) { qajobj = quesansjarr.getJSONObject(i); for (int k = 0; k < quesAnsHeader.length; k++) { String qatext = !qajobj.isNull(quesAnsDataIndex[k]) ? qajobj.getString(quesAnsDataIndex[k]) : ""; qatext = qatext.replaceAll("~", "\n\n"); qatext = qatext.replaceAll("\n", "<br/>"); StyleSheet st = new StyleSheet(); st.loadTagStyle("body", "face", "HELVETICA"); st.loadTagStyle("body", "size", "1"); st.loadTagStyle("body", "leading", "8,0"); StringReader stringReader = new StringReader(qatext); PdfPCell pcell = new PdfPCell(); ArrayList listStr = HTMLWorker.parseToList(stringReader, st); pcell.setPadding(4); for (int htmlCount = 0; htmlCount < listStr.size(); ++htmlCount) { if (!listStr.get(htmlCount).toString().equals("[]")) pcell.addElement((Element) listStr.get(htmlCount)); } pcell.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell.setBorderColor(Color.GRAY); pcell.setPadding(4); pcell.setHorizontalAlignment(Element.ALIGN_LEFT); pcell.setVerticalAlignment(Element.ALIGN_CENTER); quesansTable.addCell(pcell); } } document.add(quesansTable); PdfPTable compTable = new PdfPTable(6); compTable.setWidthPercentage(100); compTable.setWidths(new float[] { 50, 60, 30, 50, 42, 70 }); compTable.setSpacingBefore(20); compTable.setHeaderRows(1); for (int i = 0; i < compHeader.length; i++) { PdfPCell pcell = new PdfPCell(new Paragraph( fontFamilySelector.process(compHeader[i], FontContext.MEDIUM_BOLD_HELVETICA))); pcell.setBorder(0); pcell.setBorder(PdfPCell.BOX); pcell.setPadding(4); pcell.setBorderColor(Color.GRAY); pcell.setHorizontalAlignment(Element.ALIGN_CENTER); compTable.addCell(pcell); } for (int i = 0; i < jarr.length(); i++) { jobjAppraisal = jarr.getJSONObject(i); for (int k = 0; k < compHeader.length; k++) { if (k != compHeader.length - 1) { scoreAvg = ""; if (!jobjAppraisal.isNull(compDataIndex[k]) && compDataIndex[k].equals("compmanwght")) { scoreAvg = jobjAppraisal.getString("nominalRat"); Chunk chunk1 = fontFamilySelector.processChunk( jobjAppraisal.getString(compDataIndex[k]) + "\n\n", FontContext.SMALL_NORMAL_HELVETICA); Chunk chunk2 = null; requestParams.clear(); if (!StringUtil.isNullOrEmpty(request.getParameter("pdfEmail"))) { // User user=(User)session.get(User.class,request.getParameter("userid")); // companyid=user.getCompany().getCompanyID(); requestParams.put("companyid", companyid); requestParams.put("checklink", "modaverage"); if (hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { chunk2 = fontFamilySelector.processChunk("[" + messageSource.getMessage("hrms.performance.mod.avg", null, RequestContextUtils.getLocale(request)) + ": " + scoreAvg + " ]", FontContext.SMALL_NORMAL_HELVETICA); } else { chunk2 = fontFamilySelector.processChunk("[" + messageSource.getMessage("hrms.performance.avg", null, RequestContextUtils.getLocale(request)) + ": " + scoreAvg + " ]", FontContext.SMALL_NORMAL_HELVETICA); } } else { requestParams.put("companyid", companyid); requestParams.put("checklink", "modaverage"); if (hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { chunk2 = fontFamilySelector.processChunk("[" + messageSource.getMessage("hrms.performance.mod.avg", null, RequestContextUtils.getLocale(request)) + ": " + scoreAvg + " ]", FontContext.SMALL_NORMAL_HELVETICA); } else { chunk2 = fontFamilySelector.processChunk("[" + messageSource.getMessage("hrms.performance.avg", null, RequestContextUtils.getLocale(request)) + ": " + scoreAvg + " ]", FontContext.SMALL_NORMAL_HELVETICA); } } Phrase phrase1 = new Phrase(); phrase1.add(chunk1); phrase1.add(chunk2); p = new Paragraph(); p.add(phrase1); } PdfPCell pcell = new PdfPCell(); if (!scoreAvg.equals("")) { pcell = new PdfPCell(new Paragraph(p)); pcell.setPadding(0); pcell.setPaddingTop(2); pcell.setPaddingBottom(4); } else { if (!jobjAppraisal.isNull(compDataIndex[k])) { String htmlStr = jobjAppraisal.getString(compDataIndex[k]); htmlStr = htmlStr.replaceAll("\n", "<br>"); StyleSheet st = new StyleSheet(); st.loadTagStyle("body", "face", "HELVETICA"); st.loadTagStyle("body", "size", "1"); st.loadTagStyle("body", "leading", "8,0"); HTMLWorker worker = new HTMLWorker(document); StringReader stringReader = new StringReader(htmlStr); ArrayList<Element> listStr = HTMLWorker.parseToList(stringReader, st); pcell.setPadding(4); for (int htmlCount = 0; htmlCount < listStr.size(); ++htmlCount) { if (!listStr.get(htmlCount).getChunks().isEmpty()) { pcell.addElement(fontFamilySelector.processElement( listStr.get(htmlCount).getChunks(), FontContext.SMALL_NORMAL_HELVETICA)); } } } else pcell = new PdfPCell(new Paragraph(fontFamilySelector.process( !jobjAppraisal.isNull(compDataIndex[k]) ? StringUtil .serverHTMLStripper(jobjAppraisal.getString(compDataIndex[k])) : "", FontContext.SMALL_NORMAL_HELVETICA))); } pcell.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell.setBorderColor(Color.GRAY); pcell.setHorizontalAlignment( compDataIndex[k].equals("comptename") || compDataIndex[k].equals("comptdesc") || compDataIndex[k].equals("selfcomment") ? Element.ALIGN_LEFT : Element.ALIGN_CENTER); pcell.setVerticalAlignment( compDataIndex[k].equals("comptdesc") || compDataIndex[k].equals("comptdesc") || compDataIndex[k].equals("selfcomment") ? Element.ALIGN_LEFT : Element.ALIGN_CENTER); compTable.addCell(pcell); } else { jarr2 = jobjAppraisal.getJSONArray("comments"); managerComments = ""; int commentCount = 1; for (int j = jarr2.length() - 1; j >= 0; j--) { jobjTemplate = jarr2.getJSONObject(j); managerComments += commentCount + ") " + jobjTemplate.getString("managercomment") + "\n\n"; commentCount++; } PdfPCell pcell = new PdfPCell(new Paragraph( fontFamilySelector.process(managerComments, FontContext.SMALL_NORMAL_HELVETICA))); pcell.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell.setPadding(4); pcell.setBorderColor(Color.GRAY); pcell.setHorizontalAlignment(Element.ALIGN_LEFT); pcell.setVerticalAlignment(Element.ALIGN_LEFT); compTable.addCell(pcell); } } } document.add(compTable); PdfPCell pcell; if (jarr.length() > 0) { PdfPTable helpTable = new PdfPTable(1); helpTable.setTotalWidth(90); helpTable.setWidthPercentage(100); helpTable.setSpacingBefore(20); pcell = new PdfPCell(new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.performance.mod.avg", null, RequestContextUtils.getLocale(request)) + ". : " + messageSource.getMessage("hrms.performance.mode.average.ratings", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_HELVETICA))); pcell.setBorder(0); pcell.setPadding(4); pcell.setHorizontalAlignment(Element.ALIGN_LEFT); helpTable.addCell(pcell); requestParams.clear(); requestParams.put("companyid", companyid); requestParams.put("checklink", "modaverage"); if (!StringUtil.isNullOrEmpty(request.getParameter("pdfEmail"))) { if (hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { document.add(helpTable); } } else { if (hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { document.add(helpTable); } } } PdfPTable compgTable = new PdfPTable(6); compgTable.setWidthPercentage(100); compgTable.setWidths(new float[] { 50, 60, 30, 50, 42, 70 }); compgTable.setSpacingBefore(20); compgTable.setHeaderRows(1); for (int i = 0; i < compGoalHeader.length; i++) { PdfPCell pgcell = new PdfPCell(new Paragraph( fontFamilySelector.process(compGoalHeader[i], FontContext.MEDIUM_BOLD_HELVETICA))); pgcell.setBorder(0); pgcell.setBorder(PdfPCell.BOX); pgcell.setPadding(4); pgcell.setBorderColor(Color.GRAY); pgcell.setHorizontalAlignment(Element.ALIGN_CENTER); compgTable.addCell(pgcell); } JSONObject jobjTemplates = new JSONObject(goalstr); com.krawler.utils.json.base.JSONArray jarr11 = jobjTemplates.getJSONArray("data"); JSONObject jobjl = new JSONObject(); for (int i = 0; i < jarr11.length(); i++) { jobjl = jarr11.getJSONObject(i); for (int k = 0; k < compHeader.length; k++) { pcell = new PdfPCell( new Paragraph( fontFamilySelector.process( !jobjl.isNull(compGoalDataIndex[k]) ? StringUtil .serverHTMLStripper(jobjl.getString(compGoalDataIndex[k])) : "", FontContext.SMALL_NORMAL_HELVETICA))); pcell.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell.setBorderColor(Color.GRAY); pcell.setPadding(4); pcell.setHorizontalAlignment(Element.ALIGN_CENTER); pcell.setVerticalAlignment(Element.ALIGN_CENTER); compgTable.addCell(pcell); } } document.add(compgTable); document.newPage(); document.close(); } catch (DocumentException ex) { ex.printStackTrace(); throw ServiceException.FAILURE("AppraisalDetails.AppraisalDetail", ex); } catch (JSONException e) { e.printStackTrace(); throw ServiceException.FAILURE("AppraisalDetails.AppraisalDetail", e); } catch (Exception ex) { ex.printStackTrace(); throw ServiceException.FAILURE(ex.getMessage(), ex); } finally { writer.close(); } return baos; }
From source file:com.krawler.spring.hrms.payroll.payslip.ExportPayslipController.java
License:Open Source License
public ModelAndView exportPDF(HttpServletRequest request, HttpServletResponse response) { JSONObject jsonResp = new JSONObject(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); PdfWriter writer = null;/*from ww w. j a v a 2 s.c o m*/ try { Company company = (Company) kwlCommonTablesDAOObj.getObject("com.krawler.common.admin.Company", sessionHandlerImplObj.getCompanyid(request)); int i = 0; DecimalFormat decfm = new DecimalFormat("#,##0.00"); Date d2 = null; Date d3 = null; 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.getParameter("stdate").replace("/", "-"), request.getParameter("enddate").replace("/", "-"), company.getCompanyID()); String historyid = ""; List<Payhistory> lst = exportPayslipDAO.getPayhistory(request.getParameter("empid"), d2, d3); ; if (lst != null && lst.size() == 0) { throw new Exception("Exception occured"); } else if (lst != null && lst.size() > 0) { String currSymbol = getCurrencySymbol(request, false); masterDB.Payhistory payhistory = (masterDB.Payhistory) lst.get(0); historyid = payhistory.getHistoryid(); double unpaidleaves = payhistory.getUnpaidleaves(); 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"); User userinfo = payhistory.getUserID(); Useraccount ua = (Useraccount) kwlCommonTablesDAOObj .getObject("com.krawler.common.admin.Useraccount", userinfo.getUserID()); String uname = userinfo.getLastName() != null ? userinfo.getLastName() : ""; String empid = getUserCode(ua, company.getCompanyID()); String department = payhistory.getDepartment(); String designation = getUserDesignation(ua); String bankacc = ua.getAccno() != null ? ua.getAccno() : ""; Empprofile empprof = null; String epf = ""; String dateofjoin = ""; try { empprof = (Empprofile) kwlCommonTablesDAOObj.getObject("com.krawler.hrms.ess.Empprofile", 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); String cmpid = AuthHandler.getCompanyid(request); userTable1.setHorizontalAlignment(Element.ALIGN_MIDDLE); userTable1.setWidthPercentage(10); PdfPCell cell11 = null; PdfPCell cell1x = new PdfPCell( new Paragraph(fontFamilySelector.process(" ", FontContext.REGULAR_BOLD_TIMES_NEW_ROMAN))); cell1x.setBorder(0); userTable1.addCell(cell1x); try { String imgPath = StorageHandler.GetProfileImgStorePath() + cmpid + ".png"; if (StringUtil.isStandAlone()) { imgPath = URLUtil.getPageURL(request, "").concat(ProfileImageServlet.defaultCompanyImgPath); } Image img = Image.getInstance(imgPath); cell11 = new PdfPCell(img); cell11.setPaddingLeft(5); } catch (Exception e) { cell11 = new PdfPCell(new Paragraph(fontFamilySelector .process(AuthHandler.getCompanyName(request), FontContext.TABLE_BOLD_TIMES_NEW_ROMAN))); cell11.setHorizontalAlignment(Element.ALIGN_CENTER); } if (cell11 != null) { cell11.setBorder(0); userTable1.addCell(cell11); } PdfPCell cell1 = new PdfPCell( new Paragraph(fontFamilySelector.process("", FontContext.REGULAR_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process(company.getCompanyName(), FontContext.REGULAR_BOLD_TIMES_NEW_ROMAN))); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setBorder(0); cell.setPaddingTop(15); userTable2.addCell(cell); cell = new PdfPCell(new Paragraph( fontFamilySelector.process(company.getCity(), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setBorder(0); userTable2.addCell(cell); cell = new PdfPCell(new Paragraph(fontFamilySelector.process(company.getAddress(), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setBorder(0); userTable2.addCell(cell); cell = new PdfPCell(new Paragraph( fontFamilySelector.process(company.getState(), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setBorder(0); userTable2.addCell(cell); cell = new PdfPCell(new Paragraph(fontFamilySelector.process(company.getZipCode(), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setBorder(0); userTable2.addCell(cell); cell = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.payslip.period.params", new Object[] { request.getParameter("stdate"), request.getParameter("enddate") }, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process("", FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process( messageSource.getMessage("hrms.common.employee.code", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); h11.setHorizontalAlignment(Element.ALIGN_LEFT); h11.setPadding(5); if (!showborder) { h11.setBorder(0); } table2.addCell(h11); PdfPCell h12 = new PdfPCell(new Paragraph( fontFamilySelector.process("" + empid, FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); h12.setHorizontalAlignment(Element.ALIGN_LEFT); h12.setPadding(5); if (!showborder) { h12.setBorder(0); } table2.addCell(h12); PdfPCell h13 = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.common.employee.name", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); h13.setHorizontalAlignment(Element.ALIGN_LEFT); h13.setPadding(5); if (!showborder) { h13.setBorder(0); } table2.addCell(h13); PdfPCell h14 = new PdfPCell(new Paragraph(fontFamilySelector .process(userinfo.getFirstName() + " " + uname, FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); h14.setHorizontalAlignment(Element.ALIGN_LEFT); h14.setPadding(5); if (!showborder) { h14.setBorder(0); } table2.addCell(h14); PdfPCell h21 = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.common.department", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); h21.setHorizontalAlignment(Element.ALIGN_LEFT); h21.setPadding(5); if (!showborder) { h21.setBorder(0); } table2.addCell(h21); PdfPCell h22 = new PdfPCell(new Paragraph( fontFamilySelector.process(department, FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); h22.setHorizontalAlignment(Element.ALIGN_LEFT); h22.setPadding(5); if (!showborder) { h22.setBorder(0); } table2.addCell(h22); PdfPCell h33 = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.common.designation", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); h33.setHorizontalAlignment(Element.ALIGN_LEFT); h33.setPadding(5); if (!showborder) { h33.setBorder(0); } table2.addCell(h33); PdfPCell h34 = new PdfPCell(new Paragraph( fontFamilySelector.process(designation, FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); h34.setHorizontalAlignment(Element.ALIGN_LEFT); h34.setPadding(5); if (!showborder) { h34.setBorder(0); } table2.addCell(h34); PdfPCell h43 = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.common.bank.ac.no", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); h43.setHorizontalAlignment(Element.ALIGN_LEFT); h43.setPadding(5); if (!showborder) { h43.setBorder(0); } table2.addCell(h43); PdfPCell h44 = new PdfPCell(new Paragraph( fontFamilySelector.process(bankacc, FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); h44.setHorizontalAlignment(Element.ALIGN_LEFT); h44.setPadding(5); if (!showborder) { h44.setBorder(0); } table2.addCell(h44); PdfPCell h61 = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.common.working.days", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); h61.setHorizontalAlignment(Element.ALIGN_LEFT); h61.setPadding(5); if (!showborder) { h61.setBorder(0); } table2.addCell(h61); PdfPCell h62 = new PdfPCell(new Paragraph(fontFamilySelector.process(String.valueOf(days), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); h62.setHorizontalAlignment(Element.ALIGN_LEFT); h62.setPadding(5); if (!showborder) { h62.setBorder(0); } table2.addCell(h62); PdfPCell h63 = new PdfPCell(new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.common.e.p.f", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); h63.setHorizontalAlignment(Element.ALIGN_LEFT); h63.setPadding(5); if (!showborder) { h63.setBorder(0); } table2.addCell(h63); PdfPCell h64 = new PdfPCell( new Paragraph(fontFamilySelector.process(epf, FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); h64.setHorizontalAlignment(Element.ALIGN_LEFT); h64.setPadding(5); if (!showborder) { h64.setBorder(0); } table2.addCell(h64); PdfPCell h65 = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.common.DateofJoining", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); h65.setHorizontalAlignment(Element.ALIGN_LEFT); h65.setPadding(5); if (!showborder) { h65.setBorder(0); } table2.addCell(h65); PdfPCell h66 = new PdfPCell(new Paragraph( fontFamilySelector.process(dateofjoin, FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); h66.setHorizontalAlignment(Element.ALIGN_LEFT); h66.setPadding(5); if (!showborder) { h66.setBorder(0); } table2.addCell(h66); for (int y = 0; y < 2; y++) { PdfPCell h71 = new PdfPCell(new Paragraph( fontFamilySelector.process(" ", FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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( fontFamilySelector.process(" ", FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); h71.setHorizontalAlignment(Element.ALIGN_LEFT); h71.setBorder(0); table2.addCell(h71); } h71 = new PdfPCell(new Paragraph( fontFamilySelector.process(" ", FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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[] { 30, 20, 30, 20 }); PdfPTable table41 = new PdfPTable(2); table41.setWidthPercentage(100); table41.setWidths(new float[] { 50, 50 }); //*************************************************************************************************************** PdfPCell s11 = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.Earnings", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.amount.params", new Object[] { currSymbol }, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); s12.setHorizontalAlignment(Element.ALIGN_RIGHT); s12.setPadding(5); if (!showborder) { s12.setBorder(0); } else { s12.setBorder(Rectangle.LEFT + Rectangle.BOTTOM); } table31.addCell(s12); PdfPCell s14 = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.Deduction", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.amount.params", new Object[] { currSymbol }, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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); int Wcount = 0; float taxtotal = 0; List<Historydetail> lst1 = exportPayslipDAO.getHistorydetail(historyid, "Wages", "Basic"); List<Historydetail> list = exportPayslipDAO.getHistorydetailNotType(historyid, "Wages", "Basic"); if (list != null) { lst1.addAll(list); } List<Historydetail> lst2 = exportPayslipDAO.getHistorydetail(historyid, "Taxes"); CompanyPreferences cp = hrmsCommonDAOObj.getCompanyPreferences(company.getCompanyID()); int financialMonth = cp.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(); } List<Historydetail> lst3 = exportPayslipDAO.getHistorydetail(historyid, "Deduction"); 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(fontFamilySelector.process(hd.getType(), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process(String.valueOf(decfm.format(newamount)), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); s22.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { s22.setBorder(0); } else { s22.setBorder(Rectangle.LEFT); } s22.setPadding(5); table31.addCell(s22); List<Historydetail> lstw = exportPayslipDAO.getHistorydetail(request.getParameter("empid"), d, d3, hd.getType()); 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()); } wagetotal = wagetotal + Float.parseFloat(hd.getAmount()); totalYTDEarning = totalYTDEarning + wageAmt; Wcount++; } else { for (int j = 0; j < 2; j++) { PdfPCell s21 = new PdfPCell(new Paragraph( fontFamilySelector.process("", FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process(hd.getType(), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); 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(fontFamilySelector .process(decfm.format(newamount), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); s25.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { s25.setBorder(0); } else { s25.setBorder(Rectangle.RIGHT + Rectangle.LEFT); } s25.setPadding(5); table31.addCell(s25); List<Historydetail> lstw1 = exportPayslipDAO.getHistorydetail(request.getParameter("empid"), d, d3, hd.getType()); 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()); } 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(fontFamilySelector.process(hd.getType(), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); if (hd.getType().equals("Unpaid_leaves")) { s24 = new PdfPCell(new Paragraph( fontFamilySelector.process(hd.getType() + "(" + unpaidleaves + ")", FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); } 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(fontFamilySelector .process(decfm.format(newamount), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); s25.setHorizontalAlignment(Element.ALIGN_RIGHT); if (!showborder) { s25.setBorder(0); } else { s25.setBorder(Rectangle.RIGHT + Rectangle.LEFT); ; } s25.setPadding(5); table31.addCell(s25); List<Historydetail> lstw2 = exportPayslipDAO .getHistorydetail(request.getParameter("empid"), d, d3, hd.getType()); 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()); } taxtotal = taxtotal + Float.parseFloat(hd.getAmount()); totalYTDDeduction = totalYTDDeduction + deductAmt; } else { for (int j = 0; j < 2; j++) { PdfPCell s21 = new PdfPCell(new Paragraph( fontFamilySelector.process("", FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.total.earnings", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process(decfm.format(newamount), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); 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 s94 = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.total.deductions", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process(decfm.format(newamount), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); 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); for (int y = 0; y < 2; y++) { PdfPCell he71 = new PdfPCell(new Paragraph( fontFamilySelector.process(" ", FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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( fontFamilySelector.process(" ", FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); he71.setHorizontalAlignment(Element.ALIGN_LEFT); he71.setBorder(0); table31.addCell(he71); } he71 = new PdfPCell(new Paragraph( fontFamilySelector.process(" ", FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); he71.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { he71.setBorder(0); } else { he71.setBorder(Rectangle.RIGHT); } table31.addCell(he71); } List<Historydetail> lst4 = exportPayslipDAO.getHistorydetail(historyid, "Employer Contribution"); double ectotal = 0; PdfPCell ec11 = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.EmployerContribution", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.amount.params", new Object[] { currSymbol }, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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( fontFamilySelector.process(hd1.getType(), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process(decfm.format(newamount), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.total.contribution", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process(decfm.format(newamount), FontContext.SMALL_NORMAL_TIMES_NEW_ROMAN))); 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( fontFamilySelector.process(" ", FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.netpay", null, RequestContextUtils.getLocale(request)) + " ", FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process(amount, FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.in.words", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); i32.setHorizontalAlignment(Element.ALIGN_LEFT); if (!showborder) { i32.setBorder(0); } else { i31.setBorder(Rectangle.LEFT); } i32.setPadding(5); table4.addCell(i32); EnglishNumberToWords enw = new EnglishNumberToWords(request, messageSource); String netinword = enw.convert(netpay); PdfPCell i34 = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.only", new Object[] { getCurrencyName(request), netinword }, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); 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(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.employee.signature", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setBorder(0); table5.addCell(cell); cell = new PdfPCell( new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.payroll.manager.signature", null, RequestContextUtils.getLocale(request)), FontContext.SMALL_BOLD_TIMES_NEW_ROMAN))); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setBorder(0); table5.addCell(cell); document.add(mainTable); document.close(); } String filename = "Employee_Payslip.pdf"; if (!StringUtil.isNullOrEmpty(request.getParameter("reportname"))) { String temp = request.getParameter("reportname"); filename = temp.lastIndexOf(".pdf") >= 0 ? temp : temp + ".pdf"; } response.setHeader("Content-Disposition", "attachment; filename=\"" + filename + "\""); response.setContentType("application/octet-stream"); response.setContentLength(baos.size()); response.getOutputStream().write(baos.toByteArray()); jsonResp.put("valid", true); jsonResp.put("data", ""); } catch (Exception ex) { ex.printStackTrace(); } finally { try { if (response.getOutputStream() != null) { response.getOutputStream().flush(); response.getOutputStream().close(); } } catch (IOException e) { e.printStackTrace(); } writer.close(); } return new ModelAndView("jsonView", "model", jsonResp.toString()); }
From source file:com.krawler.spring.hrms.printreport.PrintAppraisalReportDAOImp.java
License:Open Source License
public void createPDFPriview(HttpServletRequest request, HttpServletResponse response, JSONArray obj, Map<String, String> personalData) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); Document document = new Document(PageSize.A4.rotate(), 25, 25, 25, 25); PdfWriter writer = null;//w ww . j a va 2 s. c om try { HashMap<String, Object> requestParams = new HashMap<String, Object>(); boolean isQuestion = request.getParameter("question").equals("true") ? true : false; boolean promotion = request.getParameter("promotion").equals("false") ? false : true; Boolean isMyAppraisal = Boolean.parseBoolean(personalData.get("isMyAppraisal")); CompanyPreferences companyPreferences = (CompanyPreferences) hibernateTemplate .get(CompanyPreferences.class, sessionHandlerImplObj.getCompanyid(request)); writer = PdfWriter.getInstance(document, baos); writer.setPageEvent(new EndPage()); document.open(); java.awt.Color tColor = new Color(9, 9, 9); //fontSmallBold.setColor(tColor); //heading PdfPTable headTable = new PdfPTable(1); headTable.setTotalWidth(90); headTable.setWidthPercentage(100); headTable.setSpacingBefore(20); PdfPCell headcell = new PdfPCell( new Paragraph(fontFamilySelector.process(messageSource.getMessage("hrms.common.AppraisalForm", null, RequestContextUtils.getLocale(request)), FontContext.REGULAR_BOLD_HELVETICA))); headcell.setBackgroundColor(new Color(0xEEEEEE)); headcell.setPadding(5); headTable.addCell(headcell); document.add(headTable); //heading //Details int flag = 0; String appDetailsParam[] = { messageSource.getMessage("hrms.performance.appraisal.cycle.name", null, RequestContextUtils.getLocale(request)) + ": ", messageSource.getMessage("hrms.common.employee.name", null, RequestContextUtils.getLocale(request)) + ": ", messageSource.getMessage("hrms.performance.appraisal.cycle.period", null, RequestContextUtils.getLocale(request)) + ": ", messageSource.getMessage("hrms.Masters.Designation", null, RequestContextUtils.getLocale(request)) + ": ", messageSource.getMessage("hrms.performance.performance.rating", null, RequestContextUtils.getLocale(request)) + "*: " }; String appDetailsValue[] = { personalData.get("appcycname"), personalData.get("empname"), messageSource.getMessage("hrms.common.form", null, RequestContextUtils.getLocale(request)) + ": " + personalData.get("startdate") + " " + messageSource.getMessage("hrms.common.to", null, RequestContextUtils.getLocale(request)) + ": " + personalData.get("enddate"), personalData.get("desgname"), personalData.get("performance") }; requestParams.clear(); requestParams.put("companyid", sessionHandlerImplObj.getCompanyid(request)); requestParams.put("checklink", "promotion"); if (!hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { flag = 1; } PdfPTable appDetailsTable = new PdfPTable(2); appDetailsTable.setWidthPercentage(100); appDetailsTable.setWidths(new float[] { 55, 75 }); if (isMyAppraisal) { flag = 1; } for (int i = 0; i < (appDetailsParam.length - flag); i++) { PdfPCell pcell = new PdfPCell(new Paragraph( fontFamilySelector.process(appDetailsParam[i], FontContext.MEDIUM_BOLD_HELVETICA))); pcell.setBorder(0); pcell.setPaddingTop(10); pcell.setPaddingLeft(15); pcell.setPaddingBottom(4); pcell.setBorderColor(new Color(0xF2F2F2)); pcell.setHorizontalAlignment(Element.ALIGN_LEFT); pcell.setVerticalAlignment(Element.ALIGN_LEFT); appDetailsTable.addCell(pcell); PdfPCell pcell1 = new PdfPCell(new Paragraph( fontFamilySelector.process(appDetailsValue[i], FontContext.SMALL_NORMAL_HELVETICA))); pcell1.setBorder(0); pcell1.setPaddingTop(10); pcell1.setPaddingLeft(15); pcell1.setPaddingBottom(4); pcell1.setBorderColor(new Color(0xF2F2F2)); pcell1.setHorizontalAlignment(Element.ALIGN_LEFT); pcell1.setVerticalAlignment(Element.ALIGN_LEFT); appDetailsTable.addCell(pcell1); } requestParams.clear(); requestParams.put("companyid", sessionHandlerImplObj.getCompanyid(request)); requestParams.put("checklink", "overallcomments"); if (hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { PdfPCell pcell = new PdfPCell(new Paragraph(fontFamilySelector.process( (isMyAppraisal ? messageSource.getMessage("hrms.performance.self.overall.comment", null, RequestContextUtils.getLocale(request)) + ": " : messageSource.getMessage("hrms.performance.overall.appraiser.comments", null, RequestContextUtils.getLocale(request)) + ": "), FontContext.MEDIUM_BOLD_HELVETICA))); pcell.setBorder(0); pcell.setPaddingTop(10); pcell.setPaddingLeft(15); pcell.setPaddingBottom(4); pcell.setBorderColor(new Color(0xF2F2F2)); pcell.setHorizontalAlignment(Element.ALIGN_LEFT); pcell.setVerticalAlignment(Element.ALIGN_LEFT); appDetailsTable.addCell(pcell); PdfPCell pcell1 = new PdfPCell(new Paragraph(fontFamilySelector.process( (isMyAppraisal ? personalData.get("selfcomment") : personalData.get("empcomment")), FontContext.SMALL_NORMAL_HELVETICA))); pcell1.setBorder(0); pcell1.setPaddingTop(10); pcell1.setPaddingLeft(15); pcell1.setPaddingBottom(4); pcell1.setBorderColor(new Color(0xF2F2F2)); pcell1.setHorizontalAlignment(Element.ALIGN_LEFT); pcell1.setVerticalAlignment(Element.ALIGN_LEFT); appDetailsTable.addCell(pcell1); } requestParams.clear(); requestParams.put("companyid", sessionHandlerImplObj.getCompanyid(request)); requestParams.put("checklink", "promotion"); if (!isMyAppraisal && hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { PdfPCell pcell = new PdfPCell(new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.performance.promotion.recommendation", null, RequestContextUtils.getLocale(request)) + ": ", FontContext.MEDIUM_BOLD_HELVETICA))); pcell.setBorder(0); pcell.setPaddingTop(10); pcell.setPaddingLeft(15); pcell.setPaddingBottom(4); pcell.setBorderColor(new Color(0xF2F2F2)); pcell.setHorizontalAlignment(Element.ALIGN_LEFT); pcell.setVerticalAlignment(Element.ALIGN_LEFT); appDetailsTable.addCell(pcell); PdfPCell pcell1 = new PdfPCell(new Paragraph(fontFamilySelector.process( (promotion ? messageSource.getMessage("hrms.MasterData.Yes", null, RequestContextUtils.getLocale(request)) : messageSource.getMessage("hrms.MasterData.No", null, RequestContextUtils.getLocale(request))), FontContext.SMALL_NORMAL_HELVETICA))); pcell1.setBorder(0); pcell1.setPaddingTop(10); pcell1.setPaddingLeft(15); pcell1.setPaddingBottom(4); pcell1.setBorderColor(new Color(0xF2F2F2)); pcell1.setHorizontalAlignment(Element.ALIGN_LEFT); pcell1.setVerticalAlignment(Element.ALIGN_LEFT); appDetailsTable.addCell(pcell1); } if (promotion && !isMyAppraisal && hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { String[] appDetaisPromotionParam = { messageSource.getMessage("hrms.performance.new.department", null, RequestContextUtils.getLocale(request)) + ": ", messageSource.getMessage("hrms.performance.new.designation", null, RequestContextUtils.getLocale(request)) + ": ", messageSource.getMessage("hrms.performance.salary.increment", null, RequestContextUtils.getLocale(request)) + "(%): " }; String[] appDetaisPromotionValue = { personalData.get("newDept") != null ? personalData.get("newDept") : "", personalData.get("newDesig") != null ? personalData.get("newDesig") : "", personalData.get("salInc") != null ? personalData.get("salInc") : "" }; for (int i = 0; i < appDetaisPromotionParam.length; i++) { PdfPCell pcell = new PdfPCell(new Paragraph(fontFamilySelector .process(appDetaisPromotionParam[i], FontContext.MEDIUM_BOLD_HELVETICA))); pcell.setBorder(0); pcell.setPaddingTop(10); pcell.setPaddingLeft(15); pcell.setPaddingBottom(4); pcell.setBorderColor(new Color(0xF2F2F2)); pcell.setHorizontalAlignment(Element.ALIGN_LEFT); pcell.setVerticalAlignment(Element.ALIGN_LEFT); appDetailsTable.addCell(pcell); PdfPCell pcell1 = new PdfPCell(new Paragraph(fontFamilySelector .process(appDetaisPromotionValue[i], FontContext.SMALL_NORMAL_HELVETICA))); pcell1.setBorder(0); pcell1.setPaddingTop(10); pcell1.setPaddingLeft(15); pcell1.setPaddingBottom(4); pcell1.setBorderColor(new Color(0xF2F2F2)); pcell1.setHorizontalAlignment(Element.ALIGN_LEFT); pcell1.setVerticalAlignment(Element.ALIGN_LEFT); appDetailsTable.addCell(pcell1); } } document.add(appDetailsTable); //Details //Comp requestParams.clear(); requestParams.put("companyid", sessionHandlerImplObj.getCompanyid(request)); requestParams.put("checklink", "competency"); if (hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { try { if (!isQuestion) { JSONArray jsonComp = obj.getJSONArray(0); if (!isMyAppraisal) { String[] compParam = { messageSource.getMessage("hrms.performance.competency", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.competency.description", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.weightage", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraiser.rating", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraiser.comment", null, RequestContextUtils.getLocale(request)) }; String[] colParam = { "cmptname", "cmptdesc", "cmptwt", "manrat", "mancompcomment" }; PdfPTable questionTable = null; if (companyPreferences.isWeightage()) { questionTable = new PdfPTable(5); questionTable.setWidths(new float[] { 50, 60, 30, 30, 42 }); } else { questionTable = new PdfPTable(4); questionTable.setWidths(new float[] { 50, 60, 30, 42 }); } questionTable.setWidthPercentage(100); questionTable.setSpacingBefore(20); questionTable.setHeaderRows(1); for (int i = 0; i < compParam.length; i++) { if (!(!companyPreferences.isWeightage() && i == 2)) { PdfPCell pgcell = new PdfPCell(new Paragraph(fontFamilySelector .process(compParam[i], FontContext.MEDIUM_BOLD_HELVETICA))); pgcell.setBorder(0); pgcell.setBorder(PdfPCell.BOX); pgcell.setPadding(4); pgcell.setBorderColor(Color.GRAY); pgcell.setHorizontalAlignment(Element.ALIGN_CENTER); questionTable.addCell(pgcell); } } for (int i = 0; i < jsonComp.length(); i++) { for (int j = 0; j < colParam.length; j++) { if (!(!companyPreferences.isWeightage() && j == 2)) { PdfPCell pcell = null; if (j != 3) pcell = new PdfPCell( new Paragraph(fontFamilySelector.process( jsonComp.getJSONObject(i).has(colParam[j]) ? jsonComp .getJSONObject(i).getString(colParam[j]) : "", FontContext.SMALL_NORMAL_HELVETICA))); else { pcell = new PdfPCell(new Paragraph(fontFamilySelector.process( jsonComp.getJSONObject(i).has(colParam[j]) ? (jsonComp.getJSONObject(i).getString(colParam[j]) .equals("0") ? "" : jsonComp.getJSONObject(i) .getString(colParam[j])) : "", FontContext.SMALL_NORMAL_HELVETICA))); } pcell.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell.setBorderColor(Color.GRAY); pcell.setPadding(4); pcell.setHorizontalAlignment(Element.ALIGN_CENTER); pcell.setVerticalAlignment(Element.ALIGN_CENTER); questionTable.addCell(pcell); } } } document.add(questionTable); } else { String[] compParam = { messageSource.getMessage("hrms.performance.competency", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.competency.description", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.weightage", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.self.rating", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.self.comments", null, RequestContextUtils.getLocale(request)) }; String[] colParam = { "cmptname", "cmptdesc", "cmptwt", "emprat", "empcompcomment" }; PdfPTable questionTable = null; if (companyPreferences.isWeightage()) { questionTable = new PdfPTable(5); questionTable.setWidths(new float[] { 50, 60, 30, 30, 42 }); } else { questionTable = new PdfPTable(4); questionTable.setWidths(new float[] { 50, 60, 30, 42 }); } questionTable.setWidthPercentage(100); questionTable.setSpacingBefore(20); questionTable.setHeaderRows(1); for (int i = 0; i < compParam.length; i++) { if (!(!companyPreferences.isWeightage() && i == 2)) { PdfPCell pgcell = new PdfPCell(new Paragraph(fontFamilySelector .process(compParam[i], FontContext.MEDIUM_BOLD_HELVETICA))); pgcell.setBorder(0); pgcell.setBorder(PdfPCell.BOX); pgcell.setPadding(4); pgcell.setBorderColor(Color.GRAY); pgcell.setHorizontalAlignment(Element.ALIGN_CENTER); questionTable.addCell(pgcell); } } for (int i = 0; i < jsonComp.length(); i++) { for (int j = 0; j < colParam.length; j++) { if (!(!companyPreferences.isWeightage() && j == 2)) { PdfPCell pcell; if (j != 3) pcell = new PdfPCell( new Paragraph(fontFamilySelector.process( jsonComp.getJSONObject(i).has(colParam[j]) ? jsonComp .getJSONObject(i).getString(colParam[j]) : "", FontContext.SMALL_NORMAL_HELVETICA))); else pcell = new PdfPCell(new Paragraph(fontFamilySelector.process( jsonComp.getJSONObject(i).has(colParam[j]) ? (jsonComp.getJSONObject(i).getString(colParam[j]) .equals("0") ? "" : jsonComp.getJSONObject(i) .getString(colParam[j])) : "", FontContext.SMALL_NORMAL_HELVETICA))); pcell.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell.setBorderColor(Color.GRAY); pcell.setPadding(4); pcell.setHorizontalAlignment(Element.ALIGN_CENTER); pcell.setVerticalAlignment(Element.ALIGN_CENTER); questionTable.addCell(pcell); } } } document.add(questionTable); } } else {//Questions try { JSONArray jsonQues = obj.getJSONArray(1); JSONArray jsonAnsTemp = obj.getJSONArray(2); JSONArray jsonAns = new JSONArray(); PdfPTable quesMainTable = new PdfPTable(1); quesMainTable.setTotalWidth(90); quesMainTable.setWidthPercentage(100); quesMainTable.setSpacingBefore(20); quesMainTable.setSkipFirstHeader(true); PdfPCell quesHeadcell = new PdfPCell(new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.performance.qualitative.appraisal", null, RequestContextUtils.getLocale(request)), FontContext.MEDIUM_BOLD_HELVETICA))); quesHeadcell.setPadding(5); quesMainTable.addCell(quesHeadcell); document.add(quesMainTable); PdfPTable[] quesTable = new PdfPTable[jsonQues.length()]; try { for (int i = 0; i < jsonQues.length(); i++) { String qid = (String) jsonQues.getJSONObject(i).get("qdescription"); for (int j = 0; j < jsonAnsTemp.length(); j++) { try { if (qid.equals((String) jsonAnsTemp.getJSONObject(j).get("question"))) { jsonAns.put(jsonAnsTemp.getJSONObject(j)); break; } } catch (JSONException e) { jsonAns.put(""); } } } } catch (JSONException e) { e.printStackTrace(); } for (int i = 0; i < jsonQues.length(); i++) { quesTable[i] = new PdfPTable(2); quesTable[i].setWidthPercentage(90); quesTable[i].setWidths(new float[] { 10, 80 }); quesTable[i].setSpacingBefore(20); quesTable[i].setHeaderRows(1); PdfPCell pgcell1 = new PdfPCell(new Paragraph(fontFamilySelector.process( messageSource.getMessage("hrms.performance.que", null, RequestContextUtils.getLocale(request)) + ".", FontContext.SMALL_NORMAL_HELVETICA))); pgcell1.setBorder(0); pgcell1.setBorder(PdfPCell.BOX); pgcell1.setPadding(4); pgcell1.setHorizontalAlignment(Element.ALIGN_CENTER); quesTable[i].addCell(pgcell1); PdfPCell pgcell2 = new PdfPCell( new Paragraph( fontFamilySelector .process( jsonQues.getJSONObject(i).has("qdesc") ? jsonQues .getJSONObject(i).getString("qdesc") : "", FontContext.SMALL_NORMAL_HELVETICA))); pgcell2.setBorder(0); pgcell2.setBorder(PdfPCell.BOX); pgcell2.setPadding(4); pgcell2.setHorizontalAlignment(Element.ALIGN_LEFT); quesTable[i].addCell(pgcell2); int cnt = 0; try { cnt = jsonQues.getJSONObject(i).has("qans") ? Integer.parseInt(jsonQues.getJSONObject(i).getString("qans")) : 0; } catch (NumberFormatException e) { e.printStackTrace(); } if (jsonAns.length() > 0) { JSONArray arr = jsonAns.getJSONObject(i).getJSONArray("answer"); for (int j = 0; j < arr.length(); j++) { PdfPCell pcell1 = new PdfPCell(new Paragraph(fontFamilySelector .process((j + 1) + "", FontContext.SMALL_NORMAL_HELVETICA))); pcell1.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell1.setBorderColor(Color.GRAY); pcell1.setPadding(4); pcell1.setHorizontalAlignment(Element.ALIGN_CENTER); pcell1.setVerticalAlignment(Element.ALIGN_CENTER); quesTable[i].addCell(pcell1); PdfPCell pcell2 = new PdfPCell(new Paragraph(fontFamilySelector.process( arr.getJSONObject(j).getString("" + j + ""), FontContext.SMALL_NORMAL_HELVETICA))); pcell2.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell2.setBorderColor(Color.GRAY); pcell2.setPadding(4); pcell2.setHorizontalAlignment(Element.ALIGN_LEFT); pcell2.setVerticalAlignment(Element.ALIGN_CENTER); quesTable[i].addCell(pcell2); } } else { for (int j = 0; j < cnt; j++) { PdfPCell pcell1 = new PdfPCell(new Paragraph(fontFamilySelector .process((j + 1) + "", FontContext.SMALL_NORMAL_HELVETICA))); pcell1.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell1.setBorderColor(Color.GRAY); pcell1.setPadding(4); pcell1.setHorizontalAlignment(Element.ALIGN_CENTER); pcell1.setVerticalAlignment(Element.ALIGN_CENTER); quesTable[i].addCell(pcell1); PdfPCell pcell = new PdfPCell(new Paragraph(fontFamilySelector.process("", FontContext.SMALL_NORMAL_HELVETICA))); pcell.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell.setBorderColor(Color.GRAY); pcell.setPadding(4); pcell.setHorizontalAlignment(Element.ALIGN_CENTER); pcell.setVerticalAlignment(Element.ALIGN_CENTER); quesTable[i].addCell(pcell); } } PdfPCell pcell = new PdfPCell(new Paragraph( fontFamilySelector.process(" ", FontContext.SMALL_NORMAL_HELVETICA))); pcell.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell.setBorderColor(Color.GRAY); pcell.setPadding(4); pcell.setHorizontalAlignment(Element.ALIGN_CENTER); pcell.setVerticalAlignment(Element.ALIGN_CENTER); //questionTable.addCell(pcell); document.add(quesTable[i]); } //document.add(questionTable); } catch (JSONException e) { e.printStackTrace(); } } } catch (JSONException e) { e.printStackTrace(); } } //Comp //Goals requestParams.clear(); requestParams.put("companyid", sessionHandlerImplObj.getCompanyid(request)); requestParams.put("checklink", "goal"); if (hrmsCommonDAOObj.checkModule(requestParams).isSuccessFlag()) { try { JSONArray jsonGoals = obj.getJSONArray(3); if (!isMyAppraisal) { String goalParam[] = { messageSource.getMessage("hrms.performance.goals", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.percent.completed", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.goal.weightage", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraiser.rating", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.appraiser.comment", null, RequestContextUtils.getLocale(request)) }; String colHeader[] = { "gname", "gcomplete", "gwth", "gmanrat", "mangoalcomment" }; PdfPTable goalTable = null; if (companyPreferences.isWeightage()) { goalTable = new PdfPTable(5); goalTable.setWidths(new float[] { 50, 60, 30, 30, 42 }); } else { goalTable = new PdfPTable(4); goalTable.setWidths(new float[] { 50, 60, 30, 42 }); } goalTable.setWidthPercentage(100); goalTable.setSpacingBefore(20); goalTable.setHeaderRows(1); for (int i = 0; i < goalParam.length; i++) { if (!(!companyPreferences.isWeightage() && i == 2)) { PdfPCell pgcell = new PdfPCell(new Paragraph(fontFamilySelector .process(goalParam[i], FontContext.MEDIUM_BOLD_HELVETICA))); pgcell.setBorder(0); pgcell.setBorder(PdfPCell.BOX); pgcell.setPadding(4); pgcell.setBorderColor(Color.GRAY); pgcell.setHorizontalAlignment(Element.ALIGN_CENTER); goalTable.addCell(pgcell); } } for (int i = 0; i < jsonGoals.length(); i++) { for (int j = 0; j < colHeader.length; j++) { if (!(!companyPreferences.isWeightage() && j == 2)) { PdfPCell pcell; if (j != 3) pcell = new PdfPCell( new Paragraph( fontFamilySelector .process( jsonGoals.getJSONObject(i).has(colHeader[j]) ? jsonGoals.getJSONObject(i) .getString(colHeader[j]) : "", FontContext.SMALL_NORMAL_HELVETICA))); else pcell = new PdfPCell(new Paragraph(fontFamilySelector.process( jsonGoals.getJSONObject(i).has(colHeader[j]) ? (jsonGoals.getJSONObject(i).getString(colHeader[j]) .equals("0") ? "" : jsonGoals.getJSONObject(i) .getString(colHeader[j])) : "", FontContext.SMALL_NORMAL_HELVETICA))); pcell.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell.setBorderColor(Color.GRAY); pcell.setPadding(4); pcell.setHorizontalAlignment(Element.ALIGN_CENTER); pcell.setVerticalAlignment(Element.ALIGN_CENTER); goalTable.addCell(pcell); } } } document.add(goalTable); } else { String goalParam[] = { messageSource.getMessage("hrms.performance.goals", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.percent.completed", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.goal.weightage", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.self.rating", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.performance.self.comments", null, RequestContextUtils.getLocale(request)), messageSource.getMessage("hrms.common.assigned.by", null, RequestContextUtils.getLocale(request)) }; String colHeader[] = { "gname", "gcomplete", "gwth", "gemprat", "empgoalcomment", "assignedby" }; PdfPTable goalTable = null; if (companyPreferences.isWeightage()) { goalTable = new PdfPTable(6); goalTable.setWidths(new float[] { 50, 60, 30, 50, 42, 60 }); } else { goalTable = new PdfPTable(5); goalTable.setWidths(new float[] { 50, 60, 50, 42, 60 }); } goalTable.setWidthPercentage(100); goalTable.setSpacingBefore(20); goalTable.setHeaderRows(1); for (int i = 0; i < goalParam.length; i++) { if (!(!companyPreferences.isWeightage() && i == 2)) { PdfPCell pgcell = new PdfPCell(new Paragraph(fontFamilySelector .process(goalParam[i], FontContext.MEDIUM_BOLD_HELVETICA))); pgcell.setBorder(0); pgcell.setBorder(PdfPCell.BOX); pgcell.setPadding(4); pgcell.setBorderColor(Color.GRAY); pgcell.setHorizontalAlignment(Element.ALIGN_CENTER); goalTable.addCell(pgcell); } } for (int i = 0; i < jsonGoals.length(); i++) { for (int j = 0; j < colHeader.length; j++) { if (!(!companyPreferences.isWeightage() && j == 2)) { PdfPCell pcell; if (j != 3) pcell = new PdfPCell( new Paragraph( fontFamilySelector .process( jsonGoals.getJSONObject(i).has(colHeader[j]) ? jsonGoals.getJSONObject(i) .getString(colHeader[j]) : "", FontContext.SMALL_NORMAL_HELVETICA))); else pcell = new PdfPCell(new Paragraph(fontFamilySelector.process( jsonGoals.getJSONObject(i).has(colHeader[j]) ? (jsonGoals.getJSONObject(i).getString(colHeader[j]) .equals("0") ? "" : jsonGoals.getJSONObject(i) .getString(colHeader[j])) : "", FontContext.SMALL_NORMAL_HELVETICA))); pcell.setBorder(PdfPCell.BOTTOM | PdfPCell.LEFT | PdfPCell.RIGHT); pcell.setBorderColor(Color.GRAY); pcell.setPadding(4); pcell.setHorizontalAlignment(Element.ALIGN_CENTER); pcell.setVerticalAlignment(Element.ALIGN_CENTER); goalTable.addCell(pcell); } } } document.add(goalTable); } } catch (JSONException e) { e.printStackTrace(); } } //Goals document.newPage(); document.close(); response.setHeader("Content-Disposition", "attachment; filename=\"" + "App_Form" + ".pdf\""); response.setContentType("application/octet-stream"); response.setContentLength(baos.size()); response.getOutputStream().write(baos.toByteArray()); } catch (DocumentException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { writer.close(); } }
From source file:com.macrosoft.icms.util.PDFCreator.java
public static void createPdfByData(String fileName, String path, Map dataMap) { Document document = new Document(PageSize.A4.rotate(), 50, 50, 50, 50); String opetype = (String) dataMap.get("opetype"); try {//from w ww.j a v a 2s . c om //PDF File file = new File(path); if (!file.exists()) { file.mkdirs(); } PdfWriter.getInstance(document, new FileOutputStream(path + fileName)); //PDF document.open(); // BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); Font titleChinese = new Font(bfChinese, 30, Font.BOLD); //table Font contentFont = new Font(bfChinese, 16, Font.NORMAL); //table Font tblTitleFont = new Font(bfChinese, 16, Font.BOLD); //PDF Paragraph title = new Paragraph((String) dataMap.get("title"), titleChinese); title.setAlignment(Paragraph.ALIGN_CENTER); document.add(title); Paragraph attionTitle = new Paragraph("", contentFont); attionTitle.setAlignment(Paragraph.ALIGN_CENTER); if ("GT".equals(opetype)) { Map<String, String> gtMap = (Map<String, String>) dataMap.get("gtMap"); Table gtxxtable = new Table(5); int gtxxwidths[] = { 30, 15, 20, 15, 20 }; gtxxtable.setWidths(gtxxwidths); gtxxtable.setWidth(100); gtxxtable.setPadding(3); gtxxtable.setBorderWidth(1); gtxxtable.setAlignment(Cell.ALIGN_CENTER); Cell cell = new Cell(new Phrase(" ", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("traname"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setColspan(4); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setRowspan(7); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("name"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("sex"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("cerno"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setColspan(3); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("dom"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setColspan(3); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("postalcode"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("tel"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("email"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setColspan(3); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("polstand"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("nation"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("litedeg"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("occstbeapp"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setRowspan(2); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("grjy"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setColspan(4); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("jtjy"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("fammember"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setColspan(2); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("busscoandform"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setColspan(4); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("oploc"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setColspan(4); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("empnum"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); gtxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); gtxxtable.addCell(cell); cell = new Cell(new Phrase(gtMap == null ? "" : gtMap.get("capam"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_LEFT); cell.setColspan(2); gtxxtable.addCell(cell); Paragraph p1 = new Paragraph( "\n ", contentFont); Paragraph p2 = new Paragraph(" ", contentFont); p2.setIndentationLeft(500); Paragraph p3 = new Paragraph(" ", contentFont); p3.setIndentationLeft(500); cell = new Cell(); cell.add(p1); cell.add(p2); cell.add(p3); cell.setColspan(5); gtxxtable.addCell(cell); document.add(gtxxtable); Paragraph wtitle = new Paragraph("\n", titleChinese); wtitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(wtitle); Map<String, String> wtrMap = (Map<String, String>) dataMap.get("wtrMap"); Paragraph wtr = new Paragraph("\n :" + (wtrMap == null ? "" : wtrMap.get("sqr")), contentFont); document.add(wtr); wtr = new Paragraph(" " + (wtrMap == null ? "" : wtrMap.get("wtr")), contentFont); document.add(wtr); wtr = new Paragraph(" \n", contentFont); document.add(wtr); wtr = new Paragraph("1. " + (wtrMap == null ? " " : wtrMap.get("qx1")) + " ", contentFont); wtr.setIndentationLeft(100); document.add(wtr); wtr = new Paragraph("2. " + (wtrMap == null ? " " : wtrMap.get("qx2")) + " ", contentFont); wtr.setIndentationLeft(100); document.add(wtr); wtr = new Paragraph( "3. " + (wtrMap == null ? " " : wtrMap.get("qx3")) + " ", contentFont); wtr.setIndentationLeft(100); document.add(wtr); wtr = new Paragraph("4. " + (wtrMap == null ? " " : wtrMap.get("qx4")) + " ", contentFont); wtr.setIndentationLeft(100); document.add(wtr); wtr = new Paragraph("\n " + (wtrMap == null ? "" : wtrMap.get("confrom")) + " " + (wtrMap == null ? "" : wtrMap.get("conto")) + "\n", contentFont); document.add(wtr); Table t = new Table(4); int twidths[] = { 20, 30, 20, 30 }; t.setWidths(twidths); t.setWidth(100); t.setPadding(3); t.setBorderWidth(1); t.setAlignment(Cell.ALIGN_CENTER); Cell tCell = new Cell(new Phrase("", contentFont)); tCell.setColspan(2); tCell.setHorizontalAlignment(Element.ALIGN_CENTER); t.addCell(tCell); tCell = new Cell(new Phrase(wtrMap == null ? "" : wtrMap.get("unit"), contentFont)); tCell.setColspan(2); tCell.setHorizontalAlignment(Element.ALIGN_CENTER); t.addCell(tCell); tCell = new Cell(new Phrase("", contentFont)); tCell.setHorizontalAlignment(Element.ALIGN_CENTER); t.addCell(tCell); tCell = new Cell(new Phrase(wtrMap == null ? "" : wtrMap.get("postalcode"), contentFont)); tCell.setHorizontalAlignment(Element.ALIGN_CENTER); t.addCell(tCell); tCell = new Cell(new Phrase("", contentFont)); tCell.setHorizontalAlignment(Element.ALIGN_CENTER); t.addCell(tCell); tCell = new Cell(new Phrase(wtrMap == null ? "" : wtrMap.get("tel"), contentFont)); tCell.setHorizontalAlignment(Element.ALIGN_CENTER); t.addCell(tCell); document.add(t); Paragraph pp = new Paragraph("\n", contentFont); document.add(pp); pp = new Paragraph(" ", contentFont); pp.setAlignment(Paragraph.ALIGN_RIGHT); document.add(pp); } else { // // Table jbxxtable = new Table(4); int jbxxwidths[] = { 20, 30, 20, 30 }; jbxxtable.setWidths(jbxxwidths); jbxxtable.setWidth(100); jbxxtable.setPadding(3); jbxxtable.setBorderWidth(1); jbxxtable.setAlignment(Cell.ALIGN_CENTER); // Cell jbxxTitle = new Cell(new Phrase("", tblTitleFont)); jbxxTitle.setColspan(4); jbxxTitle.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxTitle); Map<String, String> jbxxMap = (Map<String, String>) dataMap.get("jbxxMap"); if ("GS".equals(opetype) || "NZFR".equals(opetype) || "HHQY".equals(opetype) || "GRDZ".equals(opetype) || "WZGS".equals(opetype) || "WZHH".equals(opetype) || "HZS".equals(opetype) || "HZSFZ".equals(opetype)) { Cell jbxxName = new Cell(new Phrase(" ", contentFont)); jbxxName.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxName); Cell jbxxNameValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("entname"), contentFont)); jbxxNameValue.setColspan(3); jbxxtable.addCell(jbxxNameValue); Cell jbxxRegno = new Cell(new Phrase("/\n", contentFont)); jbxxRegno.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxRegno); if ("WZGS".equals(opetype)) { Cell jbxxRegnoValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("regno"), contentFont)); jbxxtable.addCell(jbxxRegnoValue); Cell gbc = new Cell(new Phrase("", contentFont)); gbc.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(gbc); gbc = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("country"), contentFont)); gbc.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(gbc); } else { Cell jbxxRegnoValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("regno"), contentFont)); jbxxRegnoValue.setColspan(3); jbxxtable.addCell(jbxxRegnoValue); } } else if ("FGS".equals(opetype) || "NZYY".equals(opetype) || "HHFZ".equals(opetype) || "GRDZFZ".equals(opetype) || "WZFZ".equals(opetype) || "WZHHFZ".equals(opetype)) { String lsdw = ""; if ("NZYY".equals(opetype) || "WZFZ".equals(opetype) || "WZHHFZ".equals(opetype)) { lsdw = ""; } Cell cell = null; if (!"HHFZ".equals(opetype) && !"GRDZFZ".equals(opetype)) { cell = new Cell(new Phrase(lsdw, contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("supentname"), contentFont)); jbxxtable.addCell(cell); cell = new Cell(new Phrase("/", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("supregno"), contentFont)); jbxxtable.addCell(cell); } String fgsname = ""; if ("NZYY".equals(opetype)) { fgsname = ""; } else if ("HHFZ".equals(opetype) || "GRDZFZ".equals(opetype) || "WZFZ".equals(opetype) || "WZHHFZ".equals(opetype)) { fgsname = ""; } cell = new Cell(new Phrase(fgsname, contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("entname"), contentFont)); jbxxtable.addCell(cell); String regname = "//"; if ("NZYY".equals(opetype)) { regname = "//"; } else if ("NZYY".equals(opetype) || "GRDZFZ".equals(opetype) || "WZFZ".equals(opetype)) { regname = "//"; } cell = new Cell(new Phrase(regname, contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regno"), contentFont)); jbxxtable.addCell(cell); } if ("WGJY".equals(opetype)) { Cell cell = new Cell(new Phrase(" ", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("entname"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("/", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regno"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(" ", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("dom"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); } else if ("WGDB".equals(opetype)) { Cell cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("entname"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("/", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regno"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("dom"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); } else { String domname = ""; if ("FGS".equals(opetype) || "WZHHFZ".equals(opetype)) { domname = ""; } else if ("GRDZ".equals(opetype)) { domname = ""; } else if ("GRDZFZ".equals(opetype) || "HHFZ".equals(opetype) || "HZSFZ".equals(opetype)) { domname = ""; } else if ("WZHH".equals(opetype) || "HHQY".equals(opetype)) { domname = ""; } Cell jbxxDom = new Cell(new Phrase(domname, contentFont)); jbxxDom.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxDom); Cell jbxxDomValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("dom"), contentFont)); jbxxDomValue.setColspan(3); jbxxtable.addCell(jbxxDomValue); Cell jbxxOploc = new Cell(new Phrase("", contentFont)); jbxxOploc.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxOploc); Cell jbxxOplocValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("oploc"), contentFont)); jbxxOplocValue.setColspan(3); jbxxtable.addCell(jbxxOplocValue); } Cell jbxxTel = new Cell(new Phrase("", contentFont)); jbxxTel.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxTel); Cell jbxxTelValue = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("tel"), contentFont)); jbxxTelValue.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxTelValue); Cell jbxxEmail = new Cell(new Phrase("", contentFont)); jbxxEmail.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxEmail); Cell jbxxEmailValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("postalcode"), contentFont)); jbxxEmailValue.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxEmailValue); // String slname = " "; if ("NZFR".equals(opetype) || "NZYY".equals(opetype) || "WGJY".equals(opetype)) { slname = ""; } Cell slTitle = new Cell(new Phrase(slname, tblTitleFont)); slTitle.setColspan(4); slTitle.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(slTitle); if ("GS".equals(opetype) || "NZFR".equals(opetype) || "WZGS".equals(opetype)) { Cell jbxxLerep = new Cell(new Phrase("", contentFont)); jbxxLerep.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxLerep); Cell jbxxLerepValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("lerep"), contentFont)); jbxxLerepValue.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxLerepValue); if ("WZGS".equals(opetype)) { Cell cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("country"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("position"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("congro"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("congrocur"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("congrousd"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regcap"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("enttype"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("insform"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("\n\n\n", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("busscope"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); } else { Cell jbxxPosition = new Cell(new Phrase(" ", contentFont)); jbxxPosition.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxPosition); Cell jbxxPositionValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("position"), contentFont)); jbxxPositionValue.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxPositionValue); String regcapname = ""; if ("NZFR".equals(opetype)) { regcapname = ""; } Cell jbxxRegcap = new Cell(new Phrase(regcapname, contentFont)); jbxxRegcap.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxRegcap); Cell jbxxRegcapValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("regcap"), contentFont)); jbxxRegcapValue.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxRegcapValue); String enttypename = ""; if ("NZFR".equals(opetype)) { enttypename = ""; } Cell jbxxEnttype = new Cell(new Phrase(enttypename, contentFont)); jbxxEnttype.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxEnttype); Cell jbxxEnttypeValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("enttype"), contentFont)); jbxxEnttypeValue.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxEnttypeValue); } if ("GS".equals(opetype)) { Cell jbxxInsform = new Cell(new Phrase("\n", contentFont)); jbxxInsform.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxInsform); Cell jbxxInsformValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("insform"), contentFont)); jbxxInsformValue.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxInsformValue.setColspan(3); jbxxtable.addCell(jbxxInsformValue); Cell jbxxBusscope = new Cell(new Phrase("\n\n\n", contentFont)); jbxxBusscope.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxBusscope); Cell jbxxBusscopeValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("busscope"), contentFont)); jbxxBusscopeValue.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxBusscopeValue.setColspan(3); jbxxtable.addCell(jbxxBusscopeValue); } Cell jbxxOpfyears = new Cell(new Phrase("", contentFont)); jbxxOpfyears.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxOpfyears); Cell jbxxOpfyearsValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("opfyears"), contentFont)); jbxxOpfyearsValue.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxOpfyearsValue); Cell jbxxConum = new Cell(new Phrase("", contentFont)); jbxxConum.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxConum); Cell jbxxConumValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("conum"), contentFont)); jbxxConumValue.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxConumValue); if ("NZFR".equals(opetype)) { Cell jbxxBusscope = new Cell(new Phrase("\n\n\n", contentFont)); jbxxBusscope.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(jbxxBusscope); Cell jbxxBusscopeValue = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("busscope"), contentFont)); jbxxBusscopeValue.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxBusscopeValue.setColspan(3); jbxxtable.addCell(jbxxBusscopeValue); } } else if ("FGS".equals(opetype) || "NZYY".equals(opetype) || "HHFZ".equals(opetype) || "GRDZFZ".equals(opetype) || "WZFZ".equals(opetype) || "WZHHFZ".equals(opetype) || "HZSFZ".equals(opetype)) { Cell cell = null; if ("HHFZ".equals(opetype) || "GRDZFZ".equals(opetype)) { cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("lerep"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("houseadd"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("cerno"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("empno"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("tel"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("postalcode"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("yysj"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); } else { cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("lerep"), contentFont)); jbxxtable.addCell(cell); if ("NZYY".equals(opetype)) { cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("tel"), contentFont)); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regcap"), contentFont)); jbxxtable.addCell(cell); } cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("conum"), contentFont)); jbxxtable.addCell(cell); } String bussname = ""; if ("FGS".equals(opetype)) { bussname = ""; } else if ("HHFZ".equals(opetype) || "GRDZFZ".equals(opetype) || "WZHHFZ".equals(opetype)) { bussname = ""; } cell = new Cell(new Phrase(bussname, contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("busscope"), contentFont)); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell( new Phrase(jbxxMap == null ? "" : jbxxMap.get("calculationmethod"), contentFont)); cell.setColspan(3); jbxxtable.addCell(cell); } else if ("HHQY".equals(opetype)) { Cell hhcell = new Cell(new Phrase("", contentFont)); hhcell.setRowspan(2); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase("", contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); hhcell.setColspan(2); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("lerep"), contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell( new Phrase("", contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); hhcell.setColspan(2); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase("", contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase("", contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("hhlx"), contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); hhcell.setColspan(3); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase("", contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("hhcze"), contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); hhcell.setColspan(3); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase("\n\n\n", contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("busscope"), contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); hhcell.setColspan(3); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase("", contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase(" ______________________________________________", contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); hhcell.setColspan(3); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase("", contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("parnum"), contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase("", contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("exenum"), contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase("", contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(hhcell); hhcell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("empnum"), contentFont)); hhcell.setHorizontalAlignment(Element.ALIGN_CENTER); hhcell.setColspan(3); jbxxtable.addCell(hhcell); } else if ("GRDZ".equals(opetype)) { Cell cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regcap"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("empnum"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("grczfs"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("\n\n\n", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("busscope"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); } else if ("WZHH".equals(opetype)) { Cell cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("lerep"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(" ", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("country"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regcap"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("reccap"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regcapcur"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("enttype"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("\n\n\n", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("busscope"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("opfyears"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("conum"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); } else if ("WGJY".equals(opetype)) { Cell cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("enttype"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("depincha"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("exaauth"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("sandate"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("lerep"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("busscope"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regcap"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regcapcur"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("yysj"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("itemofoporcpro"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("forentname"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("forentadd"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("forentscope"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); } else if ("WGDB".equals(opetype)) { Cell cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("lerep"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("busscope"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("yysj"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regorg"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("yysj"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("sandate"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("sandocno"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(4); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("forentname"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("forentforname"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(" ", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("forentadd"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("cxqx"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("forentautsign"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("forenliafor"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("forentcap"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("country"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("forentscope"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); } else if ("HZS".equals(opetype)) { Cell cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("lerep"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); cell = new Cell(new Phrase("", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("regcap"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); Paragraph p1 = new Paragraph(" " + dataMap.get("cyzs") + " ", contentFont); Paragraph p2 = new Paragraph(" " + dataMap.get("nmcy") + " " + dataMap.get("nmcyrate") + " %", contentFont); p2.setIndentationLeft(60); Paragraph p3 = new Paragraph(" " + dataMap.get("frcy") + " " + dataMap.get("frcyrate") + " %", contentFont); p3.setIndentationLeft(120); cell = new Cell(); cell.add(p1); cell.add(p2); cell.add(p3); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(4); jbxxtable.addCell(cell); cell = new Cell(new Phrase("\n\n\n", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); jbxxtable.addCell(cell); cell = new Cell(new Phrase(jbxxMap == null ? "" : jbxxMap.get("busscope"), contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(3); jbxxtable.addCell(cell); } document.add(jbxxtable); // //TABLE Table remarktable = new Table(6); int remarkwidths[] = { 15, 10, 20, 15, 20, 20 }; remarktable.setWidths(remarkwidths); remarktable.setWidth(100); remarktable.setPadding(3); remarktable.setBorderWidth(1); remarktable.setAlignment(Cell.ALIGN_CENTER); if ("GS".equals(opetype) || "NZFR".equals(opetype) || "HHQY".equals(opetype) || "HHFZ".equals(opetype) || "GRDZ".equals(opetype) || "GRDZFZ".equals(opetype) || "WZGS".equals(opetype) || "WZHH".equals(opetype) || "HZS".equals(opetype)) { Cell bgTitle = new Cell(new Phrase("", tblTitleFont)); bgTitle.setColspan(6); bgTitle.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(bgTitle); Cell bg1 = new Cell(new Phrase("", contentFont)); bg1.setColspan(2); bg1.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(bg1); Cell bg2 = new Cell(new Phrase("", contentFont)); bg2.setColspan(2); bg2.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(bg2); Cell bg3 = new Cell(new Phrase("", contentFont)); bg3.setColspan(2); bg3.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(bg3); for (int i = 0; i < 5; i++) { Cell bg11 = new Cell(""); bg11.setColspan(2); remarktable.addCell(bg11); Cell bg21 = new Cell(" "); bg21.setColspan(2); remarktable.addCell(bg21); Cell bg31 = new Cell(" "); bg31.setColspan(2); remarktable.addCell(bg31); } if ("GS".equals(opetype) || "HHQY".equals(opetype) || "GRDZ".equals(opetype) || "WZGS".equals(opetype) || "WZHH".equals(opetype) || "HZS".equals(opetype)) { Cell baTitle = new Cell(new Phrase(" ", tblTitleFont)); baTitle.setColspan(6); baTitle.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(baTitle); Cell fgsCell = new Cell(new Phrase("\n", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); fgsCell.setRowspan(2); remarktable.addCell(fgsCell); Cell nameCell = new Cell(new Phrase("", contentFont)); nameCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nameCell); Cell nameValueCell = new Cell(new Phrase("", contentFont)); remarktable.addCell(nameValueCell); Cell regnoCell = new Cell(new Phrase("/", contentFont)); regnoCell.setHorizontalAlignment(Element.ALIGN_CENTER); regnoCell.setColspan(2); remarktable.addCell(regnoCell); Cell regnoValueCell = new Cell(new Phrase("", contentFont)); remarktable.addCell(regnoValueCell); Cell djjgCell = new Cell(new Phrase("", contentFont)); djjgCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(djjgCell); Cell djjgValueCell = new Cell(new Phrase("", contentFont)); remarktable.addCell(djjgValueCell); Cell djrqCell = new Cell(new Phrase("", contentFont)); djrqCell.setHorizontalAlignment(Element.ALIGN_CENTER); djrqCell.setColspan(2); remarktable.addCell(djrqCell); Cell djrqValueCell = new Cell(new Phrase("", contentFont)); remarktable.addCell(djrqValueCell); if ("GRDZ".equals(opetype)) { Cell qtc = new Cell(new Phrase("", contentFont)); qtc.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(qtc); qtc = new Cell(new Phrase(" ", contentFont)); qtc.setHorizontalAlignment(Element.ALIGN_CENTER); qtc.setColspan(5); remarktable.addCell(qtc); } else { Cell qszCell = new Cell(new Phrase("", contentFont)); qszCell.setHorizontalAlignment(Element.ALIGN_CENTER); qszCell.setRowspan(2); remarktable.addCell(qszCell); Cell cyCell = new Cell(new Phrase("", contentFont)); cyCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(cyCell); Cell cyValueCell = new Cell(new Phrase("", contentFont)); cyValueCell.setColspan(4); remarktable.addCell(cyValueCell); Cell fzrCell = new Cell(new Phrase("", contentFont)); fzrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fzrCell); Cell fzrValueCell = new Cell(new Phrase("", contentFont)); remarktable.addCell(fzrValueCell); Cell lxdhCell = new Cell(new Phrase("", contentFont)); lxdhCell.setHorizontalAlignment(Element.ALIGN_CENTER); lxdhCell.setColspan(2); remarktable.addCell(lxdhCell); Cell lxdhValueCell = new Cell(new Phrase("", contentFont)); remarktable.addCell(lxdhValueCell); } if ("GS".equals(opetype) || "WZGS".equals(opetype)) { Cell qtCell = new Cell(new Phrase("", contentFont)); qtCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(qtCell); Cell qtValueCell = new Cell(new Phrase( " ", contentFont)); qtValueCell.setHorizontalAlignment(Element.ALIGN_CENTER); qtValueCell.setColspan(5); remarktable.addCell(qtValueCell); } else if ("HHQY".equals(opetype)) { Cell qtCell = new Cell(new Phrase("", contentFont)); qtCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(qtCell); Cell qtValueCell = new Cell( new Phrase(" ", contentFont)); qtValueCell.setHorizontalAlignment(Element.ALIGN_CENTER); qtValueCell.setColspan(5); remarktable.addCell(qtValueCell); qtCell = new Cell(new Phrase("", contentFont)); qtCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(qtCell); qtValueCell = new Cell(new Phrase(" ", contentFont)); qtValueCell.setHorizontalAlignment(Element.ALIGN_CENTER); qtValueCell.setColspan(5); remarktable.addCell(qtValueCell); } } else if ("NZFR".equals(opetype)) { Cell nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setRowspan(2); nzfrCell.setColspan(2); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase(" ", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase(" ", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase(" ", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase(" ", tblTitleFont)); nzfrCell.setColspan(6); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("\n", contentFont)); nzfrCell.setRowspan(4); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setColspan(2); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase(" ", contentFont)); nzfrCell.setColspan(3); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setColspan(2); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase(" ", contentFont)); nzfrCell.setColspan(3); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setColspan(2); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase(" ", contentFont)); nzfrCell.setColspan(3); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setColspan(2); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase(" ", contentFont)); nzfrCell.setColspan(3); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase(" ", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); nzfrCell.setColspan(2); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase("", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(nzfrCell); nzfrCell = new Cell(new Phrase(" ", contentFont)); nzfrCell.setHorizontalAlignment(Element.ALIGN_CENTER); nzfrCell.setColspan(2); remarktable.addCell(nzfrCell); } } else if ("FGS".equals(opetype) || "NZYY".equals(opetype) || "WZFZ".equals(opetype) || "WZHHFZ".equals(opetype) || "WGJY".equals(opetype) || "WGDB".equals(opetype) || "HZSFZ".equals(opetype)) { Cell fgsCell = new Cell(new Phrase("/", tblTitleFont)); fgsCell.setColspan(6); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase("/", contentFont)); fgsCell.setColspan(2); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase("/", contentFont)); fgsCell.setColspan(2); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase("/", contentFont)); fgsCell.setColspan(2); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); for (int i = 0; i < 3; i++) { fgsCell = new Cell(""); fgsCell.setColspan(2); remarktable.addCell(fgsCell); fgsCell = new Cell(" "); fgsCell.setColspan(2); remarktable.addCell(fgsCell); fgsCell = new Cell(" "); fgsCell.setColspan(2); remarktable.addCell(fgsCell); } if ("FGS".equals(opetype) || "HZSFZ".equals(opetype)) { fgsCell = new Cell(new Phrase(" ", tblTitleFont)); fgsCell.setColspan(6); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase("", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase( " 1; 2;\n 3; 4", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_LEFT); fgsCell.setColspan(5); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase("", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase(" ", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_LEFT); fgsCell.setColspan(5); remarktable.addCell(fgsCell); } else if ("NZYY".equals(opetype)) { fgsCell = new Cell(new Phrase(" ", tblTitleFont)); fgsCell.setColspan(6); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase("", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase( " 1; 2;\n 3 3; 4", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_LEFT); fgsCell.setColspan(5); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase("", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); fgsCell = new Cell( new Phrase(" ", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_LEFT); fgsCell.setColspan(5); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase("", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase(" ", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_LEFT); fgsCell.setColspan(5); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase("", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(fgsCell); fgsCell = new Cell(new Phrase(" ", contentFont)); fgsCell.setHorizontalAlignment(Element.ALIGN_LEFT); fgsCell.setColspan(5); remarktable.addCell(fgsCell); } } if ("HHFZ".equals(opetype) || "GRDZ".equals(opetype) || "GRDZFZ".equals(opetype) || "WZFZ".equals(opetype) || "WZHHFZ".equals(opetype)) { Cell cell = null; cell = new Cell(new Phrase(" ", tblTitleFont)); cell.setColspan(6); cell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(cell); cell = new Cell(new Phrase(" ", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(cell); if ("HHFZ".equals(opetype) || "GRDZFZ".equals(opetype) || "WZFZ".equals(opetype) || "WZHHFZ".equals(opetype)) { cell = new Cell(new Phrase( " 1. 2.\n 3. 4. ", contentFont)); } else if ("GRDZ".equals(opetype)) { cell = new Cell(new Phrase( " \n \n \n __________________ ", contentFont)); } cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(5); remarktable.addCell(cell); if ("GRDZ".equals(opetype)) { cell = new Cell(new Phrase(" ", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(cell); cell = new Cell(new Phrase(" ", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(5); remarktable.addCell(cell); } cell = new Cell(new Phrase(" ", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(cell); cell = new Cell(new Phrase(" ", contentFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setColspan(5); remarktable.addCell(cell); } // Cell sqrTitle = new Cell(new Phrase("", tblTitleFont)); sqrTitle.setColspan(6); sqrTitle.setHorizontalAlignment(Element.ALIGN_CENTER); remarktable.addCell(sqrTitle); String sqrtext = ""; if ("GS".equals(opetype) || "WZGS".equals(opetype)) { sqrtext = "\n \n"; } else if ("FGS".equals(opetype)) { sqrtext = "\n \n"; } else if ("NZFR".equals(opetype)) { sqrtext = "\n \n"; } else if ("NZYY".equals(opetype)) { sqrtext = "\n \n"; } else if ("HHQY".equals(opetype) || "WZHH".equals(opetype)) { sqrtext = "\n \n"; } else if ("HHFZ".equals(opetype) || "GRDZFZ".equals(opetype) || "WZFZ".equals(opetype) || "WZHHFZ".equals(opetype)) { sqrtext = "\n \n"; } else if ("GRDZ".equals(opetype)) { sqrtext = "\n \n"; } else if ("WGJY".equals(opetype)) { sqrtext = "\n \n"; } else if ("WGDB".equals(opetype)) { sqrtext = "\n \n"; } else if ("HZS".equals(opetype) || "HZSFZ".equals(opetype)) { sqrtext = "\n \n"; } Paragraph sqrp = new Paragraph(sqrtext, contentFont); String fdbdrname = ""; if ("HHQY".equals(opetype) || "WZHH".equals(opetype)) { fdbdrname = ""; } else if ("HHFZ".equals(opetype) || "GRDZFZ".equals(opetype) || "WZFZ".equals(opetype) || "WZHHFZ".equals(opetype)) { fdbdrname = "\n \n "; } else if ("GRDZ".equals(opetype)) { fdbdrname = ""; } else if ("WGJY".equals(opetype) || "WGDB".equals(opetype)) { fdbdrname = ":"; } Paragraph fdbdr = new Paragraph(" " + fdbdrname + " ", contentFont); fdbdr.setFirstLineIndent(40); Paragraph fzrqz = new Paragraph( " " + (("GS".equals(opetype) || "HHQY".equals(opetype) || "WZHH".equals(opetype) || "GRDZ".equals(opetype) || "WZGS".equals(opetype) || "HZS".equals(opetype)) ? "" : "") + " ", contentFont); fzrqz.setFirstLineIndent(40); Cell allCell = new Cell(); allCell.add(sqrp); allCell.add(fdbdr); allCell.add(fzrqz); allCell.setColspan(6); remarktable.addCell(allCell); document.add(remarktable); // if ("GRDZ".equals(opetype)) { Paragraph lerepTitle = new Paragraph("\n", titleChinese); lerepTitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(lerepTitle); //TABLE Table lereptable = new Table(4); int lerepwidths[] = { 20, 30, 20, 30 }; lereptable.setWidths(lerepwidths); lereptable.setWidth(100); lereptable.setPadding(3); lereptable.setBorderWidth(1); lereptable.setAlignment(Cell.ALIGN_CENTER); Map<String, String> lerepMap = (Map<String, String>) dataMap.get("lerepMap"); Cell lerep1 = new Cell(new Phrase(" ", contentFont)); lerep1.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep1); Cell lerep2 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("name"), contentFont)); lerep2.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep2); Cell lerep3 = new Cell(new Phrase(" ", contentFont)); lerep3.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep3); Cell lerep4 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("sex"), contentFont)); lerep4.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep4); Cell lerep5 = new Cell(new Phrase("", contentFont)); lerep5.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep5); Cell lerep6 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("natdate"), contentFont)); lerep6.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep6); Cell lerep7 = new Cell(new Phrase(" ", contentFont)); lerep7.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep7); Cell lerep8 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("nation"), contentFont)); lerep8.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep8); Cell lerep9 = new Cell(new Phrase("", contentFont)); lerep9.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep9); Cell lerep10 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("litedeg"), contentFont)); lerep10.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep10); Cell lerep11 = new Cell(new Phrase("", contentFont)); lerep11.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep11); Cell lerep12 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("polstand"), contentFont)); lerep12.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep12); Cell lerep13 = new Cell(new Phrase("", contentFont)); lerep13.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep13); Cell lerep14 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("mobile"), contentFont)); lerep14.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep14); Cell lerep15 = new Cell(new Phrase("", contentFont)); lerep15.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep15); Cell lerep16 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("email"), contentFont)); lerep16.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep16); Cell lerep17 = new Cell(new Phrase("", contentFont)); lerep17.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep17); Cell lerep18 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("certype"), contentFont)); lerep18.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep18); Cell lerep19 = new Cell(new Phrase("", contentFont)); lerep19.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep19); Cell lerep20 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("cerno"), contentFont)); lerep20.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep20); Cell lerep21 = new Cell(new Phrase(" ", contentFont)); lerep21.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep21); Cell lerep22 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("houseadd"), contentFont)); lerep22.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep22); Cell lerep23 = new Cell(new Phrase("", contentFont)); lerep23.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep23); Cell lerep24 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("postalcode"), contentFont)); lerep24.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep24); Cell lerep25 = new Cell(new Phrase("", contentFont)); lerep25.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep25); Cell lerep26 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("occstbeapp"), contentFont)); lerep26.setHorizontalAlignment(Element.ALIGN_CENTER); lerep26.setColspan(3); lereptable.addCell(lerep26); document.add(lereptable); } else if ("WGDB".equals(opetype)) { Paragraph lerepTitle1 = new Paragraph("\n", titleChinese); lerepTitle1.setAlignment(Paragraph.ALIGN_CENTER); document.add(lerepTitle1); Paragraph lerepTitle2 = new Paragraph("/", titleChinese); lerepTitle2.setAlignment(Paragraph.ALIGN_CENTER); document.add(lerepTitle2); //TABLE Table lereptable = new Table(4); int lerepwidths[] = { 20, 30, 20, 30 }; lereptable.setWidths(lerepwidths); lereptable.setWidth(100); lereptable.setPadding(3); lereptable.setBorderWidth(1); lereptable.setAlignment(Cell.ALIGN_CENTER); Map<String, String> lerepMap = (Map<String, String>) dataMap.get("lerepMap"); Cell lerep1 = new Cell(new Phrase("", contentFont)); lerep1.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep1); Cell lerep2 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("entname"), contentFont)); lerep2.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep2); Cell lerep3 = new Cell(new Phrase("", contentFont)); lerep3.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep3); Cell lerep4 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("name"), contentFont)); lerep4.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep4); Cell lerep5 = new Cell(new Phrase("", contentFont)); lerep5.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep5); Cell lerep6 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("position"), contentFont)); lerep6.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep6); Cell lerep7 = new Cell(new Phrase("", contentFont)); lerep7.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep7); Cell lerep8 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("country"), contentFont)); lerep8.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep8); Cell lerep9 = new Cell(new Phrase("", contentFont)); lerep9.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep9); Cell lerep10 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("arrchdate"), contentFont)); lerep10.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep10); Cell lerep11 = new Cell(new Phrase("", contentFont)); lerep11.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep11); Cell lerep12 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("tel"), contentFont)); lerep12.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep12); Cell lerep13 = new Cell(new Phrase("", contentFont)); lerep13.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep13); Cell lerep14 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("certype"), contentFont)); lerep14.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep14); Cell lerep15 = new Cell(new Phrase("", contentFont)); lerep15.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep15); Cell lerep16 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("cerno"), contentFont)); lerep16.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep16); Cell lerep17 = new Cell(new Phrase("", contentFont)); lerep17.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep17); Cell lerep18 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("houaddinchina"), contentFont)); lerep18.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep18); Cell lerep19 = new Cell(new Phrase("", contentFont)); lerep19.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep19); Cell lerep20 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("repdate"), contentFont)); lerep20.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep20); Paragraph rep1 = new Paragraph("", contentFont); rep1.setAlignment(Paragraph.ALIGN_LEFT); Paragraph rep2 = new Paragraph("1", contentFont); rep2.setAlignment(Paragraph.ALIGN_LEFT); Paragraph rep3 = new Paragraph( "25", contentFont); rep3.setAlignment(Paragraph.ALIGN_LEFT); Paragraph rep4 = new Paragraph("3", contentFont); rep4.setAlignment(Paragraph.ALIGN_LEFT); Paragraph rep5 = new Paragraph("/", contentFont); rep5.setAlignment(Paragraph.ALIGN_LEFT); rep5.setIndentationLeft(200); Cell lerep21 = new Cell(); lerep21.add(rep1); lerep21.add(rep2); lerep21.add(rep3); lerep21.add(rep4); lerep21.add(rep5); lerep21.setColspan(4); lereptable.addCell(lerep21); document.add(lereptable); } else { Paragraph lerepTitle = null; if ("GS".equals(opetype) || "NZFR".equals(opetype) || "WZGS".equals(opetype) || "HZS".equals(opetype)) { lerepTitle = new Paragraph("\n", titleChinese); } else if ("FGS".equals(opetype) || "NZYY".equals(opetype) || "HHFZ".equals(opetype) || "GRDZFZ".equals(opetype) || "WZFZ".equals(opetype) || "WZHHFZ".equals(opetype) || "WGJY".equals(opetype) || "HZSFZ".equals(opetype)) { lerepTitle = new Paragraph("\n", titleChinese); } else if ("HHQY".equals(opetype) || "WZHH".equals(opetype)) { lerepTitle = new Paragraph("\n", titleChinese); } lerepTitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(lerepTitle); //TABLE Table lereptable = new Table(4); int lerepwidths[] = { 20, 30, 20, 30 }; lereptable.setWidths(lerepwidths); lereptable.setWidth(100); lereptable.setPadding(3); lereptable.setBorderWidth(1); lereptable.setAlignment(Cell.ALIGN_CENTER); Map<String, String> lerepMap = (Map<String, String>) dataMap.get("lerepMap"); Cell lerep1 = new Cell(new Phrase(" ", contentFont)); lerep1.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep1); Cell lerep2 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("name"), contentFont)); lerep2.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep2); Cell lerep3 = new Cell(new Phrase("", contentFont)); lerep3.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep3); Cell lerep4 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("tel"), contentFont)); lerep4.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep4); Cell lerep5 = new Cell(new Phrase("", contentFont)); lerep5.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep5); Cell lerep6 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("mobile"), contentFont)); lerep6.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep6); Cell lerep7 = new Cell(new Phrase("", contentFont)); lerep7.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep7); Cell lerep8 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("email"), contentFont)); lerep8.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep8); Cell lerep9 = new Cell(new Phrase("", contentFont)); lerep9.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep9); Cell lerep10 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("certype"), contentFont)); lerep10.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep10); Cell lerep11 = new Cell(new Phrase("", contentFont)); lerep11.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep11); Cell lerep12 = new Cell(new Phrase(lerepMap == null ? "" : lerepMap.get("cerno"), contentFont)); lerep12.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep12); if ("HHFZ".equals(opetype) || "GRDZFZ".equals(opetype)) { Cell lerep13 = new Cell(new Phrase("", contentFont)); lerep13.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep13); Cell lerep14 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("occstbeapp"), contentFont)); lerep14.setHorizontalAlignment(Element.ALIGN_CENTER); lerep14.setColspan(3); lereptable.addCell(lerep14); } else if ("WZFZ".equals(opetype) || "WZHH".equals(opetype) || "WZHHFZ".equals(opetype) || "WGJY".equals(opetype)) { Cell lerep13 = new Cell(new Phrase("", contentFont)); lerep13.setHorizontalAlignment(Element.ALIGN_CENTER); lereptable.addCell(lerep13); Cell lerep14 = new Cell( new Phrase(lerepMap == null ? "" : lerepMap.get("country"), contentFont)); lerep14.setHorizontalAlignment(Element.ALIGN_CENTER); lerep14.setColspan(3); lereptable.addCell(lerep14); } document.add(lereptable); } if ("HZS".equals(opetype)) { Paragraph hzsp = new Paragraph( "\n ", contentFont); document.add(hzsp); Paragraph hzsp1 = new Paragraph("\n", contentFont); hzsp1.setIndentationLeft(200); document.add(hzsp1); Paragraph hzsp2 = new Paragraph("\n ", contentFont); hzsp2.setAlignment(Paragraph.ALIGN_RIGHT); document.add(hzsp2); } if ("GS".equals(opetype) || "WZGS".equals(opetype)) { //() Paragraph ryxxTitle = new Paragraph("\n", titleChinese); ryxxTitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(ryxxTitle); //TABLE Table ryxxtable = new Table(1); int ryxxwidths[] = { 100 }; ryxxtable.setWidths(ryxxwidths); ryxxtable.setWidth(100); ryxxtable.setPadding(3); ryxxtable.setBorderWidth(1); ryxxtable.setAlignment(Cell.ALIGN_CENTER); List<Map<String, String>> ryxxList = (List<Map<String, String>>) dataMap.get("ryxxList"); if (ryxxList != null && !ryxxList.isEmpty()) { for (int i = 0; i < ryxxList.size(); i++) { Map<String, String> ryxxs = ryxxList.get(i); Paragraph p = new Paragraph(); if ("GS".equals(opetype)) { Phrase p1 = new Phrase( "" + (ryxxs == null ? "" : ryxxs.get("name")) + " ", contentFont); p.add(p1); Phrase p2 = new Phrase( "" + (ryxxs == null ? "" : ryxxs.get("position")) + " ", contentFont); p.add(p2); Phrase p3 = new Phrase( "" + (ryxxs == null ? "" : ryxxs.get("certype")) + " ", contentFont); p.add(p3); Phrase p4 = new Phrase( "" + (ryxxs == null ? "" : ryxxs.get("cerno")) + " ", contentFont); p.add(p4); } else if ("WZGS".equals(opetype)) { Phrase p1 = new Phrase( "" + (ryxxs == null ? "" : ryxxs.get("name")) + " ", contentFont); p.add(p1); Phrase p2 = new Phrase( "" + (ryxxs == null ? "" : ryxxs.get("country")) + " ", contentFont); p.add(p2); Phrase p3 = new Phrase( "" + (ryxxs == null ? "" : ryxxs.get("certype")) + " ", contentFont); p.add(p3); Phrase p4 = new Phrase( "" + (ryxxs == null ? "" : ryxxs.get("cerno")) + " ", contentFont); p.add(p4); Phrase p5 = new Phrase( "" + (ryxxs == null ? "" : ryxxs.get("position")) + " ", contentFont); p.add(p5); Phrase p6 = new Phrase( "" + (ryxxs == null ? "" : ryxxs.get("posbrform")) + " ", contentFont); p.add(p6); } Cell cell = new Cell(p); ryxxtable.addCell(cell); } } document.add(ryxxtable); } if ("GS".equals(opetype)) { //() Paragraph czxxTitle = new Paragraph("\n()", titleChinese); czxxTitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(czxxTitle); //TABLE Table czxxtable = new Table(7); int czxxwidths[] = { 20, 20, 15, 10, 10, 15, 10 }; czxxtable.setWidths(czxxwidths); czxxtable.setWidth(100); czxxtable.setPadding(3); czxxtable.setBorderWidth(1); czxxtable.setAlignment(Cell.ALIGN_CENTER); List<List<String>> czxxList = (List<List<String>>) dataMap.get("czxxList"); if (czxxList != null && !czxxList.isEmpty()) { Cell ct1 = new Cell(new Phrase("\n", contentFont)); ct1.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct1); Cell ct2 = new Cell(new Phrase("", contentFont)); ct2.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct2); Cell ct3 = new Cell(new Phrase("", contentFont)); ct3.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct3); Cell ct4 = new Cell(new Phrase("", contentFont)); ct4.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct4); Cell ct5 = new Cell(new Phrase("", contentFont)); ct5.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct5); Cell ct6 = new Cell(new Phrase("\n", contentFont)); ct6.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct6); Cell ct7 = new Cell(new Phrase("", contentFont)); ct7.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct7); for (int i = 0; i < czxxList.size(); i++) { List<String> czxxs = czxxList.get(i); if (!czxxs.isEmpty()) { for (int j = 0; j < czxxs.size(); j++) { Cell czCell = new Cell(new Phrase(czxxs.get(j), contentFont)); czCell.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(czCell); } } } } document.add(czxxtable); } else if ("WZGS".equals(opetype) || "WZHH".equals(opetype)) { //() Paragraph czxxTitle = new Paragraph("\n/", titleChinese); czxxTitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(czxxTitle); //TABLE int length = 0; int[] czxxwidths = null; if ("WZGS".equals(opetype)) { length = 8; czxxwidths = new int[] { 20, 10, 15, 10, 10, 15, 10, 10 }; } else if ("WZHH".equals(opetype)) { length = 9; czxxwidths = new int[] { 12, 11, 11, 11, 11, 11, 11, 11, 11 }; } Table czxxtable = new Table(length); czxxtable.setWidths(czxxwidths); czxxtable.setWidth(100); czxxtable.setPadding(3); czxxtable.setBorderWidth(1); czxxtable.setAlignment(Cell.ALIGN_CENTER); List<List<String>> czxxList = (List<List<String>>) dataMap.get("czxxList"); if (czxxList != null && !czxxList.isEmpty()) { String ct1text = ""; if ("WZGS".equals(opetype)) { ct1text = "\n"; } else if ("WZHH".equals(opetype)) { ct1text = "\n"; } Cell ct1 = new Cell(new Phrase(ct1text, contentFont)); ct1.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct1); Cell ct11 = new Cell(new Phrase("", contentFont)); ct11.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct11); Cell ct2 = new Cell(new Phrase("", contentFont)); ct2.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct2); Cell ct3 = new Cell(new Phrase("", contentFont)); ct3.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct3); Cell ct31 = new Cell(new Phrase("", contentFont)); ct31.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct31); Cell ct4 = new Cell(new Phrase("", contentFont)); ct4.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct4); Cell ct5 = new Cell(new Phrase("", contentFont)); ct5.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct5); Cell ct6 = new Cell(new Phrase("\n", contentFont)); ct6.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct6); Cell ct7 = new Cell(new Phrase("", contentFont)); ct7.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct7); for (int i = 0; i < czxxList.size(); i++) { List<String> czxxs = czxxList.get(i); if (!czxxs.isEmpty()) { for (int j = 0; j < czxxs.size(); j++) { Cell czCell = new Cell(new Phrase(czxxs.get(j), contentFont)); czCell.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(czCell); } } } } document.add(czxxtable); } else if ("HHQY".equals(opetype)) { // Paragraph czxxTitle = new Paragraph("\n", titleChinese); czxxTitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(czxxTitle); //TABLE Table czxxtable = new Table(9); int czxxwidths[] = { 12, 11, 11, 11, 11, 11, 11, 11, 11 }; czxxtable.setWidths(czxxwidths); czxxtable.setWidth(100); czxxtable.setPadding(3); czxxtable.setBorderWidth(1); czxxtable.setAlignment(Cell.ALIGN_CENTER); List<List<String>> czxxList = (List<List<String>>) dataMap.get("czxxList"); if (czxxList != null && !czxxList.isEmpty()) { Cell ct1 = new Cell(new Phrase("", contentFont)); ct1.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct1); Cell ct2 = new Cell(new Phrase("", contentFont)); ct2.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct2); Cell ct3 = new Cell(new Phrase("", contentFont)); ct3.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct3); Cell ct4 = new Cell(new Phrase("", contentFont)); ct4.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct4); Cell ct5 = new Cell(new Phrase("", contentFont)); ct5.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct5); Cell ct6 = new Cell(new Phrase("", contentFont)); ct6.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct6); Cell ct7 = new Cell(new Phrase("", contentFont)); ct7.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct7); Cell ct8 = new Cell(new Phrase("", contentFont)); ct8.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct8); Cell ct9 = new Cell(new Phrase("", contentFont)); ct9.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct9); for (int i = 0; i < czxxList.size(); i++) { List<String> czxxs = czxxList.get(i); if (!czxxs.isEmpty()) { for (int j = 0; j < czxxs.size(); j++) { Cell czCell = new Cell(new Phrase(czxxs.get(j), contentFont)); czCell.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(czCell); } } } } document.add(czxxtable); } else if ("HZS".equals(opetype)) { // Paragraph czxxTitle = new Paragraph("\n", titleChinese); czxxTitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(czxxTitle); //TABLE Table czxxtable = new Table(5); int czxxwidths[] = { 10, 30, 20, 20, 20 }; czxxtable.setWidths(czxxwidths); czxxtable.setWidth(100); czxxtable.setPadding(3); czxxtable.setBorderWidth(1); czxxtable.setAlignment(Cell.ALIGN_CENTER); List<List<String>> czxxList = (List<List<String>>) dataMap.get("czxxList"); if (czxxList != null && !czxxList.isEmpty()) { Cell ct1 = new Cell(new Phrase("", contentFont)); ct1.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct1); Cell ct2 = new Cell(new Phrase("", contentFont)); ct2.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct2); Cell ct3 = new Cell(new Phrase("", contentFont)); ct3.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct3); Cell ct4 = new Cell(new Phrase("", contentFont)); ct4.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct4); Cell ct5 = new Cell(new Phrase("", contentFont)); ct5.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct5); for (int i = 0; i < czxxList.size(); i++) { List<String> czxxs = czxxList.get(i); if (!czxxs.isEmpty()) { for (int j = 0; j < czxxs.size(); j++) { Cell czCell = new Cell(new Phrase(czxxs.get(j), contentFont)); czCell.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(czCell); } } } } document.add(czxxtable); Paragraph czzep = new Paragraph("\n: " + dataMap.get("regcap") + " () ", contentFont); czzep.setAlignment(Paragraph.ALIGN_LEFT); czzep.setIndentationLeft(100); document.add(czzep); Paragraph czzep1 = new Paragraph("\n ", contentFont); czzep1.setAlignment(Paragraph.ALIGN_LEFT); czzep1.setIndentationLeft(100); document.add(czzep1); Paragraph czzep2 = new Paragraph( "\n ", contentFont); czzep2.setAlignment(Paragraph.ALIGN_RIGHT); document.add(czzep2); } if ("HZS".equals(opetype)) { // Paragraph czxxTitle = new Paragraph("\n", titleChinese); czxxTitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(czxxTitle); //TABLE Table czxxtable = new Table(5); int czxxwidths[] = { 10, 20, 30, 25, 15 }; czxxtable.setWidths(czxxwidths); czxxtable.setWidth(100); czxxtable.setPadding(3); czxxtable.setBorderWidth(1); czxxtable.setAlignment(Cell.ALIGN_CENTER); List<List<String>> czxxList = (List<List<String>>) dataMap.get("hzsList"); if (czxxList != null && !czxxList.isEmpty()) { Cell ct1 = new Cell(new Phrase("", contentFont)); ct1.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct1); Cell ct2 = new Cell(new Phrase("", contentFont)); ct2.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct2); Cell ct3 = new Cell(new Phrase("", contentFont)); ct3.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct3); Cell ct4 = new Cell(new Phrase("", contentFont)); ct4.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct4); Cell ct5 = new Cell(new Phrase("", contentFont)); ct5.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(ct5); for (int i = 0; i < czxxList.size(); i++) { List<String> czxxs = czxxList.get(i); if (!czxxs.isEmpty()) { for (int j = 0; j < czxxs.size(); j++) { Cell czCell = new Cell(new Phrase(czxxs.get(j), contentFont)); czCell.setHorizontalAlignment(Element.ALIGN_CENTER); czxxtable.addCell(czCell); } } } } document.add(czxxtable); Paragraph czzep = new Paragraph("\n: " + dataMap.get("cyzs") + " () ", contentFont); czzep.setAlignment(Paragraph.ALIGN_LEFT); czzep.setIndentationLeft(40); document.add(czzep); Paragraph czzep1 = new Paragraph(" " + dataMap.get("nmcy") + " () " + dataMap.get("nmcyrate") + " % ", contentFont); czzep1.setAlignment(Paragraph.ALIGN_LEFT); czzep1.setIndentationLeft(100); document.add(czzep1); Paragraph czzep2 = new Paragraph(" " + dataMap.get("frcy") + " () " + dataMap.get("frcyrate") + " %", contentFont); czzep2.setAlignment(Paragraph.ALIGN_LEFT); czzep2.setIndentationLeft(100); document.add(czzep2); Paragraph czzep3 = new Paragraph( " ", contentFont); czzep3.setAlignment(Paragraph.ALIGN_LEFT); czzep3.setIndentationLeft(40); document.add(czzep3); Paragraph czzep4 = new Paragraph("\n ", contentFont); czzep4.setAlignment(Paragraph.ALIGN_LEFT); czzep4.setIndentationLeft(100); document.add(czzep4); Paragraph czzep5 = new Paragraph( "\n ", contentFont); czzep4.setAlignment(Paragraph.ALIGN_RIGHT); document.add(czzep4); } //() Paragraph cwfzrTitle = new Paragraph("\n", titleChinese); cwfzrTitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(cwfzrTitle); //TABLE Table cwfzrtable = new Table(4); int cwfzrwidths[] = { 20, 30, 20, 30 }; cwfzrtable.setWidths(cwfzrwidths); cwfzrtable.setWidth(100); cwfzrtable.setPadding(3); cwfzrtable.setBorderWidth(1); cwfzrtable.setAlignment(Cell.ALIGN_CENTER); Map<String, String> cwfzrMap = (Map<String, String>) dataMap.get("cwfzrMap"); Cell cwfzr1 = new Cell(new Phrase(" ", contentFont)); cwfzr1.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr1); Cell cwfzr2 = new Cell(new Phrase(cwfzrMap == null ? "" : cwfzrMap.get("name"), contentFont)); cwfzr2.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr2); Cell cwfzr3 = new Cell(new Phrase("", contentFont)); cwfzr3.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr3); Cell cwfzr4 = new Cell(new Phrase(cwfzrMap == null ? "" : cwfzrMap.get("tel"), contentFont)); cwfzr4.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr4); Cell cwfzr5 = new Cell(new Phrase("", contentFont)); cwfzr5.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr5); Cell cwfzr6 = new Cell(new Phrase(cwfzrMap == null ? "" : cwfzrMap.get("mobile"), contentFont)); cwfzr6.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr6); Cell cwfzr7 = new Cell(new Phrase("", contentFont)); cwfzr7.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr7); Cell cwfzr8 = new Cell(new Phrase(cwfzrMap == null ? "" : cwfzrMap.get("email"), contentFont)); cwfzr8.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr8); Cell cwfzr9 = new Cell(new Phrase("", contentFont)); cwfzr9.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr9); Cell cwfzr10 = new Cell(new Phrase(cwfzrMap == null ? "" : cwfzrMap.get("certype"), contentFont)); cwfzr10.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr10); Cell cwfzr11 = new Cell(new Phrase("", contentFont)); cwfzr11.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr11); Cell cwfzr12 = new Cell(new Phrase(cwfzrMap == null ? "" : cwfzrMap.get("cerno"), contentFont)); cwfzr12.setHorizontalAlignment(Element.ALIGN_CENTER); cwfzrtable.addCell(cwfzr12); document.add(cwfzrtable); //() Paragraph llrTitle = new Paragraph("\n", titleChinese); llrTitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(llrTitle); //TABLE Table llrtable = new Table(4); int llrwidths[] = { 20, 30, 20, 30 }; llrtable.setWidths(llrwidths); llrtable.setWidth(100); llrtable.setPadding(3); llrtable.setBorderWidth(1); llrtable.setAlignment(Cell.ALIGN_CENTER); Map<String, String> llrMap = (Map<String, String>) dataMap.get("llrMap"); Cell llr1 = new Cell(new Phrase(" ", contentFont)); llr1.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr1); Cell llr2 = new Cell(new Phrase(llrMap == null ? "" : llrMap.get("name"), contentFont)); llr2.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr2); Cell llr3 = new Cell(new Phrase("", contentFont)); llr3.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr3); Cell llr4 = new Cell(new Phrase(llrMap == null ? "" : llrMap.get("tel"), contentFont)); llr4.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr4); Cell llr5 = new Cell(new Phrase("", contentFont)); llr5.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr5); Cell llr6 = new Cell(new Phrase(llrMap == null ? "" : llrMap.get("mobile"), contentFont)); llr6.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr6); Cell llr7 = new Cell(new Phrase("", contentFont)); llr7.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr7); Cell llr8 = new Cell(new Phrase(llrMap == null ? "" : llrMap.get("email"), contentFont)); llr8.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr8); Cell llr9 = new Cell(new Phrase("", contentFont)); llr9.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr9); Cell llr10 = new Cell(new Phrase(llrMap == null ? "" : llrMap.get("certype"), contentFont)); llr10.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr10); Cell llr11 = new Cell(new Phrase("", contentFont)); llr11.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr11); Cell llr12 = new Cell(new Phrase(llrMap == null ? "" : llrMap.get("cerno"), contentFont)); llr12.setHorizontalAlignment(Element.ALIGN_CENTER); llrtable.addCell(llr12); document.add(llrtable); //() Paragraph wtrTitle = new Paragraph("\n", titleChinese); wtrTitle.setAlignment(Paragraph.ALIGN_CENTER); document.add(wtrTitle); Map<String, String> wtrMap = (Map<String, String>) dataMap.get("wtrMap"); String sqrText = " " + (wtrMap == null ? "" : wtrMap.get("sqr")); Paragraph sqr = new Paragraph(sqrText, contentFont); sqr.setAlignment(Paragraph.ALIGN_LEFT); document.add(sqr); String wtrText = " " + (wtrMap == null ? "" : wtrMap.get("wtr")); Paragraph wtr = new Paragraph(wtrText, contentFont); wtr.setAlignment(Paragraph.ALIGN_LEFT); document.add(wtr); Paragraph wtsx = new Paragraph("\n", contentFont); wtsx.setAlignment(Paragraph.ALIGN_LEFT); document.add(wtsx); String wtText1 = "1 " + (wtrMap == null ? "" : wtrMap.get("entname")) + " "; Paragraph wt1 = new Paragraph(wtText1, contentFont); // wt1.setIndentationLeft(60); document.add(wt1); Paragraph wt2 = new Paragraph(" ", contentFont); // wt2.setIndentationLeft(70); document.add(wt2); Paragraph wt3 = new Paragraph(" __________", contentFont); // wt3.setIndentationLeft(70); document.add(wt3); Paragraph wt4 = new Paragraph("2." + (wtrMap == null ? "" : wtrMap.get("qx1")) + " ", contentFont); // wt4.setIndentationLeft(60); document.add(wt4); Paragraph wt5 = new Paragraph( "3." + (wtrMap == null ? "" : wtrMap.get("qx2")) + " ", contentFont); // wt5.setIndentationLeft(60); document.add(wt5); Paragraph wt6 = new Paragraph( "4." + (wtrMap == null ? "" : wtrMap.get("qx3")) + " ", contentFont); // wt6.setIndentationLeft(60); document.add(wt6); Paragraph wt7 = new Paragraph( "5." + (wtrMap == null ? "" : wtrMap.get("qx4")) + "\n", contentFont); // wt7.setIndentationLeft(60); document.add(wt7); Paragraph wt8 = new Paragraph( " " + (wtrMap == null ? "" : wtrMap.get("confrom")) + " " + (wtrMap == null ? "" : wtrMap.get("conto")) + " \n ", contentFont); wt8.setAlignment(Paragraph.ALIGN_LEFT); document.add(wt8); //TABLE Table wtrtable = new Table(2); int[] wtrwidths = { 50, 50 }; wtrtable.setWidths(wtrwidths); wtrtable.setWidth(100); wtrtable.setPadding(3); wtrtable.setBorderWidth(1); wtrtable.setAlignment(Cell.ALIGN_CENTER); Cell wtrc1 = new Cell(new Phrase("", contentFont)); wtrc1.setRowspan(3); wtrc1.setHorizontalAlignment(Element.ALIGN_CENTER); wtrtable.addCell(wtrc1); Cell wtrc2 = new Cell(new Phrase(" ", contentFont)); wtrc2.setHorizontalAlignment(Element.ALIGN_LEFT); wtrtable.addCell(wtrc2); String telText = "" + (wtrMap == null ? "" : wtrMap.get("tel")); Cell wtrc3 = new Cell(new Phrase(telText, contentFont)); wtrc3.setHorizontalAlignment(Element.ALIGN_LEFT); wtrtable.addCell(wtrc3); String mobileText = "" + (wtrMap == null ? "" : wtrMap.get("mobile")); Cell wtrc4 = new Cell(new Phrase(mobileText, contentFont)); wtrc4.setHorizontalAlignment(Element.ALIGN_LEFT); wtrtable.addCell(wtrc4); document.add(wtrtable); Paragraph wt9 = new Paragraph("\n ", contentFont); wt9.setAlignment(Paragraph.ALIGN_LEFT); document.add(wt9); Paragraph wt10 = new Paragraph("\n" + (wtrMap == null ? "" : wtrMap.get("condate")) + " ", contentFont); wt10.setAlignment(Paragraph.ALIGN_RIGHT); document.add(wt10); // if ("WZGS".equals(opetype) || "WZHH".equals(opetype) || "WGJY".equals(opetype)) { Paragraph wtsTitle1 = new Paragraph("\n", titleChinese); wtsTitle1.setAlignment(Paragraph.ALIGN_CENTER); document.add(wtsTitle1); Paragraph wtsTitle2 = new Paragraph("", titleChinese); wtsTitle2.setAlignment(Paragraph.ALIGN_CENTER); document.add(wtsTitle2); Map<String, String> sdMap = (Map<String, String>) dataMap.get("sdMap"); Paragraph sdsq = new Paragraph(" ", contentFont); sdsq.setAlignment(Paragraph.ALIGN_LEFT); document.add(sdsq); String sdbsqText = " " + (sdMap == null ? "" : sdMap.get("name")); Paragraph sdbsq = new Paragraph(sdbsqText, contentFont); sdbsq.setAlignment(Paragraph.ALIGN_LEFT); document.add(sdbsq); String sqfwText = " " + (sdMap == null ? "" : sdMap.get("name")) + " "; Paragraph sqfw = new Paragraph(sqfwText, contentFont); sqfw.setAlignment(Paragraph.ALIGN_LEFT); document.add(sqfw); Paragraph sqfw2 = new Paragraph( "_______", contentFont); sqfw2.setAlignment(Paragraph.ALIGN_LEFT); sqfw2.setIndentationLeft(60); document.add(sqfw2); //TABLE Table sdstable = new Table(4); int[] sdswidths = { 20, 30, 20, 30 }; sdstable.setWidths(sdswidths); sdstable.setWidth(100); sdstable.setPadding(3); sdstable.setBorderWidth(1); sdstable.setAlignment(Cell.ALIGN_CENTER); Cell sd1 = new Cell(new Phrase("", contentFont)); sd1.setHorizontalAlignment(Element.ALIGN_CENTER); sdstable.addCell(sd1); Cell sd2 = new Cell(new Phrase(sdMap == null ? "" : sdMap.get("addr"), contentFont)); sd2.setHorizontalAlignment(Element.ALIGN_CENTER); sdstable.addCell(sd2); Cell sd3 = new Cell(new Phrase("", contentFont)); sd3.setHorizontalAlignment(Element.ALIGN_CENTER); sdstable.addCell(sd3); Cell sd4 = new Cell(new Phrase(sdMap == null ? "" : sdMap.get("postalcode"), contentFont)); sd4.setHorizontalAlignment(Element.ALIGN_CENTER); sdstable.addCell(sd4); Cell sd5 = new Cell(new Phrase("", contentFont)); sd5.setHorizontalAlignment(Element.ALIGN_CENTER); sdstable.addCell(sd5); Cell sd6 = new Cell(new Phrase(sdMap == null ? "" : sdMap.get("linkman"), contentFont)); sd6.setHorizontalAlignment(Element.ALIGN_CENTER); sdstable.addCell(sd6); Cell sd7 = new Cell(new Phrase("", contentFont)); sd7.setHorizontalAlignment(Element.ALIGN_CENTER); sdstable.addCell(sd7); Cell sd8 = new Cell(new Phrase(sdMap == null ? "" : sdMap.get("email"), contentFont)); sd8.setHorizontalAlignment(Element.ALIGN_CENTER); sdstable.addCell(sd8); Cell sd9 = new Cell(new Phrase("\n", contentFont)); sd9.setRowspan(2); sd9.setHorizontalAlignment(Element.ALIGN_CENTER); sdstable.addCell(sd9); Cell sd10 = new Cell( new Phrase(" " + (sdMap == null ? "" : sdMap.get("tel")), contentFont)); sd10.setColspan(3); sd10.setHorizontalAlignment(Element.ALIGN_LEFT); sdstable.addCell(sd10); Cell sd11 = new Cell( new Phrase(" " + (sdMap == null ? "" : sdMap.get("mobtel")), contentFont)); sd11.setColspan(3); sd11.setHorizontalAlignment(Element.ALIGN_LEFT); sdstable.addCell(sd11); document.add(sdstable); Paragraph sds1 = new Paragraph( "\n ", contentFont); sds1.setAlignment(Paragraph.ALIGN_LEFT); sds1.setIndentationLeft(100); document.add(sds1); Paragraph sds2 = new Paragraph("\n ", contentFont); sds2.setAlignment(Paragraph.ALIGN_RIGHT); document.add(sds2); Paragraph remark = new Paragraph( " ", contentFont); remark.setIndentationLeft(60); remark.setAlignment(Paragraph.ALIGN_LEFT); document.add(remark); } } } catch (Exception e) { e.printStackTrace(); logger.debug(e); } //PDF document.close(); }
From source file:com.matic.sudoku.io.export.PdfExporter.java
License:Open Source License
/** * Write board contents to PDF/*from w ww. j a v a 2s .c om*/ * * @param board The board to write * @param targetFile Target output PDF file to write to * @throws DocumentException If any PDF library error occurs * @throws IOException If any error occurs while writing the PDF file */ public void write(final Board board, final File targetFile) throws DocumentException, IOException { //FontFactory.defaultEmbedding = true; final Document document = new Document(PageSize.A4, DOCUMENT_MARGIN, DOCUMENT_MARGIN, DOCUMENT_MARGIN, DOCUMENT_MARGIN); final OutputStream outputStream = new FileOutputStream(targetFile); final PdfWriter pdfWriter = PdfWriter.getInstance(document, outputStream); document.open(); final PdfContentByte contentByte = pdfWriter.getDirectContent(); final Rectangle pageSize = document.getPageSize(); final float pageHeight = pageSize.getHeight(); final float pageWidth = pageSize.getWidth(); contentByte.saveState(); final Graphics2D g2d = contentByte.createGraphics(pageWidth, pageHeight); board.setSize((int) pageWidth, (int) pageWidth); board.handleResized(); final int puzzleWidth = board.getPuzzleWidth(); //Calculate x and y coordinates for centered game board final int originX = (int) (pageWidth / 2 - (puzzleWidth / 2)); final int originY = (int) ((pageHeight / 2) - (puzzleWidth / 2)); board.setDrawingOrigin(originX, originY); board.draw(g2d, true, false); contentByte.restoreState(); g2d.dispose(); document.close(); outputStream.flush(); outputStream.close(); }
From source file:com.matic.sudoku.io.export.PdfExporter.java
License:Open Source License
/** * Generate and export multiple boards to PDF * //from w w w.j av a2 s.co m * @param exporterParameters PDF exporter parameters * @param generator Generator used for puzzle generation * @throws IOException If any PDF library error occurs * @throws DocumentException If any error occurs while writing the PDF file */ public void write(final ExporterParameters exporterParameters, final Generator generator, final int boardDimension) throws IOException, DocumentException { //How many PDF-pages are needed to fit all puzzles using the desired page formatting final int optimisticPageCount = exporterParameters.getPuzzleCount() / exporterParameters.getPuzzlesPerPage(); final int pageCount = exporterParameters.getPuzzleCount() % exporterParameters.getPuzzlesPerPage() > 0 ? optimisticPageCount + 1 : optimisticPageCount; final Document document = new Document(PageSize.A4, DOCUMENT_MARGIN, DOCUMENT_MARGIN, DOCUMENT_MARGIN, DOCUMENT_MARGIN); final OutputStream outputStream = new FileOutputStream(exporterParameters.getOutputPath()); final PdfWriter pdfWriter = PdfWriter.getInstance(document, outputStream); final String creator = Sudoku.getNameAndVersion(); document.addSubject("Puzzles generated by " + creator); document.addCreator(creator); document.open(); final Rectangle pageSize = document.getPageSize(); final int pageHeight = (int) pageSize.getHeight(); final int pageWidth = (int) pageSize.getWidth(); //Get appropriate number of rows and columns needed to divide a page into final int horizontalDimension = exporterParameters.getPuzzlesPerPage() > 2 ? 2 : 1; final int verticalDimension = exporterParameters.getPuzzlesPerPage() > 1 ? 2 : 1; //Get available space for each board (with margins) on a page final int boardWidth = pageWidth / horizontalDimension; final int boardHeight = pageHeight / verticalDimension; final Board board = new Board(boardDimension, SymbolType.DIGITS); board.setSize(boardWidth, boardHeight); board.handleResized(); //Get available height/width on a page for a puzzle itself final int puzzleWidth = board.getPuzzleWidth(); int puzzlesPrinted = 0; final PdfContentByte contentByte = pdfWriter.getDirectContent(); final Grading[] gradings = getGeneratedPuzzleGradings(exporterParameters.getGradings(), exporterParameters.getOrdering(), exporterParameters.getPuzzleCount()); pageCounter: for (int page = 0; page < pageCount; ++page) { document.newPage(); final Graphics2D g2d = contentByte.createGraphics(pageWidth, pageHeight); for (int y = 0, i = 0; i < verticalDimension; y += boardHeight, ++i) { for (int x = 0, j = 0; j < horizontalDimension; x += boardWidth, ++j) { //Check whether to generate a new puzzle or print empty boards final ExportMode exportMode = exporterParameters.getExportMode(); final Grading selectedGrading = exportMode == ExportMode.BLANK ? null : gradings[puzzlesPrinted]; if (exportMode == ExportMode.GENERATE_NEW) { board.setPuzzle(generatePuzzle(generator, getSymmetry(exporterParameters.getSymmetries()), selectedGrading)); board.recordGivens(); } //Calculate puzzle drawing origins final int originX = x + (int) (boardWidth / 2 - (puzzleWidth / 2)); final int originY = y + (int) (boardHeight / 2) - (puzzleWidth / 2); board.setSymbolType(getSymbolType(exporterParameters.getSymbolType())); board.setDrawingOrigin(originX, originY); board.draw(g2d, false, false); drawLegend(g2d, getLegendString(exporterParameters.isShowNumbering(), exporterParameters.isShowGrading(), puzzlesPrinted + 1, selectedGrading), originX, originY, puzzleWidth); if (++puzzlesPrinted == exporterParameters.getPuzzleCount()) { //We've printed all puzzles, break g2d.dispose(); break pageCounter; } } } g2d.dispose(); } document.close(); outputStream.flush(); outputStream.close(); }
From source file:com.mycompany.controller.catalog.PDFController.java
License:Apache License
@RequestMapping(value = ("/createPDF"), method = RequestMethod.GET) public void doDownload(HttpServletRequest request, HttpServletResponse response) throws IOException { try {//from w w w . j a va 2 s . co m BroadleafRequestContext context = BroadleafRequestContext.getBroadleafRequestContext(); Document document = new Document(PageSize.A4, 36, 72, 108, 180); PdfWriter.getInstance(document, new FileOutputStream("C:\\Users\\Bharath\\Desktop\\bharath1.pdf")); document.open(); Map<String, String[]> map = (Map<String, String[]>) context.getRequest().getParameterMap(); Iterator<Map.Entry<String, String[]>> it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry<String, String[]> pairs = (Map.Entry<String, String[]>) it.next(); document.add(new Paragraph(Arrays.toString(pairs.getValue()))); it.remove(); // avoids a ConcurrentModificationException } document.close(); System.out.println("converted to HTML"); } catch (Exception e) { e.printStackTrace(); } File downloadFile = new File("C:\\Users\\Bharath\\Desktop\\bharath1.pdf"); FileInputStream inputStream = new FileInputStream(downloadFile); response.setContentType("application/pdf"); response.setContentLength((int) downloadFile.length()); // set headers for the response String headerKey = "Content-Disposition"; String headerValue = String.format("attachment; filename=\"%s\"", downloadFile.getName()); response.setHeader(headerKey, headerValue); OutputStream outStream = response.getOutputStream(); System.out.println("9"); byte[] buffer = new byte[BUFFER_SIZE]; int bytesRead = -1; System.out.println("10"); // write bytes read from the input stream into the output stream while ((bytesRead = inputStream.read(buffer)) != -1) { outStream.write(buffer, 0, bytesRead); } inputStream.close(); outStream.close(); response.flushBuffer(); boolean success = (new File("C:\\Users\\Bharath\\Desktop\\bharath1.pdf")).delete(); }
From source file:com.neu.cloud.Controller.FifthUseCaseController.java
public void generateReports(List<ArrayList<User>> user1ReportList) throws DocumentException, FileNotFoundException { Date date;//from w w w .j a v a 2 s . co m String dateForFolder = String.valueOf(new Date()); for (ArrayList<User> users : user1ReportList) { date = new Date(); Document document = new Document(PageSize.A4, 50, 50, 50, 50); // String path = System.getProperty("user.dir") + "\\reports\\"; String path = System.getProperty("user.dir") + "//"; String fileName = "ITextTest" + date.getTime() + ".pdf"; // PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(path + "ITextTest" + date.getTime() + ".pdf")); PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(path + fileName)); document.open(); Table table = new Table(4); table.addCell("userID"); table.addCell("username"); table.addCell("password"); table.addCell("productName"); boolean flag = false; for (User u : users) { System.out.print("1"); System.out.print("1"); System.out.print("1"); System.out.print("1"); if (flag) continue; flag = true; table.addCell(String.valueOf(u.getUserID())); table.addCell(u.getUsername()); table.addCell(u.getPassword()); table.addCell(u.getProductName()); } document.add(table); document.close(); uploadInS3(path, fileName, dateForFolder); File file = new File(path + fileName); if (file.delete()) { System.out.println(file.getName() + " is deleted!"); } else { System.out.println("Delete operation is failed."); } } }
From source file:com.neu.cloud.Controller.FirstUseCaseController.java
public void generateReports(List<ArrayList<User>> user1ReportList) throws DocumentException, FileNotFoundException { Date date;//from w w w. ja va 2s . co m String dateForFolder = String.valueOf(new Date()); for (ArrayList<User> users : user1ReportList) { date = new Date(); Document document = new Document(PageSize.A4, 50, 50, 50, 50); // String path = System.getProperty("user.dir") + "\\reports\\"; String path = System.getProperty("user.dir") + "//"; String fileName = "ITextTest" + date.getTime() + ".pdf"; // PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(path + "ITextTest" + date.getTime() + ".pdf")); PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(path + fileName)); document.open(); Table table = new Table(4); table.addCell("userID"); table.addCell("username"); table.addCell("password"); table.addCell("productName"); for (User u : users) { table.addCell(String.valueOf(u.getUserID())); table.addCell(u.getUsername()); table.addCell(u.getPassword()); table.addCell(u.getProductName()); } document.add(table); document.close(); uploadInS3(path, fileName, dateForFolder); File file = new File(path + fileName); if (file.delete()) { System.out.println(file.getName() + " is deleted!"); } else { System.out.println("Delete operation is failed."); } } }