From 79f9fbd9f999e26af3f0bca534d825eb687e092c Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期三, 25 十二月 2024 08:47:24 +0800 Subject: [PATCH] 20241225 --- ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java | 421 +++++++++++++++++++++++++++++++++------------------- 1 files changed, 264 insertions(+), 157 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 2023cc8..5cf465f 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 @@ -30,6 +30,7 @@ import com.ltkj.system.service.ISysDictDataService; import com.ltkj.system.service.ISysUserService; import com.ltkj.web.config.pdfutils.PdfUtils; +import com.ltkj.web.controller.system.SysDeptController; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -109,13 +110,16 @@ private TjOrderRemarkMapper tjOrderRemarkMapper; @Autowired private TjOrderDetailMapper tjOrderDetailMapper; + @Autowired + private SysDeptController sysDeptController; private Integer pdfPage = 0; - private static final int DEFAULT_FONT_SIZE = 10; - private static final int DEFAULT_LITTLE_TITLE_FONT_SIZE = 11; - private static final int DEFAULT_TITLE_FONT_SIZE = 12; - private static final int DEFAULT_ZONGJIAN_FONT_SIZE = 15; + private static int DEFAULT_FONT_SIZE = 10; + private static int DEFAULT_LITTLE_TITLE_FONT_SIZE = 11; + private static int DEFAULT_TITLE_FONT_SIZE = 12; + private static int DEFAULT_ZONGJIAN_FONT_SIZE = 15; + private static String HOSP_NAME; private List<Map<String, Object>> makePDFInfo(HashMap<String, Object> map, AjaxResult ajaxResult, String key) { List<Map<String, Object>> data = null; @@ -156,7 +160,8 @@ int pageSize = 0; try { pdfWriter = PdfWriter.getInstance(document1, byteArrayOutputStream1); - if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ +// if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ + if (true){ String sex = ""; if (customer.getCusSex() != null) { for (SysDictData userSex : sysUserSex) { @@ -166,7 +171,8 @@ } } if (StrUtil.isBlank(sex)) sex = "鏈煡"; - pdfWriter.setPageEvent(new FooterHeaderPageEvent("婢勫悎鐭垮姟灞�涓績鍖婚櫌",customer.getCusName(),tjOrder.getTjNumber(),sex,String.valueOf(DateUtil.ageOfNow(customer.getCusBrithday())),null)); +// pdfWriter.setPageEvent(new FooterHeaderPageEvent("婢勫悎鐭垮姟灞�涓績鍖婚櫌",customer.getCusName(),tjOrder.getTjNumber(),sex,String.valueOf(DateUtil.ageOfNow(customer.getCusBrithday())),null)); + pdfWriter.setPageEvent(new FooterHeaderPageEvent(dictHosp.getHospName(),customer.getCusName(),tjOrder.getTjNumber(),sex,String.valueOf(DateUtil.ageOfNow(customer.getCusBrithday())),null)); pageSize = pdfWriter.getPageNumber(); } } catch (DocumentException e) { @@ -176,7 +182,8 @@ document1.setMargins(70, 70, 40, 40); document1.open(); - if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ +// if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ + if (true){ // 缁勮浣撴妫�鏌ラ」鐩姤鍛� Map<TjOrderRemark, List<TjPdfVO>> printReport = new HashMap<>(); notHuaYanData(tjOrder.getTjNumber(), printReport, tjOrder, customer); @@ -224,7 +231,8 @@ copy.addPage(page); } - if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ +// if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ + if (!true){ List<ByteArrayOutputStream> jianchas = makeHisJianChaTable(tjOrder); // List<ByteArrayOutputStream> jianchas = makeCcgcHisJianChaTable(tjOrder); try { @@ -254,7 +262,8 @@ int pages = pdfReader.getNumberOfPages(); ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); PdfStamper pdfStamper = new PdfStamper(pdfReader, outputStream); - if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ +// if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ + if (!true){ PdfContentByte contentByte; BaseFont baseFont = PdfUtils.createBaseFont(null); for (int i = 2; i <= pages; i++) { @@ -515,8 +524,10 @@ // paragraph = new Paragraph(str+objectMap.get("nr").toString(),defaultFont); // paragraph.setAlignment(Element.ALIGN_LEFT); // document2.add(paragraph); + String content1 = str+objectMap.get("bt").toString().trim()+objectMap.get("nr").toString().trim(); + if (StrUtil.isBlank(content1)) content1 = " 鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"; - paragraph = new Paragraph(str+objectMap.get("bt").toString().trim()+objectMap.get("nr").toString().trim(),defaultFont); + paragraph = new Paragraph(content1,defaultFont); paragraph.setAlignment(Element.ALIGN_LEFT); document2.add(paragraph); } @@ -577,7 +588,10 @@ String str = " "; List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(entry.getKey().toString(),"","",tjOrder.getTjNumber()); for (Map<String, Object> objectMap : maps) { - paragraph = new Paragraph(str+objectMap.get("bt").toString()+objectMap.get("nr").toString(),defaultFont); + String content1 = str+objectMap.get("bt").toString()+objectMap.get("nr").toString(); + if (StrUtil.isBlank(content1)) content1 = " 鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"; + + paragraph = new Paragraph(content1,defaultFont); paragraph.setAlignment(Element.ALIGN_LEFT); document2.add(paragraph); } @@ -691,7 +705,7 @@ cell.setPaddingTop(10); cell.setPaddingBottom(10); // cell.setPhrase(new Phrase("浣曞皬濠�", zongJianFont)); - cell.setPhrase(new Phrase(tjOrder.getCheckDoctor(), zongJianFont)); + cell.setPhrase(new Phrase(sysConfigService.selectConfigByKey("pdf_report_zongjianysname"), zongJianFont)); tableQz.addCell(cell); cell = new PdfPCell(); @@ -856,9 +870,23 @@ return AjaxResult.success(); } - public AjaxResult hisPDFNew2(TjOrder tjOrder, TjCustomer customer, TjReportTemplate tjReportTemplate) throws Exception { + public AjaxResult hisPDFNew2(TjOrder tjOrder, TjCustomer customer, TjReportTemplate tjReportTemplate,TjReportTemplate zongJianYiShiQianMing) throws Exception { + String s1 = sysConfigService.selectConfigByKey("tjreport_font_size_second_page_info"); + String s2 = sysConfigService.selectConfigByKey("tjreport_font_size_second_page_title"); + String s3 = sysConfigService.selectConfigByKey("tjreport_font_size_result_title"); + String s4 = sysConfigService.selectConfigByKey("tjreport_font_size_zongjian"); +// String hospName = sysDeptController.getdangqiandengluyuanqu().get("msg").toString(); + if (StrUtil.isNotBlank(s1) && Integer.parseInt(s1) > 10) DEFAULT_FONT_SIZE = Integer.parseInt(s1); + else DEFAULT_FONT_SIZE = 10; + if (StrUtil.isNotBlank(s2) && Integer.parseInt(s2) > 10) DEFAULT_LITTLE_TITLE_FONT_SIZE = Integer.parseInt(s2); + else DEFAULT_LITTLE_TITLE_FONT_SIZE = 10; + if (StrUtil.isNotBlank(s3) && Integer.parseInt(s3) > 10) DEFAULT_TITLE_FONT_SIZE = Integer.parseInt(s3); + else DEFAULT_TITLE_FONT_SIZE = 10; + if (StrUtil.isNotBlank(s4) && Integer.parseInt(s4) > 10) DEFAULT_ZONGJIAN_FONT_SIZE = Integer.parseInt(s4); + else DEFAULT_ZONGJIAN_FONT_SIZE = 10; pdfPage = 0; DictHosp dictHosp = dictHospService.list().get(0); + HOSP_NAME = dictHosp.getHospName(); String color = sysConfigService.selectConfigByKey("report_title_color"); List<SysDictData> sysUserSex = sysDictDataService.list(new LambdaQueryWrapper<SysDictData>().eq(SysDictData::getDictType, "sys_user_sex")); // 妫�楠屾暟鎹� @@ -1009,12 +1037,14 @@ paragraph.setAlignment(Element.ALIGN_LEFT); document2.add(paragraph); } - paragraph = PdfUtils.setParagraph(defaultFont, ""); - paragraph.setLeading(0f); - paragraph.setSpacingBefore(0f); - paragraph.setSpacingAfter(5f); - document2.add(paragraph); - xmXh++; + if (isXmWrite) { + paragraph = PdfUtils.setParagraph(defaultFont, ""); + paragraph.setLeading(0f); + paragraph.setSpacingBefore(0f); + paragraph.setSpacingAfter(5f); + document2.add(paragraph); + xmXh++; + } } // 妫�楠� @@ -1042,11 +1072,13 @@ index++; } } - paragraph = PdfUtils.setParagraph(defaultFont, ""); - paragraph.setSpacingBefore(0f); - paragraph.setSpacingAfter(5f); - document2.add(paragraph); - xmXh++; + if(isXmWrite) { + paragraph = PdfUtils.setParagraph(defaultFont, ""); + paragraph.setSpacingBefore(0f); + paragraph.setSpacingAfter(5f); + document2.add(paragraph); + xmXh++; + } } } } @@ -1096,26 +1128,103 @@ paragraph.setSpacingAfter(2f); document2.add(paragraph); xmXh = 0; - for (Map.Entry<String, Object> item : map.entrySet()) { - String xmmc = item.getKey(); - HashMap<String, Object> entryValue = (HashMap<String, Object>) item.getValue(); - ArrayList<List<String>> lists = (ArrayList<List<String>>) entryValue.get("data"); - boolean isXmWrite = false; - int index = 1; - for (List<String> i : lists) { - if (i.contains("鈫�") || i.contains("鈫�")) { - if (!isXmWrite) { - xmXh++; - paragraph = new Paragraph("銆�"+xmXh+"."+xmmc+"銆�",defaultFont); - paragraph.setAlignment(Element.ALIGN_LEFT); + + for (Map.Entry<String, List<CsProVo>> deptEntry : listMap.entrySet()) { + List<CsProVo> proVos = deptEntry.getValue(); + if (proVos.size() > 1) { + proVos = proVos.stream() + .sorted(Comparator.comparingLong(CsProVo::getProId)) + .collect(Collectors.toList()); + } + ArrayList<String> jianYanYiDa = new ArrayList<>(); + for (CsProVo proVo : proVos) { + // 妫�鏌� + for (Map.Entry<Long, List<TjOrderDetail>> entry : collect.entrySet()) { + if (!entry.getKey().equals(proVo.getProId())) continue; + List<TjOrderDetail> details = entry.getValue(); + String xmmc = details.get(0).getProName(); + boolean isXmWrite = false; + int index = 1; + for (TjOrderDetail detail : details) { + if (!isXmWrite) { + xmXh++; + paragraph = new Paragraph("銆�"+xmXh+"."+xmmc+"銆�", defaultFont); + paragraph.setAlignment(Element.ALIGN_LEFT); + document2.add(paragraph); + isXmWrite = true; + } + String result = detail.getProResult(); + if (StrUtil.isNotBlank(result)) { +// result = result.replaceAll(" ","").replaceAll("\t",""); +// result = result.replaceAll("\n鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�", ""); +// result = "\n " + result.replaceAll("\n", "\n "); + int index1 = 1; + String[] split = result.split("\n"); + boolean contains = result.contains("鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"); + StringBuilder builder = new StringBuilder(); + for (String s : split) { + if (StrUtil.isBlank(s.replaceAll("\n","").trim())) continue; + builder.append(" (").append(index1).append(")").append(s).append("\n"); + index1++; + } + if (!contains) builder.append(" (").append(index1).append(")").append("鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"); + else builder.substring(0,builder.length() - 1); + result = builder.toString(); + } +// String content = " (" + index + ") " + detail.getProName() + "锛�" + result; +// content = content.replaceAll("[\\n\\r]+$", ""); +// content = content.replaceAll("\\s+$", ""); +// paragraph = new Paragraph(content, defaultFont); + if (StrUtil.isNotBlank(result)) { + paragraph = new Paragraph(result, defaultFont); + paragraph.setAlignment(Element.ALIGN_LEFT); + document2.add(paragraph); + }else { + paragraph = new Paragraph("寤鸿瀹氭湡澶嶆煡",defaultFont); + paragraph.setAlignment(Element.ALIGN_LEFT); + document2.add(paragraph); + } + String str = " "; + List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(entry.getKey().toString(),"","",tjOrder.getTjNumber()); + for (Map<String, Object> objectMap : maps) { + String content = str + objectMap.get("bt").toString() + objectMap.get("nr").toString(); + if (StrUtil.isBlank(content)) content = " 鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"; + paragraph = new Paragraph(content,defaultFont); + paragraph.setAlignment(Element.ALIGN_LEFT); + document2.add(paragraph); + } + index++; + paragraph = PdfUtils.setParagraph(defaultFont, ""); + paragraph.setLeading(0f); + paragraph.setSpacingBefore(0f); + paragraph.setSpacingAfter(5f); document2.add(paragraph); - isXmWrite = true; } - String content = " ("+index + ")" + i.get(0) + "锛�" + i.get(1) + " " + i.get(3) + " " + i.get(4) + " " + i.get(2); - paragraph = new Paragraph(content,defaultFont); - paragraph.setAlignment(Element.ALIGN_LEFT); - document2.add(paragraph); - // 绗叚浣嶆槸lis椤圭洰id + } + // 妫�楠� + for (Map.Entry<String, Object> item : map.entrySet()) { + String xmmc = item.getKey(); + HashMap<String, Object> entryValue = (HashMap<String, Object>) item.getValue(); + ArrayList<List<String>> lists = (ArrayList<List<String>>) entryValue.get("data"); + boolean isXmWrite = false; + int index = 1; + for (List<String> i : lists) { + if (!i.get(6).contains(String.valueOf(proVo.getProId()))) continue; + if (i.contains("鈫�") || i.contains("鈫�")) { + if (jianYanYiDa.contains(i.get(5))) continue; + jianYanYiDa.add(i.get(5)); + if (!isXmWrite) { + xmXh++; + paragraph = new Paragraph("銆�"+xmXh+"."+xmmc+"銆�",defaultFont); + paragraph.setAlignment(Element.ALIGN_LEFT); + document2.add(paragraph); + isXmWrite = true; + } + String content = " ("+index + ")" + i.get(0) + "锛�" + i.get(1) + " " + i.get(3) + " " + i.get(4) + " " + i.get(2); + paragraph = new Paragraph(content,defaultFont); + paragraph.setAlignment(Element.ALIGN_LEFT); + document2.add(paragraph); + // 绗叚浣嶆槸lis椤圭洰id // LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>(); // wrapper.eq(TjProject::getLisXmbm,i.get(5)); // TjProject project = projectService.getOne(wrapper); @@ -1126,10 +1235,10 @@ // if (!rules.isEmpty()){ // // } - String str = " "; - List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(i.get(5),"",i.get(2),tjOrder.getTjNumber()); - if (!maps.isEmpty()){ - for (Map<String, Object> objectMap : maps) { + String str = " "; + List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(i.get(5),"",i.get(2),tjOrder.getTjNumber()); + if (!maps.isEmpty()){ + for (Map<String, Object> objectMap : maps) { // paragraph = new Paragraph(str+"寤鸿鏍囬",defaultFont); // paragraph.setAlignment(Element.ALIGN_LEFT); // document2.add(paragraph); @@ -1146,79 +1255,31 @@ // paragraph.setAlignment(Element.ALIGN_LEFT); // document2.add(paragraph); - paragraph = new Paragraph(str+objectMap.get("bt").toString().trim()+objectMap.get("nr").toString().trim(),defaultFont); - paragraph.setAlignment(Element.ALIGN_LEFT); - document2.add(paragraph); + String content1 = str + objectMap.get("bt").toString() + objectMap.get("nr").toString().trim(); + if (StrUtil.isBlank(content)) content1 = " 鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"; + paragraph = new Paragraph(content1,defaultFont); + paragraph.setAlignment(Element.ALIGN_LEFT); + document2.add(paragraph); + } + paragraph = PdfUtils.setParagraph(defaultFont, ""); + paragraph.setSpacingBefore(2f); + paragraph.setSpacingAfter(5f); + document2.add(paragraph); + } +// } + index++; } + } + if (isXmWrite) { paragraph = PdfUtils.setParagraph(defaultFont, ""); - paragraph.setSpacingBefore(2f); + paragraph.setSpacingBefore(0f); paragraph.setSpacingAfter(5f); document2.add(paragraph); } -// } - index++; } } - paragraph = PdfUtils.setParagraph(defaultFont, ""); - paragraph.setSpacingBefore(0f); - paragraph.setSpacingAfter(5f); - document2.add(paragraph); } - - for (Map.Entry<Long, List<TjOrderDetail>> entry : orderDetails.stream().collect(Collectors.groupingBy(TjOrderDetail::getProId)).entrySet()) { - List<TjOrderDetail> details = entry.getValue(); - String xmmc = details.get(0).getProName(); - boolean isXmWrite = false; - int index = 1; - for (TjOrderDetail detail : details) { - if (!isXmWrite) { - xmXh++; - paragraph = new Paragraph("銆�"+xmXh+"."+xmmc+"銆�", defaultFont); - paragraph.setAlignment(Element.ALIGN_LEFT); - document2.add(paragraph); - isXmWrite = true; - } - String result = detail.getProResult(); - if (StrUtil.isNotBlank(result)) { -// result = result.replaceAll(" ","").replaceAll("\t",""); -// result = result.replaceAll("\n鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�", ""); -// result = "\n " + result.replaceAll("\n", "\n "); - int index1 = 1; - String[] split = result.split("\n"); - boolean contains = result.contains("鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"); - StringBuilder builder = new StringBuilder(); - for (String s : split) { - if (StrUtil.isBlank(s.replaceAll("\n","").trim())) continue; - builder.append(" (").append(index1).append(")").append(s).append("\n"); - index1++; - } - if (!contains) builder.append(" (").append(index1).append(")").append("鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"); - else builder.substring(0,builder.length() - 1); - result = builder.toString(); - } -// String content = " (" + index + ") " + detail.getProName() + "锛�" + result; -// content = content.replaceAll("[\\n\\r]+$", ""); -// content = content.replaceAll("\\s+$", ""); -// paragraph = new Paragraph(content, defaultFont); - paragraph = new Paragraph(result, defaultFont); - paragraph.setAlignment(Element.ALIGN_LEFT); - document2.add(paragraph); - String str = " "; - List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(entry.getKey().toString(),"","",tjOrder.getTjNumber()); - for (Map<String, Object> objectMap : maps) { - paragraph = new Paragraph(str+objectMap.get("bt").toString()+objectMap.get("nr").toString(),defaultFont); - paragraph.setAlignment(Element.ALIGN_LEFT); - document2.add(paragraph); - } - index++; - paragraph = PdfUtils.setParagraph(defaultFont, ""); - paragraph.setLeading(0f); - paragraph.setSpacingBefore(0f); - paragraph.setSpacingAfter(5f); - document2.add(paragraph); - } - } @@ -1314,15 +1375,23 @@ cell.setPhrase(new Phrase("鎬绘鍖诲笀:", zongJianTitleFont)); tableQz.addCell(cell); + cell = new PdfPCell(); cell.setBorder(Rectangle.NO_BORDER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setPaddingTop(10); cell.setPaddingBottom(10); -// cell.setPhrase(new Phrase("浣曞皬濠�", zongJianFont)); - cell.setPhrase(new Phrase(tjOrder.getCheckDoctor(), zongJianFont)); - tableQz.addCell(cell); + if (zongJianYiShiQianMing == null) { + cell.setPhrase(new Phrase(sysConfigService.selectConfigByKey("pdf_report_zongjianysname"), zongJianFont)); + tableQz.addCell(cell); + }else { + byte[] bytes = Base64.getDecoder().decode(zongJianYiShiQianMing.getTemplate()); + Image image = Image.getInstance(bytes); + image.scaleToFit(100, 100); + cell.addElement(image); + tableQz.addCell(cell); + } cell = new PdfPCell(); cell.setBorder(Rectangle.NO_BORDER); @@ -1395,9 +1464,7 @@ // 棣栭〉琛ㄥ崟 String tjNumber = tjOrder.getTjNumber(); String template = tjReportTemplate.getTemplate(); - LambdaQueryWrapper<DictComp> wq111 = new LambdaQueryWrapper<>(); - wq111.eq(DictComp::getDrugManufacturerId, tjOrder.getFirmId()); - DictComp dictComp = dictCompService.getOne(wq111); + LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>(); wq2.eq(TjOrderDetail::getOrderId, tjOrder.getOrderId()); wq2.isNotNull(TjOrderDetail::getFlowingWaterId); @@ -1432,10 +1499,18 @@ tjtype = "涓汉"; hashMap.put("tjtype", tjtype); } - if (dictComp == null) { - hashMap.put("work", "鏃�"); - } else { - hashMap.put("work", dictComp.getCnName()); + if (StrUtil.isNotBlank(customer.getCompName())){ + hashMap.put("work", customer.getCompName()); + }else { +// LambdaQueryWrapper<DictComp> wq111 = new LambdaQueryWrapper<>(); +// wq111.eq(DictComp::getDrugManufacturerId, tjOrder.getFirmId()); +// DictComp dictComp = dictCompService.getOne(wq111); + + if (StrUtil.isBlank(tjOrder.getFirmName())) { + hashMap.put("work", "鏃�"); + } else { + hashMap.put("work", tjOrder.getFirmName()); + } } hashMap.put("sex", sex); hashMap.put("tjnumber", tjNumber); @@ -1767,7 +1842,8 @@ } } //鍒嗗壊绾� - if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { +// if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { + if (!true) { LineSeparator objectName = new LineSeparator(); objectName.setOffset(-5); document1.add(objectName); @@ -1803,7 +1879,8 @@ Font titleFonts = PdfUtils.setFont(9); Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName); - if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { +// if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { + if (true) { Font titleFont = PdfUtils.setFont(DEFAULT_TITLE_FONT_SIZE); titleFont.setStyle(Font.BOLD); PdfPCell cellTitle = new PdfPCell(PdfUtils.setParagraph(titleFont, titleName)); @@ -1827,7 +1904,8 @@ // PdfPTable table = PdfUtils.setTable2(headFont, textFont, titles, value,dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")); // document1.add(table); - if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌") && !value.isEmpty()){ +// if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌") && !value.isEmpty()){ + if (true && !value.isEmpty()){ if (value.size()>1){ if (value.get(0).getPid().equals("1862852701533012001")){ Font remarkFonts = PdfUtils.setFont(DEFAULT_FONT_SIZE); @@ -1860,10 +1938,12 @@ paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); - ppp = new Paragraph("缁撹锛�"+entry.getKey().getRemark(), remarkFonts); - paragraph.setAlignment(Element.ALIGN_LEFT); - paragraph.setLeading(5f); - document1.add(ppp); + if (StrUtil.isNotBlank(entry.getKey().getRemark())) { + ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark(), remarkFonts); + paragraph.setAlignment(Element.ALIGN_LEFT); + paragraph.setLeading(5f); + document1.add(ppp); + } }else { String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"}; Font headFont = PdfUtils.setFont(DEFAULT_FONT_SIZE); @@ -1919,10 +1999,12 @@ paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); - ppp = new Paragraph("缁撹锛�"+entry.getKey().getRemark(), remarkFonts); - paragraph.setAlignment(Element.ALIGN_LEFT); - paragraph.setLeading(5f); - document1.add(ppp); + if (StrUtil.isNotBlank(entry.getKey().getRemark())) { + ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark(), remarkFonts); + paragraph.setAlignment(Element.ALIGN_LEFT); + paragraph.setLeading(5f); + document1.add(ppp); + } }else { String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉"}; Font headFont = PdfUtils.setFont(DEFAULT_FONT_SIZE); @@ -1943,7 +2025,8 @@ if (entry.getKey().getRemark() == null) { entry.getKey().setRemark(""); } - if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ +// if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ + if (!true){ String remark = "澶囨敞锛�" + entry.getKey().getRemark(); if (entry.getKey().getRemark().length() > 50) { int j = 0; @@ -1969,13 +2052,16 @@ //鍒ゆ柇涓绘鍖诲笀鏄惁涓虹┖ 绌轰笉鑳芥樉绀簄ull zhuJianYiShi(document1, entry,orderRemark.getCreateTime(),dictHosp); //鍒嗗壊绾� - if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { +// if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { + if (!true) { LineSeparator objectName = new LineSeparator(); document1.add(objectName); } } else { if (null != one11) { - titleName = one11.getProName(); + if (entry.getValue().get(0).getProName().contains(";")) + titleName = entry.getValue().get(0).getProName(); + else titleName = one11.getProName(); } else { titleName = entry.getKey().getProName(); } @@ -1983,7 +2069,8 @@ Font titleFonts = PdfUtils.setFont(DEFAULT_FONT_SIZE); Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName); - if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { +// if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { + if (true) { if (StrUtil.isBlank(value.get(0).getProResult()) && (StrUtil.isBlank(value.get(0).getTs()) && StrUtil.isBlank(value.get(0).getSj()))){ continue; } @@ -2009,7 +2096,8 @@ // PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value,dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")); // document1.add(table); - if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌") && !value.isEmpty()){ +// if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌") && !value.isEmpty()){ + if (true && !value.isEmpty()){ if (value.size()>1){ if (value.get(0).getPid().equals("1862852701533012001")){ Font remarkFonts = PdfUtils.setFont(DEFAULT_FONT_SIZE); @@ -2042,10 +2130,12 @@ paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); - ppp = new Paragraph("缁撹锛�"+entry.getKey().getRemark(), remarkFonts); - paragraph.setAlignment(Element.ALIGN_LEFT); - paragraph.setLeading(5f); - document1.add(ppp); + if (StrUtil.isNotBlank(entry.getKey().getRemark())) { + ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark(), remarkFonts); + paragraph.setAlignment(Element.ALIGN_LEFT); + paragraph.setLeading(5f); + document1.add(ppp); + } }else { String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"}; Font headFont = PdfUtils.setFont(DEFAULT_FONT_SIZE); @@ -2102,10 +2192,12 @@ paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); - ppp = new Paragraph("缁撹锛�"+entry.getKey().getRemark(), remarkFonts); - paragraph.setAlignment(Element.ALIGN_LEFT); - paragraph.setLeading(5f); - document1.add(ppp); + if (StrUtil.isNotBlank(entry.getKey().getRemark())) { + ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark(), remarkFonts); + paragraph.setAlignment(Element.ALIGN_LEFT); + paragraph.setLeading(5f); + document1.add(ppp); + } }else { String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉"}; Font headFont = PdfUtils.setFont(DEFAULT_FONT_SIZE); @@ -2129,7 +2221,8 @@ if (entry.getKey().getRemark() == null) { entry.getKey().setRemark(""); } - if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ +// if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ + if (!true){ String remark = "澶囨敞锛�" + entry.getKey().getRemark(); if (entry.getKey().getRemark().length() > 50) { int j = 0; @@ -2154,7 +2247,8 @@ } //鍒ゆ柇涓绘鍖诲笀鏄惁涓虹┖ 绌轰笉鑳芥樉绀簄ull zhuJianYiShi(document1, entry,orderRemark.getCreateTime(),dictHosp); - if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { +// if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { + if (!true) { //鍒嗗壊绾� LineSeparator objectName = new LineSeparator(); document1.add(objectName); @@ -2171,13 +2265,15 @@ * @throws DocumentException */ private void zhuJianYiShi(Document document1, Map.Entry<TjOrderRemark, List<TjPdfVO>> entry,Date createTime,DictHosp dictHosp) throws DocumentException { - if ((null != entry.getKey().getDoctorName() && null != userService.getById(entry.getKey().getDoctorName())) || dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌") ) { +// if ((null != entry.getKey().getDoctorName() && null != userService.getById(entry.getKey().getDoctorName())) || dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌") ) { + if ((null != entry.getKey().getDoctorName() && null != userService.getById(entry.getKey().getDoctorName())) || true ) { //涓绘鍖诲笀 String key = sysConfigService.selectConfigByKey("is_report_pdf_use_ysqm"); SysUser sysUser = userService.getById(entry.getKey().getDoctorName()); String doctorNameDefault = "鏃�"; if (sysUser != null)doctorNameDefault = sysUser.getNickName(); - if (!entry.getValue().isEmpty() && StrUtil.isNotBlank(entry.getValue().get(0).getShys()) && dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ +// if (!entry.getValue().isEmpty() && StrUtil.isNotBlank(entry.getValue().get(0).getShys()) && dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ + if (!entry.getValue().isEmpty() && StrUtil.isNotBlank(entry.getValue().get(0).getShys()) && true){ doctorNameDefault = entry.getValue().get(0).getShys(); } Font doctorFonts = PdfUtils.setFont(9); @@ -2376,7 +2472,8 @@ } //鎷兼帴閲嶅ぇ闃虫�х粨鏋� StringBuffer str = new StringBuffer(); - if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { +// if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { + if (!true) { str.append("銆愰噸澶ч槼鎬ч」鐩�慭n"); LambdaQueryWrapper<TjBigPositive> bigPositiveLambdaQueryWrapper = new LambdaQueryWrapper<>(); bigPositiveLambdaQueryWrapper.eq(TjBigPositive::getTjNumber, tjNumber); @@ -2391,7 +2488,8 @@ } //鎷兼帴寮傚父椤圭洰 str.append("銆愬紓甯告儏鍐甸」鐩�慭n"); - if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { +// if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { + if (!true) { if (list.size() > 0) { for (int i = 0; i < list.size(); i++) { if (list.get(i).getExceptionDesc() == 1) { @@ -2520,7 +2618,7 @@ if (null != tjProject && tjProject.getNeedReport().equals("Y")) { tjOrderDetail.setProject(tjProject); - if (tjOrderDetail.getProject().getProParentId().equals(entry.getKey().getProId())) { + if (tjOrderDetail.getProject().getProParentId().equals(entry.getKey().getProId()) && entry.getKey().getType() == 1) { TjPdfVO tjPdfVO = new TjPdfVO(); tjPdfVO.setProName(tjOrderDetail.getProject().getProName()); tjPdfVO.setProResult(tjOrderDetail.getProResult()); @@ -2559,6 +2657,7 @@ for (TjOrderRemark tjOrderRemark : tjOrderRemarks) { printReport.put(tjOrderRemark, null); } + String ids = ""; for (Map.Entry<TjOrderRemark, List<TjPdfVO>> entry : printReport.entrySet()) { List<TjPdfVO> tjPdfVOS = new ArrayList<>(); List<TjOrderDetail> tjOrderDetails = tjOrderDetailService.getDetailByOrderIdAndParId(one.getOrderId(), entry.getKey().getProId()); @@ -2568,7 +2667,9 @@ if (null != tjProject && tjProject.getNeedReport().equals("Y")) { tjOrderDetail.setProject(tjProject); - if (tjOrderDetail.getProject().getProParentId().equals(entry.getKey().getProId())) { + if (tjOrderDetail.getProject().getProParentId().equals(entry.getKey().getProId()) + && entry.getKey().getType() == 1 + && !ids.contains(String.valueOf(tjOrderDetail.getProject().getProParentId()))) { TjPdfVO tjPdfVO = new TjPdfVO(); tjPdfVO.setProName(tjOrderDetail.getProject().getProName()); tjPdfVO.setProResult(tjOrderDetail.getProResult()); @@ -2581,12 +2682,14 @@ tjPdfVO.setProId(String.valueOf(tjOrderDetail.getProject().getProId())); LambdaQueryWrapper<LtkjExamJcbgd> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(LtkjExamJcbgd::getTjh,tjNumber); - wrapper.eq(LtkjExamJcbgd::getXmdm,String.valueOf(tjOrderDetail.getProject().getProParentId())); + wrapper.like(LtkjExamJcbgd::getXmdm,String.valueOf(tjOrderDetail.getProject().getProParentId())); LtkjExamJcbgd jcbgd = jcbgdService.getOne(wrapper); if (jcbgd != null){ tjPdfVO.setTs(jcbgd.getYxbx()); tjPdfVO.setSj(jcbgd.getBgNr()); tjPdfVO.setShys(jcbgd.getShysxm()); + tjPdfVO.setProName(jcbgd.getXmmc()); + ids+="|"+jcbgd.getXmdm(); } tjPdfVOS.add(tjPdfVO); } @@ -2720,7 +2823,8 @@ private static void addJianYanTable(Document document, String titleName, String[] titles, float[] titlesWidth, ArrayList<List<String>> lists,DictHosp dictHosp,String colorStr) throws DocumentException { // 澶ч」鏍囬 Font titleFont = PdfUtils.setFont(DEFAULT_TITLE_FONT_SIZE); - if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { +// if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { + if (true) { titleFont.setSize(DEFAULT_TITLE_FONT_SIZE); titleFont.setStyle(Font.BOLD); } @@ -2732,7 +2836,8 @@ paragraph.setSpacingBefore(10f); // 璁剧疆娈佃惤涓嬬┖鐧� paragraph.setSpacingAfter(10f); - if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { +// if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) { + if (true) { // 琛岄棿璺� paragraph.setLeading(7f); // 璁剧疆娈佃惤涓婄┖鐧� @@ -2778,7 +2883,8 @@ for (List<String> list : lists) { boolean isYc = false; textFont = PdfUtils.setFont(DEFAULT_FONT_SIZE); - if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ +// if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){ + if (true){ if (list.contains("鈫�") || list.contains("鈫�")){ isYc = true; } @@ -2848,7 +2954,8 @@ table1.setSpacingAfter(10f); Font titleFont = PdfUtils.setFont(12); - PdfPCell mergedCell = new PdfPCell(new Phrase("闄曞仴鍖绘緞鍚堢熆鍔″眬涓績鍖婚櫌", titleFont)); +// PdfPCell mergedCell = new PdfPCell(new Phrase("闄曞仴鍖绘緞鍚堢熆鍔″眬涓績鍖婚櫌", titleFont)); + PdfPCell mergedCell = new PdfPCell(new Phrase(HOSP_NAME, titleFont)); mergedCell.setBorder(Rectangle.NO_BORDER); mergedCell.setColspan(10); mergedCell.setHorizontalAlignment(Element.ALIGN_CENTER); -- Gitblit v1.8.0