From 6a7389dea30ef63c60b2cfdb93474092acbede3f Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期二, 21 一月 2025 15:16:34 +0800 Subject: [PATCH] zjh20250121 --- ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java | 151 +++++++++++++++++++++++++++----------------------- 1 files changed, 81 insertions(+), 70 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 5cf465f..6c3d023 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 @@ -15,6 +15,7 @@ import com.ltkj.common.core.domain.entity.SysDictData; import com.ltkj.common.core.domain.entity.SysUser; import com.ltkj.common.utils.DateUtils; +import com.ltkj.common.utils.SecurityUtils; import com.ltkj.framework.config.MatchUtils; import com.ltkj.hosp.domain.*; import com.ltkj.hosp.mapper.DictUserInfoMapper; @@ -112,6 +113,8 @@ private TjOrderDetailMapper tjOrderDetailMapper; @Autowired private SysDeptController sysDeptController; + @Autowired + private ITjProAdvicerulesService tjProAdvicerulesService; private Integer pdfPage = 0; @@ -506,7 +509,7 @@ // // } String str = " "; - List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(i.get(5),"",i.get(2),tjOrder.getTjNumber()); + List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(i.get(5),"",i.get(2),tjOrder.getTjNumber(),i.get(5),""); if (!maps.isEmpty()){ for (Map<String, Object> objectMap : maps) { // paragraph = new Paragraph(str+"寤鸿鏍囬",defaultFont); @@ -586,7 +589,7 @@ paragraph.setAlignment(Element.ALIGN_LEFT); document2.add(paragraph); String str = " "; - List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(entry.getKey().toString(),"","",tjOrder.getTjNumber()); + List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(entry.getKey().toString(),"","",tjOrder.getTjNumber(),detail.getProName(),""); for (Map<String, Object> objectMap : maps) { String content1 = str+objectMap.get("bt").toString()+objectMap.get("nr").toString(); if (StrUtil.isBlank(content1)) content1 = " 鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"; @@ -1024,6 +1027,7 @@ if (StrUtil.isNotBlank(result)) { int index = 1; result = result.replaceAll("鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�", ""); +// result = result.replaceAll("", ""); String[] split = result.split("\n"); StringBuilder builder = new StringBuilder(); for (String s : split) { @@ -1083,52 +1087,16 @@ } } - - - - - - - - - - - - - - - - - - - - - - - - - - - - - paragraph = PdfUtils.setParagraph(defaultFont, ""); paragraph.setLeading(0f); paragraph.setSpacingBefore(10f); paragraph.setSpacingAfter(10f); document2.add(paragraph); - - - - - - paragraph = PdfUtils.setParagraph(defaultTitleFont, "鍖荤敓寤鸿锛�"); paragraph.setSpacingBefore(3f); paragraph.setSpacingAfter(2f); document2.add(paragraph); xmXh = 0; - for (Map.Entry<String, List<CsProVo>> deptEntry : listMap.entrySet()) { List<CsProVo> proVos = deptEntry.getValue(); if (proVos.size() > 1) { @@ -1160,15 +1128,17 @@ // result = "\n " + result.replaceAll("\n", "\n "); int index1 = 1; String[] split = result.split("\n"); - boolean contains = result.contains("鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"); +// boolean contains = result.contains("鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"); + boolean contains = result.contains(" "); 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); +// if (!contains) builder.append(" (").append(index1).append(")").append("鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"); +// if (!contains) builder.append(" (").append(index1).append(")").append(" "); +// else builder.substring(0,builder.length() - 1); result = builder.toString(); } // String content = " (" + index + ") " + detail.getProName() + "锛�" + result; @@ -1185,10 +1155,29 @@ document2.add(paragraph); } String str = " "; - List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(entry.getKey().toString(),"","",tjOrder.getTjNumber()); - for (Map<String, Object> objectMap : maps) { +// List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(entry.getKey().toString(),"", +// detail.getYcbz(),tjOrder.getTjNumber(),detail.getProName().replaceAll("[锛�(][^锛�)]*[锛�)]", "") +// .replaceAll("[ 娴嬪畾妫�娴媇",""),detail.getProResult()); + List<Map<String, Object>> maps =new ArrayList<>(); + if(detail.getDeptId().equals("2")){ + String[] split = result.split("銆倈,|锛�"); + for (String s : split) { + s = s.replaceAll("\n", "").replaceAll("[锛�(][^锛�)]*[锛�)]", ""); +// Map<String,Object> mapss= tjRulesService.getyichangxiangmujianyiguizeJianCha(s); + Map<String,Object> mapss= tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(detail.getKs(),s,"0"); + if(null !=mapss){ + Object bt = mapss.get("bt"); + Object nr = mapss.get("nr"); + if(null !=bt && null !=nr) maps.add(mapss); + } + } + } + List<Map<String, Object>> collect1 = maps.stream().distinct().collect(Collectors.toList()); + + for (Map<String, Object> objectMap : collect1) { String content = str + objectMap.get("bt").toString() + objectMap.get("nr").toString(); - if (StrUtil.isBlank(content)) content = " 鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"; +// if (StrUtil.isBlank(content)) content = " 鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"; + if (StrUtil.isBlank(content)) content = " "; paragraph = new Paragraph(content,defaultFont); paragraph.setAlignment(Element.ALIGN_LEFT); document2.add(paragraph); @@ -1236,7 +1225,9 @@ // // } String str = " "; - List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(i.get(5),"",i.get(2),tjOrder.getTjNumber()); + List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(i.get(5),"", + i.get(2),tjOrder.getTjNumber(),i.get(0).replaceAll("[锛�(][^锛�)]*[锛�)]", "") + .replaceAll("[ 娴嬪畾妫�娴媇",""),i.get(1)); if (!maps.isEmpty()){ for (Map<String, Object> objectMap : maps) { // paragraph = new Paragraph(str+"寤鸿鏍囬",defaultFont); @@ -1254,10 +1245,14 @@ // paragraph = new Paragraph(str+objectMap.get("nr").toString(),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); + Object bt = objectMap.get("bt"); + Object nr = objectMap.get("nr"); + if(null !=bt && null !=nr){ + String content1 = str +bt .toString() +nr .toString().trim(); + if (StrUtil.isBlank(content)) content1 = " "; + paragraph = new Paragraph(content1,defaultFont); + } +// if (StrUtil.isBlank(content)) content1 = " 鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�"; paragraph.setAlignment(Element.ALIGN_LEFT); document2.add(paragraph); } @@ -1279,25 +1274,27 @@ } } } - - - - - - for (int i = 0; i < 1; i++) { paragraph = PdfUtils.setParagraph(defaultFont, ""); document2.add(paragraph); } - paragraph = PdfUtils.setParagraph(defaultTitleFont, "鎬绘鍖荤敓寤鸿锛�"); document2.add(paragraph); if (tjOrder.getCheckAdvice() == null) { paragraph = PdfUtils.setParagraph(defaultFont, "鏃�"); document2.add(paragraph); } else { - paragraph = PdfUtils.setParagraph(defaultFont, tjOrder.getCheckAdvice()); - document2.add(paragraph); + Paragraph paragraphs = new Paragraph(tjOrder.getCheckAdvice(),defaultFont); + //璁剧疆鏂囧瓧灞呬腑 + paragraphs.setAlignment(Element.ALIGN_LEFT); + //琛岄棿璺� +// paragraphs.setLeading(5f); + //璁剧疆娈佃惤涓婄┖鐧� + paragraphs.setSpacingBefore(10f); + //璁剧疆娈佃惤涓嬬┖鐧� + paragraphs.setSpacingAfter(10f); +// paragraph = PdfUtils.setParagraph(defaultFont, tjOrder.getCheckAdvice()); + document2.add(paragraphs); } @@ -1382,10 +1379,15 @@ cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setPaddingTop(10); cell.setPaddingBottom(10); - if (zongJianYiShiQianMing == null) { - cell.setPhrase(new Phrase(sysConfigService.selectConfigByKey("pdf_report_zongjianysname"), zongJianFont)); + String zongjianysname = sysConfigService.selectConfigByKey("pdf_report_zongjianysname"); + if (zongJianYiShiQianMing == null && StrUtil.isNotBlank(zongjianysname) && !zongjianysname.equals("鏃�")) { + cell.setPhrase(new Phrase(zongjianysname, zongJianFont)); tableQz.addCell(cell); - }else { + }else if(zongJianYiShiQianMing == null && zongjianysname.equals("鏃�")){ + String nickName = SecurityUtils.getLoginUser().getUser().getNickName(); + cell.setPhrase(new Phrase(nickName, zongJianFont)); + tableQz.addCell(cell); + } else { byte[] bytes = Base64.getDecoder().decode(zongJianYiShiQianMing.getTemplate()); Image image = Image.getInstance(bytes); image.scaleToFit(100, 100); @@ -1499,8 +1501,8 @@ tjtype = "涓汉"; hashMap.put("tjtype", tjtype); } - if (StrUtil.isNotBlank(customer.getCompName())){ - hashMap.put("work", customer.getCompName()); + if (StrUtil.isNotBlank(tjOrder.getFirmName())){ + hashMap.put("work", tjOrder.getFirmName()); }else { // LambdaQueryWrapper<DictComp> wq111 = new LambdaQueryWrapper<>(); // wq111.eq(DictComp::getDrugManufacturerId, tjOrder.getFirmId()); @@ -1511,6 +1513,11 @@ } else { hashMap.put("work", tjOrder.getFirmName()); } + } + if (StrUtil.isBlank(tjOrder.getFirmDeptName())) { + hashMap.put("bumen", "鏃�"); + } else { + hashMap.put("bumen",tjOrder.getFirmDeptName()); } hashMap.put("sex", sex); hashMap.put("tjnumber", tjNumber); @@ -2683,13 +2690,17 @@ LambdaQueryWrapper<LtkjExamJcbgd> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(LtkjExamJcbgd::getTjh,tjNumber); 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(); + wrapper.orderByDesc(LtkjExamJcbgd::getZdsj); + List<LtkjExamJcbgd> list = jcbgdService.list(wrapper); + if(null !=list && !list.isEmpty()){ + LtkjExamJcbgd jcbgd = list.get(0); + 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); } -- Gitblit v1.8.0