From 5e15f28db8bf83cc19697e1ce2bd0078cd9cdfb8 Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期四, 23 一月 2025 17:07:51 +0800
Subject: [PATCH] zjh20250123

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java |  122 ++++++++++++++++++++--------------------
 1 files changed, 62 insertions(+), 60 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 d0b1d96..6877a75 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
@@ -1100,72 +1100,74 @@
                     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)) {
-                                int index1 = 1;
-                                String[] split = result.split("\n");
-                                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(null !=details && !details.isEmpty()){
+                            boolean isXmWrite = false;
+                            int index = 1;
+                            int index1 = 1;
+                            for (TjOrderDetail detail : details) {
+                                String xmmc = detail.getProName();
+                                if (!isXmWrite) {
+                                    xmXh++;
+                                    paragraph = new Paragraph("銆�" + xmXh + "." + xmmc + "銆�", defaultFont);
+                                    paragraph.setAlignment(Element.ALIGN_LEFT);
+                                    document2.add(paragraph);
+                                    isXmWrite = true;
                                 }
-                                result = builder.toString();
-                            }
-                            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 = new ArrayList<>();
-
-                            LambdaQueryWrapper<TjOrderYcxm> ycwq=new LambdaQueryWrapper<>();
-                            ycwq.eq(TjOrderYcxm::getTjh,tjOrder.getTjNumber());
-                            ycwq.eq(TjOrderYcxm::getJcxm,xmmc);
-                            TjOrderYcxm ycxm = ycxmService.getOne(ycwq);
-                            if(null !=ycxm){
-                                String jynr = ycxm.getJynr();
-                                JSONArray array = JSONUtil.parseArray(jynr);
-                                for (Object object : array) {
-                                    Map<String,Object> objectMap=new HashMap<>();
-                                    JSONObject jsonObject = (JSONObject) object;
-                                    String bt = jsonObject.getStr("bt");
-                                    String nr = jsonObject.getStr("nr");
-                                    objectMap.put("bt",bt);
-                                    objectMap.put("nr",nr);
-                                    if(null !=bt || null !=nr) maps.add(objectMap);
+                                String result = detail.getProResult();
+                                if (StrUtil.isNotBlank(result)) {
+                                    String[] split = result.split("\n");
+                                    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++;
+                                    }
+                                    result = builder.toString();
                                 }
-                                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 = "     ";
-                                    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 = new ArrayList<>();
+
+                                LambdaQueryWrapper<TjOrderYcxm> ycwq=new LambdaQueryWrapper<>();
+                                ycwq.eq(TjOrderYcxm::getTjh,tjOrder.getTjNumber());
+                                ycwq.eq(TjOrderYcxm::getJcxm,xmmc);
+                                TjOrderYcxm ycxm = ycxmService.getOne(ycwq);
+                                if(null !=ycxm){
+                                    String jynr = ycxm.getJynr();
+                                    JSONArray array = JSONUtil.parseArray(jynr);
+                                    for (Object object : array) {
+                                        Map<String,Object> objectMap=new HashMap<>();
+                                        JSONObject jsonObject = (JSONObject) object;
+                                        String bt = jsonObject.getStr("bt");
+                                        String nr = jsonObject.getStr("nr");
+                                        objectMap.put("bt",bt);
+                                        objectMap.put("nr",nr);
+                                        if(null !=bt || null !=nr) maps.add(objectMap);
+                                    }
+                                    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 = "     ";
+                                        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);
                             }
-                            index++;
-                            paragraph = PdfUtils.setParagraph(defaultFont, "");
-                            paragraph.setLeading(0f);
-                            paragraph.setSpacingBefore(0f);
-                            paragraph.setSpacingAfter(5f);
-                            document2.add(paragraph);
                         }
                     }
                     // 妫�楠�

--
Gitblit v1.8.0