From f3445e5babad91627609b898dbc9b5ed844d7cdd Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期二, 16 七月 2024 18:09:18 +0800 Subject: [PATCH] zjh 2024/07/16-1 --- ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java | 381 ++++++++++++++++++++++++----------------------------- 1 files changed, 174 insertions(+), 207 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java index da10175..d07d1c7 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java @@ -71,15 +71,16 @@ private LtkjHysqdService ltkjHysqdService; @Autowired private LtkjGetexamreportinfoService ltkjGetexamreportinfoService; - @Value("${path.filePath}") + @Value ("${path.filePath}") private String value; - @Value("${path.reportServer}") + @Value ("${path.reportServer}") private String urlValue; // private static final /** * 閫氳繃his API璇锋眰鑾峰彇鏁版嵁鐢熸垚PDF + * * @param pdfInfoMap * @param params * @param tjOrder @@ -88,7 +89,7 @@ * @deprecated 鏈夋暟鎹悓姝ヤ笉鍦ㄨ皟鐢ㄦ帴鍙h幏鍙栨暟鎹洿鎺ユ煡鏁版嵁搴撴嬁鏁版嵁鐢熸垚 */ @Deprecated - public AjaxResult execHisRequest(HashMap<String, Object> pdfInfoMap, Map<String, Object> params,TjOrder tjOrder,TjReportTemplate tjReportTemplate) { + public AjaxResult execHisRequest(HashMap<String, Object> pdfInfoMap, Map<String, Object> params, TjOrder tjOrder, TjReportTemplate tjReportTemplate) { List<Map<String, Object>> list; String hisRegistrationId = params.get("his_registration_id").toString(); AjaxResult getlabreportinfo = apiGetMethodService.getHISDataNew("Getlabreportinfo", params); @@ -138,7 +139,7 @@ putData(obj, getexamreportinfo, "妫�鏌ユ姤鍛�"); jsonArray.put(obj); // System.out.println(JSONUtil.toJsonStr(jsonArray)); - if (makePDF(hisRegistrationId, jsonArray,tjOrder,tjReportTemplate)) { + if (makePDF(hisRegistrationId, jsonArray, tjOrder, tjReportTemplate)) { log.info("宸茬敓鎴愭姤鍛�"); return AjaxResult.success("宸茬敓鎴愭姤鍛婏紒鍙洿鎺ョ偣鍑婚瑙堬紒"); } else return AjaxResult.error(); @@ -168,7 +169,7 @@ } } - public AjaxResult hisPDF(TjOrder tjOrder,TjCustomer customer,TjReportTemplate tjReportTemplate) throws DocumentException { + public AjaxResult hisPDF(TjOrder tjOrder, TjCustomer customer, TjReportTemplate tjReportTemplate) throws DocumentException { HashMap<String, Object> pdfChangGui = makePDFInfo(tjOrder, customer, tjReportTemplate); Document document = (Document) pdfChangGui.get("document"); PdfCopy copy = (PdfCopy) pdfChangGui.get("copy"); @@ -177,7 +178,7 @@ Document document1 = new Document(PageSize.A4); PdfWriter pdfWriter = null; try { - pdfWriter = PdfWriter.getInstance(document1, byteArrayOutputStream1); + pdfWriter = PdfWriter.getInstance(document1, byteArrayOutputStream1); } catch (DocumentException e) { e.printStackTrace(); return AjaxResult.error(); @@ -186,7 +187,7 @@ document1.open(); // 闈炲寲楠岄」鐩姤鍛� Map<TjOrderRemark, List<TjPdfVO>> printReport = new HashMap<>(); - notHuaYanData(tjOrder.getTjNumber(), printReport,tjOrder,customer); + notHuaYanData(tjOrder.getTjNumber(), printReport, tjOrder, customer); try { notHuaYanTable(document1, printReport); } catch (DocumentException e) { @@ -227,14 +228,14 @@ return AjaxResult.error(); } String outputFileName1 = customer.getCusId() + tjOrder.getTjNumber() + customer.getCusName() + "_鎶ュ憡.pdf"; - savePDFFile(outputFileName1,tjOrder, customer, finalOutPut); + savePDFFile(outputFileName1, tjOrder, customer, finalOutPut); TjReport tjReport = new TjReport(); String tjNumber = tjOrder.getTjNumber(); tjReport.setTjNumber(String.valueOf(tjNumber)); tjReport.setPath(urlValue + outputFileName1); // 鏂囦欢閰嶇疆 // String outputPath1 = "/Users/chacca/寮�鍙戠浉鍏�/浠g爜/"; - String outputPath1 = value+"\\"; + String outputPath1 = value + "\\"; String pdfBinary = getPDFBinary(outputPath1 + outputFileName1); tjReport.setReport(pdfBinary); tjReport.setType("浣撴鎶ュ憡"); @@ -252,6 +253,7 @@ /** * 鐢熸垚妫�鏌ヨ〃鏍� + * * @param tjOrder * @return */ @@ -283,8 +285,8 @@ String sqrxm = getexamreportinfo.getSqrxm(); String zyh = ""; String ch = ""; - String footer = "鐢宠浜猴細"+sqrxm + " 瀹℃牳鍖诲笀锛�"+shysqm+" 鍖诲笀绛惧悕锛�"+bgysqm; - ByteArrayOutputStream outputStream = makeJcPDFByteArrayStream(xm, xb, nl, jcks, zyh, ch, sjks, jcsb, jch, jcxm, ms, ts, null,footer); + String footer = "鐢宠浜猴細" + sqrxm + " 瀹℃牳鍖诲笀锛�" + shysqm + " 鍖诲笀绛惧悕锛�" + bgysqm; + ByteArrayOutputStream outputStream = makeJcPDFByteArrayStream(xm, xb, nl, jcks, zyh, ch, sjks, jcsb, jch, jcxm, ms, ts, null, footer); jianchas.add(outputStream); } return jianchas; @@ -292,14 +294,15 @@ /** * PDF鏂囦欢瀛樺偍鑷虫湰鍦� + * * @param tjOrder * @param customer * @param finalOutPut */ - private void savePDFFile(String outputFileName1,TjOrder tjOrder, TjCustomer customer, ByteArrayOutputStream finalOutPut) { + private void savePDFFile(String outputFileName1, TjOrder tjOrder, TjCustomer customer, ByteArrayOutputStream finalOutPut) { // 鏂囦欢閰嶇疆 // String outputPath1 = "/Users/chacca/寮�鍙戠浉鍏�/浠g爜/"; - String outputPath1 = value+"\\"; + String outputPath1 = value + "\\"; File file = new File(outputPath1 + outputFileName1); BufferedOutputStream outputStream = null; try { @@ -316,12 +319,13 @@ /** * 濉厖妫�楠岃〃鏍兼暟鎹� + * * @param document1 * @param map * @throws DocumentException */ private static void makeHisJianYanTable(Document document1, HashMap<String, Object> map) throws DocumentException { - if (!map.isEmpty()){ + if (!map.isEmpty()) { String[] titles = new String[]{"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅", "鍙傝�冭寖鍥�"}; float[] titlesWidth = new float[]{120, 120, 120, 120}; for (Map.Entry<String, Object> entry : map.entrySet()) { @@ -329,14 +333,14 @@ HashMap<String, Object> entryValue = (HashMap<String, Object>) entry.getValue(); HashSet<String> jyys = (HashSet<String>) entryValue.get("jyys"); ArrayList<List<String>> lists = (ArrayList<List<String>>) entryValue.get("data"); - addJianYanTable(document1,titleName,titles,titlesWidth,lists); + addJianYanTable(document1, titleName, titles, titlesWidth, lists); Font doctorFonts = PdfUtils.setFont(9); String doctors = ""; for (String s : jyys) { - doctors+=s+"銆�"; + doctors += s + "銆�"; } String substring = doctors.substring(0, doctors.length() - 1); - Paragraph df = PdfUtils.setParagraph(doctorFonts, "妫�楠屽尰甯堬細"+substring); + Paragraph df = PdfUtils.setParagraph(doctorFonts, "妫�楠屽尰甯堬細" + substring); df.setAlignment(Element.ALIGN_RIGHT); document1.add(df); //鍒嗗壊绾� @@ -348,156 +352,156 @@ /** * 闈炲寲楠岄」鐩〃鏍煎~鍏� + * * @param document1 * @param printReport * @throws DocumentException */ private void notHuaYanTable(Document document1, Map<TjOrderRemark, List<TjPdfVO>> printReport) throws DocumentException { for (Map.Entry<TjOrderRemark, List<TjPdfVO>> entry : printReport.entrySet()) { - List<TjPdfVO> value = entry.getValue(); LambdaQueryWrapper<TjProject> wqqq = new LambdaQueryWrapper<>(); wqqq.eq(TjProject::getProId, entry.getKey().getProId()); TjProject one11 = projectService.getOne(wqqq); //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛� - if (null != one11 && "N".equals(one11.getNeedReport())) { - continue; - } - String titleName = null; - if (null != one11 && "1".equals(one11.getResultType())) { - titleName = one11.getProName(); - // TODO 鍗曚綅 - // 璁剧疆鏍囬瀛椾綋鏍峰紡 - Font titleFonts = PdfUtils.setFont(9); - Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName); - String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉","鍗曚綅"}; - // 鑾峰彇鍒楄〃鏁版嵁 - //璁剧疆琛ㄥご瀛椾綋鏍峰紡 - Font headFont = PdfUtils.setFont(9); - // 璁剧疆姝f枃瀛椾綋鏍峰紡锛�12鍙� - Font textFont = PdfUtils.setFont(9); - //鍒涘缓琛ㄦ牸 灏嗚〃澶村瓧浣撳拰姝f枃瀛椾綋鏀捐繘鍘� - PdfPTable table = PdfUtils.setTable2(headFont, textFont, titles, value); - document1.add(paragraph); - document1.add(table); - //鍒ゆ柇澶囨敞鏄惁涓虹┖ 绌轰笉鑳芥樉绀簄ull - if (entry.getKey().getRemark() == null) { - entry.getKey().setRemark(""); - } - String remark = "澶囨敞锛�" + entry.getKey().getRemark(); - if (entry.getKey().getRemark().length() > 50) { - int j = 0; - for (int i = 0; i < remark.length() / 50; i++) { - String substring = remark.substring(j, j + 50); - Font remarkFonts = PdfUtils.setFont(9); - Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring); - document1.add(pp); - j = j + 50; - } - if (remark.length() % 50 != 0) { - String substring = remark.substring((remark.length() / 50) * 50, remark.length() - 1); - Font remarkFonts = PdfUtils.setFont(9); - Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring); - document1.add(pp); - } - } else { - Font remarkFonts = PdfUtils.setFont(9); - Paragraph pp = PdfUtils.setParagraph(remarkFonts, remark); - document1.add(pp); - } - //鍒ゆ柇涓绘鍖诲笀鏄惁涓虹┖ 绌轰笉鑳芥樉绀簄ull - if (null != entry.getKey().getDoctorName() && null != userService.getById(entry.getKey().getDoctorName())) { - //涓绘鍖诲笀 - String doctorName = "涓绘鍖诲笀锛�" + userService.getById(entry.getKey().getDoctorName()).getNickName(); - Font doctorFonts = PdfUtils.setFont(9); - Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName); - df.setAlignment(Element.ALIGN_RIGHT); - document1.add(df); - } else { - String doctorName = "涓绘鍖诲笀锛�" + "鏃�"; - Font doctorFonts = PdfUtils.setFont(9); - Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName); - df.setAlignment(Element.ALIGN_RIGHT); - document1.add(df); - } - //鍒嗗壊绾� - LineSeparator objectName = new LineSeparator(); - document1.add(objectName); - } else { - if (null != one11) { + if (null != one11 && "Y".equals(one11.getNeedReport())) { + List<TjPdfVO> value = entry.getValue(); + String titleName = null; + if (null != one11 && "1".equals(one11.getResultType())) { titleName = one11.getProName(); - } else { - titleName = entry.getKey().getProName(); - } - // 璁剧疆鏍囬瀛椾綋鏍峰紡 - Font titleFonts = PdfUtils.setFont(9); - Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName); - String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅", "鍙傝�冭寖鍥�"}; - // 鑾峰彇鍒楄〃鏁版嵁 - //璁剧疆琛ㄥご瀛椾綋鏍峰紡 - Font headFont = PdfUtils.setFont(9); - // 璁剧疆姝f枃瀛椾綋鏍峰紡锛�12鍙� - Font textFont = PdfUtils.setFont(9); - //鍒涘缓琛ㄦ牸 灏嗚〃澶村瓧浣撳拰姝f枃瀛椾綋鏀捐繘鍘� - PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value); - document1.add(paragraph); - document1.add(table); - //鍒ゆ柇澶囨敞鏄惁涓虹┖ 绌轰笉鑳芥樉绀簄ull - if (entry.getKey().getRemark() == null) { - entry.getKey().setRemark(""); - } - String remark = "澶囨敞锛�" + entry.getKey().getRemark(); - if (entry.getKey().getRemark().length() > 50) { - int j = 0; - for (int i = 0; i < remark.length() / 50; i++) { - String substring = remark.substring(j, j + 50); - Font remarkFonts = PdfUtils.setFont(9); - Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring); - document1.add(pp); - j = j + 50; + // TODO 鍗曚綅 + // 璁剧疆鏍囬瀛椾綋鏍峰紡 + Font titleFonts = PdfUtils.setFont(9); + Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName); + String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"}; + // 鑾峰彇鍒楄〃鏁版嵁 + //璁剧疆琛ㄥご瀛椾綋鏍峰紡 + Font headFont = PdfUtils.setFont(9); + // 璁剧疆姝f枃瀛椾綋鏍峰紡锛�12鍙� + Font textFont = PdfUtils.setFont(9); + //鍒涘缓琛ㄦ牸 灏嗚〃澶村瓧浣撳拰姝f枃瀛椾綋鏀捐繘鍘� + PdfPTable table = PdfUtils.setTable2(headFont, textFont, titles, value); + document1.add(paragraph); + document1.add(table); + //鍒ゆ柇澶囨敞鏄惁涓虹┖ 绌轰笉鑳芥樉绀簄ull + if (entry.getKey().getRemark() == null) { + entry.getKey().setRemark(""); } - if (remark.length() % 50 != 0) { - String substring = remark.substring((remark.length() / 50) * 50, remark.length() - 1); + String remark = "澶囨敞锛�" + entry.getKey().getRemark(); + if (entry.getKey().getRemark().length() > 50) { + int j = 0; + for (int i = 0; i < remark.length() / 50; i++) { + String substring = remark.substring(j, j + 50); + Font remarkFonts = PdfUtils.setFont(9); + Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring); + document1.add(pp); + j = j + 50; + } + if (remark.length() % 50 != 0) { + String substring = remark.substring((remark.length() / 50) * 50, remark.length() - 1); + Font remarkFonts = PdfUtils.setFont(9); + Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring); + document1.add(pp); + } + } else { Font remarkFonts = PdfUtils.setFont(9); - Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring); + Paragraph pp = PdfUtils.setParagraph(remarkFonts, remark); document1.add(pp); } + //鍒ゆ柇涓绘鍖诲笀鏄惁涓虹┖ 绌轰笉鑳芥樉绀簄ull + if (null != entry.getKey().getDoctorName() && null != userService.getById(entry.getKey().getDoctorName())) { + //涓绘鍖诲笀 + String doctorName = "涓绘鍖诲笀锛�" + userService.getById(entry.getKey().getDoctorName()).getNickName(); + Font doctorFonts = PdfUtils.setFont(9); + Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName); + df.setAlignment(Element.ALIGN_RIGHT); + document1.add(df); + } else { + String doctorName = "涓绘鍖诲笀锛�" + "鏃�"; + Font doctorFonts = PdfUtils.setFont(9); + Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName); + df.setAlignment(Element.ALIGN_RIGHT); + document1.add(df); + } + //鍒嗗壊绾� + LineSeparator objectName = new LineSeparator(); + document1.add(objectName); } else { - Font remarkFonts = PdfUtils.setFont(9); - Paragraph pp = PdfUtils.setParagraph(remarkFonts, remark); - document1.add(pp); + if (null != one11) { + titleName = one11.getProName(); + } else { + titleName = entry.getKey().getProName(); + } + // 璁剧疆鏍囬瀛椾綋鏍峰紡 + Font titleFonts = PdfUtils.setFont(9); + Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName); + String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"}; + // 鑾峰彇鍒楄〃鏁版嵁 + //璁剧疆琛ㄥご瀛椾綋鏍峰紡 + Font headFont = PdfUtils.setFont(9); + // 璁剧疆姝f枃瀛椾綋鏍峰紡锛�12鍙� + Font textFont = PdfUtils.setFont(9); + //鍒涘缓琛ㄦ牸 灏嗚〃澶村瓧浣撳拰姝f枃瀛椾綋鏀捐繘鍘� + PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value); + document1.add(paragraph); + document1.add(table); + //鍒ゆ柇澶囨敞鏄惁涓虹┖ 绌轰笉鑳芥樉绀簄ull + if (entry.getKey().getRemark() == null) { + entry.getKey().setRemark(""); + } + String remark = "澶囨敞锛�" + entry.getKey().getRemark(); + if (entry.getKey().getRemark().length() > 50) { + int j = 0; + for (int i = 0; i < remark.length() / 50; i++) { + String substring = remark.substring(j, j + 50); + Font remarkFonts = PdfUtils.setFont(9); + Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring); + document1.add(pp); + j = j + 50; + } + if (remark.length() % 50 != 0) { + String substring = remark.substring((remark.length() / 50) * 50, remark.length() - 1); + Font remarkFonts = PdfUtils.setFont(9); + Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring); + document1.add(pp); + } + } else { + Font remarkFonts = PdfUtils.setFont(9); + Paragraph pp = PdfUtils.setParagraph(remarkFonts, remark); + document1.add(pp); + } + //鍒ゆ柇涓绘鍖诲笀鏄惁涓虹┖ 绌轰笉鑳芥樉绀簄ull + if (null != entry.getKey().getDoctorName() && null != userService.getById(entry.getKey().getDoctorName())) { + //涓绘鍖诲笀 + String doctorName = "涓绘鍖诲笀锛�" + userService.getById(entry.getKey().getDoctorName()).getNickName(); + Font doctorFonts = PdfUtils.setFont(9); + Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName); + df.setAlignment(Element.ALIGN_RIGHT); + document1.add(df); + } else { + String doctorName = "涓绘鍖诲笀锛�" + "鏃�"; + Font doctorFonts = PdfUtils.setFont(9); + Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName); + df.setAlignment(Element.ALIGN_RIGHT); + document1.add(df); + } + //鍒嗗壊绾� + LineSeparator objectName = new LineSeparator(); + document1.add(objectName); } - //鍒ゆ柇涓绘鍖诲笀鏄惁涓虹┖ 绌轰笉鑳芥樉绀簄ull - if (null != entry.getKey().getDoctorName() && null != userService.getById(entry.getKey().getDoctorName())) { - //涓绘鍖诲笀 - String doctorName = "涓绘鍖诲笀锛�" + userService.getById(entry.getKey().getDoctorName()).getNickName(); - Font doctorFonts = PdfUtils.setFont(9); - Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName); - df.setAlignment(Element.ALIGN_RIGHT); - document1.add(df); - } else { - String doctorName = "涓绘鍖诲笀锛�" + "鏃�"; - Font doctorFonts = PdfUtils.setFont(9); - Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName); - df.setAlignment(Element.ALIGN_RIGHT); - document1.add(df); - } - //鍒嗗壊绾� - LineSeparator objectName = new LineSeparator(); - document1.add(objectName); } } } - public HashMap<String, Object> makeHisJianYan(TjOrder tjOrder, TjCustomer customer){ + public HashMap<String, Object> makeHisJianYan(TjOrder tjOrder, TjCustomer customer) { // TODO 杩欓噷鍏堜娇鐢ㄦ煡鍏ㄩ儴娴嬭瘯 LambdaQueryWrapper<LtkjHysqd> ltkjHysqdLambdaQueryWrapper = new LambdaQueryWrapper<>(); - ltkjHysqdLambdaQueryWrapper.eq(LtkjHysqd::getTjh,tjOrder.getCardId()); + ltkjHysqdLambdaQueryWrapper.eq(LtkjHysqd::getTjh, tjOrder.getCardId()); List<LtkjHysqd> list = ltkjHysqdService.list(ltkjHysqdLambdaQueryWrapper); // List<LtkjHysqd> list = ltkjHysqdService.list(); HashMap<String, Object> data = new HashMap<>(); for (LtkjHysqd hysqd : list) { LambdaQueryWrapper<LtkjHybgd> ltkjHybgdLambdaQueryWrapper = new LambdaQueryWrapper<>(); - ltkjHybgdLambdaQueryWrapper.eq(LtkjHybgd::getTmh,hysqd.getTmh()); + ltkjHybgdLambdaQueryWrapper.eq(LtkjHybgd::getTmh, hysqd.getTmh()); List<LtkjHybgd> hybgds = ltkjHybgdService.list(ltkjHybgdLambdaQueryWrapper); // 澶х被椤圭洰鍚嶇О String xmmc = hysqd.getXmmc(); @@ -516,7 +520,7 @@ // String jyys = hybgd.getJyys(); //瀹℃牳鍖荤敓 String shysmc = hybgd.getShysmc(); - if (jyjg != null && StrUtil.isNotBlank(jyjg) && fwz != null && StrUtil.isNotBlank(fwz)){ + if (jyjg != null && StrUtil.isNotBlank(jyjg) && fwz != null && StrUtil.isNotBlank(fwz)) { try { String[] fwzs = fwz.split("-"); BigDecimal min = new BigDecimal(fwzs[0]); @@ -530,14 +534,15 @@ // jyjg 澶т簬鑼冨洿鏈�澶у�硷紝娣诲姞涓婄澶� jyjg = jyjg + " 鈫�"; } - } catch (Exception ignored) {} + } catch (Exception ignored) { + } } // LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>(); // queryWrapper.eq(SysUser::getUserName,jyys); // List<SysUser> sysUsers = userService.list(queryWrapper); // if (!sysUsers.isEmpty()) // hashSet.add(sysUsers.get(0).getNickName()); - if(null !=shysmc) hashSet.add(shysmc); + if (null != shysmc) hashSet.add(shysmc); ArrayList<String> strings = new ArrayList<>(); strings.add(jcxm); strings.add(jyjg); @@ -547,8 +552,8 @@ } if (!lists.isEmpty()) { HashMap<String, Object> map = new HashMap<>(); - map.put("data",lists); - map.put("jyys",hashSet); + map.put("data", lists); + map.put("jyys", hashSet); data.put(xmmc, map); } } @@ -557,10 +562,11 @@ /** * 鐢熸垚PDF妯$増浠ュ強鐢ㄦ埛淇℃伅閮ㄥ垎 + * * @param tjOrder * @param reportTemplate */ - public HashMap<String ,Object> makePDFInfo(TjOrder tjOrder,TjCustomer tjCustomer,TjReportTemplate reportTemplate){ + public HashMap<String, Object> makePDFInfo(TjOrder tjOrder, TjCustomer tjCustomer, TjReportTemplate reportTemplate) { String tjNumber = tjOrder.getTjNumber(); String template = reportTemplate.getTemplate(); LambdaQueryWrapper<DictComp> wq111 = new LambdaQueryWrapper<>(); @@ -658,9 +664,9 @@ // 娣诲姞璇︽儏椤� document.newPage(); HashMap<String, Object> map = new HashMap<>(); - map.put("document",document); - map.put("copy",copy); - map.put("stream",finalOutPut); + map.put("document", document); + map.put("copy", copy); + map.put("stream", finalOutPut); return map; } catch (IOException | DocumentException e) { e.printStackTrace(); @@ -668,7 +674,7 @@ } } - public Boolean makePDF(String cardId, JSONArray jsonArray,TjOrder tjOrder,TjReportTemplate reportTemplate) { + public Boolean makePDF(String cardId, JSONArray jsonArray, TjOrder tjOrder, TjReportTemplate reportTemplate) { String tjNumber = tjOrder.getTjNumber(); String template = reportTemplate.getTemplate(); LambdaQueryWrapper<TjCustomer> wq1 = new LambdaQueryWrapper<>(); @@ -776,7 +782,7 @@ document1.open(); // 闈炲寲楠岄」鐩姤鍛� Map<TjOrderRemark, List<TjPdfVO>> printReport = new HashMap<>(); - notHuaYanData(tjNumber, printReport,tjOrder,tjCustomer); + notHuaYanData(tjNumber, printReport, tjOrder, tjCustomer); for (Map.Entry<TjOrderRemark, List<TjPdfVO>> entry : printReport.entrySet()) { List<TjPdfVO> value = entry.getValue(); LambdaQueryWrapper<TjProject> wqqq = new LambdaQueryWrapper<>(); @@ -793,7 +799,7 @@ // 璁剧疆鏍囬瀛椾綋鏍峰紡 Font titleFonts = PdfUtils.setFont(9); Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName); - String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉","鍗曚綅"}; + String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"}; // 鑾峰彇鍒楄〃鏁版嵁 //璁剧疆琛ㄥご瀛椾綋鏍峰紡 Font headFont = PdfUtils.setFont(9); @@ -1034,8 +1040,8 @@ String shysqm = obj.getStr("SHYSQM"); // 鐢宠浜� String sqrxm = obj.getStr("SQRXM"); - String footer = "鐢宠浜猴細"+sqrxm + " 瀹℃牳鍖诲笀锛�"+shysqm+" "+bgysqm; - ByteArrayOutputStream outputStream = makeJcPDFByteArrayStream(xm, xb, nl, jcks, zyh, ch, sjks, jcsb, jch, jcxm, ms, ts, null,footer); + String footer = "鐢宠浜猴細" + sqrxm + " 瀹℃牳鍖诲笀锛�" + shysqm + " " + bgysqm; + ByteArrayOutputStream outputStream = makeJcPDFByteArrayStream(xm, xb, nl, jcks, zyh, ch, sjks, jcsb, jch, jcxm, ms, ts, null, footer); jianchas.add(outputStream); } } @@ -1064,7 +1070,7 @@ String outputFileName1 = userId + tjNumber + tjCustomer.getCusName() + "_鎶ュ憡.pdf"; // 鏂囦欢閰嶇疆 // String outputPath1 = "/Users/chacca/寮�鍙戠浉鍏�/浠g爜/"; - String outputPath1 = value+"\\"; + String outputPath1 = value + "\\"; File file = new File(outputPath1 + outputFileName1); BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(file)); outputStream.write(finalOutPut.toByteArray()); @@ -1098,16 +1104,17 @@ /** * 缁勫悎闈炲寲楠岄」鐩姤鍛婃暟鎹� + * * @param tjNumber * @param printReport * @param one * @param customer */ - private void notHuaYanData(String tjNumber, Map<TjOrderRemark, List<TjPdfVO>> printReport,TjOrder one,TjCustomer customer) { + private void notHuaYanData(String tjNumber, Map<TjOrderRemark, List<TjPdfVO>> printReport, TjOrder one, TjCustomer customer) { LambdaQueryWrapper<TjOrderRemark> wqq = new LambdaQueryWrapper<>(); wqq.eq(TjOrderRemark::getTjNumber, tjNumber); wqq.ne(TjOrderRemark::getDeptId, "241"); - wqq.in(TjOrderRemark::getDeptId, "269", "270", "253", "254", "255", "257", "251", "271"); + wqq.in(TjOrderRemark::getDeptId, "269", "270", "253", "254", "255", "257", "271"); wqq.notIn(TjOrderRemark::getProId, projectService.getNneedReprotProId()); List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.list(wqq); for (TjOrderRemark tjOrderRemark : tjOrderRemarks) { @@ -1118,61 +1125,21 @@ List<TjOrderDetail> tjOrderDetails = tjOrderDetailService.getDetailByOrderIdAndParId(one.getOrderId(), entry.getKey().getProId()); for (TjOrderDetail tjOrderDetail : tjOrderDetails) { TjProject tjProject = projectService.getById(tjOrderDetail.getProId()); - if (null != tjProject) { + if (null != tjProject && tjProject.getNeedReport().equals("Y")) { tjOrderDetail.setProject(tjProject); - } + if (tjOrderDetail.getProject().getProParentId().equals(entry.getKey().getProId())) { - LambdaQueryWrapper<TjStandard> wq6 = new LambdaQueryWrapper<>(); - wq6.eq(TjStandard::getProId, tjOrderDetail.getProId()); - List<TjStandard> list2 = tjStandardService.list(wq6); - if (list2.size() == 0) { - TjStandard s = new TjStandard(); - s.setCompany(" "); - s.setTjStandardLtValue(" "); - s.setTjStandardGtValue(" "); - tjOrderDetail.setStandard(s); - } else if (list2.size() == 1) { - tjOrderDetail.setStandard(list2.get(0)); - } else { - Long cusSex = customer.getCusSex(); - Date cusBrithday = customer.getCusBrithday(); - int age = DateUtil.ageOfNow(cusBrithday); - for (TjStandard tjStandard : list2) { - LambdaQueryWrapper<TjStandard> wq8 = new LambdaQueryWrapper<>(); - if (tjStandard.getTjSex() != null) { - wq8.eq(TjStandard::getTjSex, cusSex); - } - if (tjStandard.getTjType() != null) { - wq8.eq(TjStandard::getTjType, StringUtils.getAgeType(age)); - } - TjStandard standard = tjStandardService.getOne(wq8); - tjOrderDetail.setStandard(standard); - } - } TjPdfVO tjPdfVO = new TjPdfVO(); tjPdfVO.setProName(tjOrderDetail.getProject().getProName()); tjPdfVO.setProResult(tjOrderDetail.getProResult()); tjPdfVO.setExc(tjOrderDetail.getExceptionDesc()); - if (tjOrderDetail.getStandard() != null) { - //鍗曚綅 - if (tjOrderDetail.getStandard().getCompany() == null) { - tjPdfVO.setCompany(" "); - } else { - tjPdfVO.setCompany(tjOrderDetail.getStandard().getCompany()); - } - // TODO 璁剧疆鍗曚綅 - //鏈�澶у�煎拰鏈�灏忓�� - String tjStandardGtValue = tjOrderDetail.getStandard().getTjStandardGtValue(); - String tjStandardLtValue = tjOrderDetail.getStandard().getTjStandardLtValue(); - if (tjStandardGtValue == null) { - tjStandardGtValue = " "; - } - if (tjStandardLtValue == null) { - tjStandardLtValue = " "; - } - tjPdfVO.setStandardValue(tjStandardLtValue + "-" + tjStandardGtValue); + if(null !=tjProject.getProMetering()){ + tjPdfVO.setCompany(tjProject.getProMetering()); + }else { + tjPdfVO.setCompany("/"); } tjPdfVOS.add(tjPdfVO); + } } } printReport.put(entry.getKey(), tjPdfVOS); @@ -1222,7 +1189,6 @@ } /** - * * @param document * @param titleName * @param titles @@ -1301,7 +1267,7 @@ document.add(table); } - private static void addJianYanTable(Document document, String titleName, String[] titles, float[] titlesWidth, ArrayList<List<String >> lists) throws DocumentException { + private static void addJianYanTable(Document document, String titleName, String[] titles, float[] titlesWidth, ArrayList<List<String>> lists) throws DocumentException { Font titleFont = PdfUtils.setFont(9); Paragraph paragraph = new Paragraph(titleName, titleFont); // 璁剧疆鏂囧瓧灞呬腑 @@ -1344,6 +1310,7 @@ /** * 鍒涘缓妫�鏌df + * * @param xm * @param xb * @param nl @@ -1360,7 +1327,7 @@ * @param footer * @return bytearrayoutputstream */ - public static ByteArrayOutputStream makeJcPDFByteArrayStream(String xm, String xb, String nl, String jcks, String zyh, String ch, String sjks, String jcsb, String jch, String jcxm, String ms, String ts, File[] files,String footer) { + public static ByteArrayOutputStream makeJcPDFByteArrayStream(String xm, String xb, String nl, String jcks, String zyh, String ch, String sjks, String jcsb, String jch, String jcxm, String ms, String ts, File[] files, String footer) { try { Document document = new Document(PageSize.A4); ByteArrayOutputStream baos = new ByteArrayOutputStream(); @@ -1528,7 +1495,7 @@ float[] columnWidths = {0.8f, 0.8f, 0.8f, 0.8f, 0.1f, 0.1f, 0.8f, 0.8f, 0.8f, 0.8f}; table2.setWidths(columnWidths); - if(files != null){ + if (files != null) { int imageIndex = 0; while (imageIndex < files.length) { // 绗竴寮犲浘鐗囧崰浣嶇 -- Gitblit v1.8.0