From 03367c01da8a825ecbfa8ad392a71bcf3f03f5ed Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期五, 04 七月 2025 15:09:04 +0800
Subject: [PATCH] zjh20250704

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java |  167 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 167 insertions(+), 0 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 95519f5..d4f3bc1 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
@@ -2661,6 +2661,142 @@
         }
     }
 
+    private void pacsTable(Document document1, Map<TjOrderRemark, List<TjPdfVO>> printReport, DictHosp dictHosp, String colorStr, boolean isPacs)throws DocumentException{
+        try {
+
+            for (Map.Entry<TjOrderRemark, List<TjPdfVO>> entry : printReport.entrySet()) {
+
+                if (entry.getValue() == null || entry.getValue().isEmpty()) continue;
+                //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛�
+
+                TjOrderRemark orderRemark = entry.getKey();
+                List<TjPdfVO> value = entry.getValue().stream().distinct().collect(Collectors.toList());
+                if (StrUtil.isBlank(value.get(0).getProResult()) && (StrUtil.isBlank(value.get(0).getTs()) && StrUtil.isBlank(value.get(0).getSj()))) {
+                    continue;
+                }
+                String titleName = null;
+
+                if (entry.getValue().get(0).getProName().contains(";"))
+                    titleName = entry.getValue().get(0).getProName();
+                else titleName = orderRemark.getProName();
+                // 璁剧疆鏍囬瀛椾綋鏍峰紡
+                Font titleFonts = PdfUtils.setFont(DEFAULT_FONT_SIZE);
+                Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName);
+
+                if (StrUtil.isBlank(value.get(0).getProResult()) && (StrUtil.isBlank(value.get(0).getTs().replaceAll("\n",""))
+                        && StrUtil.isBlank(value.get(0).getSj().replaceAll("\n","")))) {
+                    continue;
+                }
+                Font titleFont = PdfUtils.setFont(DEFAULT_TITLE_FONT_SIZE);
+                titleFont.setStyle(Font.BOLD);
+                PdfPCell cellTitle = new PdfPCell(PdfUtils.setParagraph(titleFont, titleName));
+                cellTitle.setBorder(Rectangle.NO_BORDER);
+                Color color = Color.decode("#B4CDCD");
+                cellTitle.setBackgroundColor(new BaseColor(color.getRed(), color.getGreen(), color.getBlue())); // 璁剧疆鑳屾櫙棰滆壊锛堝崄鍏繘鍒� RGB锛�
+                // 鍒涘缓琛ㄦ牸骞舵坊鍔犲崟鍏冩牸
+                PdfPTable tableTitle = new PdfPTable(1);
+                tableTitle.setWidthPercentage(100);
+                tableTitle.addCell(cellTitle);
+                // 灏嗚〃鏍兼坊鍔犲埌鏂囨。涓�
+                document1.add(tableTitle);
+
+                if (!value.isEmpty()) {
+                    if (value.size() > 1) {
+                        Long pid = Long.valueOf(value.get(0).getPid());
+                        String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"};
+                        Font headFont = PdfUtils.setFont(DEFAULT_FONT_SIZE);
+                        Font textFont = PdfUtils.setFont(DEFAULT_FONT_SIZE);
+                        PdfPTable table = PdfUtils.setTable2(headFont, textFont, titles, value, isPacs, new float[]{240, 240, 240});
+                        document1.add(table);
+
+                    } else {
+                        Font remarkFonts = PdfUtils.setFont(DEFAULT_FONT_SIZE);
+
+                        if (isPacs) {
+                            Paragraph pp;
+                            Paragraph ppp;
+
+                            if (StrUtil.isNotBlank(value.get(0).getSj()) || StrUtil.isNotBlank(value.get(0).getProResult())) {
+                                pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ墍瑙侊細");
+                                document1.add(pp);
+                                ppp = new Paragraph(value.get(0).getSj() != null ? value.get(0).getSj().replaceAll("\n","") : value.get(0).getProResult().replaceAll("\n",""), remarkFonts);
+                                paragraph.setAlignment(Element.ALIGN_LEFT);
+                                paragraph.setLeading(5f);
+                                document1.add(ppp);
+                            }
+
+                            pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ彁绀猴細");
+                            document1.add(pp);
+                            ppp = new Paragraph((value.get(0).getTs() != null ? value.get(0).getTs().replaceAll("\n","") : value.get(0).getProResult().replaceAll("\n","")), remarkFonts);
+                            paragraph.setAlignment(Element.ALIGN_LEFT);
+                            paragraph.setLeading(5f);
+                            document1.add(ppp);
+
+                        } else {
+                            Long pid = Long.valueOf(value.get(0).getPid());
+                            String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉"};
+                            Font headFont = PdfUtils.setFont(DEFAULT_FONT_SIZE);
+                            Font textFont = PdfUtils.setFont(DEFAULT_FONT_SIZE);
+                            PdfPTable table = PdfUtils.setTable2(headFont, textFont, titles, value, false, new float[]{240, 300});
+                            document1.add(table);
+                        }
+
+                    }
+                } else {
+                    String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"};
+                    Font headFont = PdfUtils.setFont(DEFAULT_FONT_SIZE);
+                    Font textFont = PdfUtils.setFont(DEFAULT_FONT_SIZE);
+                    PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value, isPacs);
+                    document1.add(table);
+                }
+
+
+                //鍒ゆ柇澶囨敞鏄惁涓虹┖  绌轰笉鑳芥樉绀簄ull
+                if (entry.getKey().getRemark() == null) {
+                    entry.getKey().setRemark("");
+                }
+                //                    if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){
+                if (!true) {
+                    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(DEFAULT_FONT_SIZE);
+                            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(DEFAULT_FONT_SIZE);
+                            Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring);
+                            document1.add(pp);
+                        }
+                    } else {
+                        Font remarkFonts = PdfUtils.setFont(DEFAULT_FONT_SIZE);
+                        Paragraph pp = PdfUtils.setParagraph(remarkFonts, remark);
+                        document1.add(pp);
+                    }
+                }
+                //鍒ゆ柇涓绘鍖诲笀鏄惁涓虹┖  绌轰笉鑳芥樉绀簄ull
+                zhuJianYiShi(document1, entry, orderRemark.getCreateTime(), dictHosp);
+                //                    if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) {
+                if (!true) {
+                    //鍒嗗壊绾�
+                    LineSeparator objectName = new LineSeparator();
+                    document1.add(objectName);
+                }
+
+
+            }
+        } catch (NumberFormatException e) {
+            throw new RuntimeException(e);
+        } catch (DocumentException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
     /**
      * 涓昏鍖诲笀琛屾樉绀鸿缃�
      *
@@ -3133,6 +3269,37 @@
         }
     }
 
+
+    private void newpacsJianChaData(String tjNumber, Map<TjOrderRemark, List<TjPdfVO>> printReport, TjOrder one, TjCustomer customer) {
+        try {
+            List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.newpacsJianChaData(tjNumber);
+            for (TjOrderRemark tjOrderRemark : tjOrderRemarks) {
+                List<TjPdfVO> tjPdfVOS = new ArrayList<>();
+                TjPdfVO tjPdfVO = new TjPdfVO();
+                tjPdfVO.setProResult(null);
+                tjPdfVO.setExc(0L);
+                tjPdfVO.setCompany("/");
+                tjPdfVO.setProId(tjOrderRemark.getProsId());
+                String yxbx = tjOrderRemark.getRemark();
+                String bgNr = tjOrderRemark.getJgbx();
+                // 姝e垯琛ㄨ揪寮忥細鍖归厤鏁板瓧鍚庤窡 '.' 鎴� '銆�'
+                String regex = "\\d+[\\.,銆乚";
+                // 浣跨敤姝e垯鏇挎崲锛屽尮閰嶇殑鏁板瓧鍚庢坊鍔犳崲琛岀
+                if(StringUtil.isNotBlank(yxbx)) yxbx = yxbx.replaceAll(regex, "\n$0");
+                if(StringUtil.isBlank(bgNr)) bgNr = "";
+                if(StringUtil.isBlank(yxbx)) yxbx = "";
+                tjPdfVO.setTs(yxbx);
+                tjPdfVO.setSj(bgNr);
+                tjPdfVO.setShys(tjOrderRemark.getDoctorName());
+                tjPdfVO.setProName(tjOrderRemark.getProName());
+                tjPdfVOS.add(tjPdfVO);
+                printReport.put(tjOrderRemark, tjPdfVOS);
+            }
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
     /**
      * 璁剧疆鐢ㄦ埛淇℃伅
      *

--
Gitblit v1.8.0