From 71a397373c86d32d0c9d053e5b80820b21807328 Mon Sep 17 00:00:00 2001
From: 赵文轩 <1652863494@qq.com>
Date: 星期二, 18 六月 2024 14:57:24 +0800
Subject: [PATCH] 增加检查报告

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java |   66 ++++++++++++++++++++++++++++++--
 1 files changed, 61 insertions(+), 5 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 18c1a70..ef6ad67 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
@@ -69,6 +69,8 @@
     private LtkjHybgdService ltkjHybgdService;
     @Autowired
     private LtkjHysqdService ltkjHysqdService;
+    @Autowired
+    private LtkjGetexamreportinfoService ltkjGetexamreportinfoService;
     @Value("${path.filePath}")
     private String value;
     @Value("${path.reportServer}")
@@ -195,7 +197,7 @@
         // 缁勮妫�楠屾暟鎹�
         HashMap<String, Object> map = makeHisJianYan(tjOrder, customer);
         makeHisJianYanTable(document1, map);
-
+        List<ByteArrayOutputStream> jianchas = makeHisJianChaTable(tjOrder);
         document1.close();
         pdfWriter.close();
         PdfReader reader = null;
@@ -205,6 +207,15 @@
             for (int i = 1; i <= numberOfPages1; i++) {
                 PdfImportedPage page = copy.getImportedPage(reader, i);
                 copy.addPage(page);
+            }
+            for (ByteArrayOutputStream jiancha : jianchas) {
+                reader = new PdfReader(jiancha.toByteArray());
+                numberOfPages1 = reader.getNumberOfPages();
+                for (int i = 1; i <= numberOfPages1; i++) {
+                    PdfImportedPage page = copy.getImportedPage(reader, i);
+                    copy.addPage(page);
+                }
+                jiancha.close();
             }
             reader.close();
             byteArrayOutputStream1.close();
@@ -221,7 +232,7 @@
         String tjNumber = tjOrder.getTjNumber();
         tjReport.setTjNumber(String.valueOf(tjNumber));
         tjReport.setPath(urlValue + outputFileName1);
-        // TODO 鏂囦欢閰嶇疆
+        // 鏂囦欢閰嶇疆
 //        String outputPath1 = "/Users/chacca/寮�鍙戠浉鍏�/浠g爜/";
         String outputPath1 = value+"\\";
         String pdfBinary = getPDFBinary(outputPath1 + outputFileName1);
@@ -240,13 +251,52 @@
     }
 
     /**
+     * 鐢熸垚妫�鏌ヨ〃鏍�
+     * @param tjOrder
+     * @return
+     */
+    private List<ByteArrayOutputStream> makeHisJianChaTable(TjOrder tjOrder) {
+        LambdaQueryWrapper<LtkjGetexamreportinfo> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(LtkjGetexamreportinfo::getHisRegistrationId, tjOrder.getCardId());
+        List<LtkjGetexamreportinfo> list = ltkjGetexamreportinfoService.list(lambdaQueryWrapper);
+//        List<LtkjGetexamreportinfo> list = ltkjGetexamreportinfoService.list();
+        List<ByteArrayOutputStream> jianchas = new ArrayList<>();
+        for (LtkjGetexamreportinfo getexamreportinfo : list) {
+            String xm = getexamreportinfo.getHzxm();
+            String xb = getexamreportinfo.getHzxb().equals("2") ? "濂�" : "鐢�";
+            String nl = getexamreportinfo.getHznl();
+            if (StrUtil.isNotBlank(nl) && nl.contains(".")) {
+                String[] split = nl.split("\\.");
+                nl = split[0];
+            }
+            String jcks = getexamreportinfo.getJcksmc();
+            String sqks = getexamreportinfo.getSqksmc();
+            String sjks = getexamreportinfo.getZdjgmc();
+            String jcsb = getexamreportinfo.getSbbm();
+            String jch = getexamreportinfo.getJch();
+            String jcxm = getexamreportinfo.getJcxmmc();
+            String ms = getexamreportinfo.getYxbx();
+            String ts = getexamreportinfo.getYxzd();
+            String bgysqm = getexamreportinfo.getBgysqm();
+            String shysqm = getexamreportinfo.getShysqm();
+            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);
+            jianchas.add(outputStream);
+        }
+        return jianchas;
+    }
+
+    /**
      * PDF鏂囦欢瀛樺偍鑷虫湰鍦�
      * @param tjOrder
      * @param customer
      * @param finalOutPut
      */
     private void savePDFFile(String outputFileName1,TjOrder tjOrder, TjCustomer customer, ByteArrayOutputStream finalOutPut) {
-        // TODO 鏂囦欢閰嶇疆
+        // 鏂囦欢閰嶇疆
 //        String outputPath1 = "/Users/chacca/寮�鍙戠浉鍏�/浠g爜/";
         String outputPath1 = value+"\\";
         File file = new File(outputPath1 + outputFileName1);
@@ -1008,7 +1058,7 @@
             copy.close();
             reader.close();
             String outputFileName1 = userId + tjNumber + tjCustomer.getCusName() + "_鎶ュ憡.pdf";
-            // TODO 鏂囦欢閰嶇疆
+            // 鏂囦欢閰嶇疆
 //            String outputPath1 = "/Users/chacca/寮�鍙戠浉鍏�/浠g爜/";
             String outputPath1 = value+"\\";
             File file = new File(outputPath1 + outputFileName1);
@@ -1042,7 +1092,13 @@
         return true;
     }
 
-    // 缁勫悎闈炲寲楠岄」鐩姤鍛婃暟鎹�
+    /**
+     * 缁勫悎闈炲寲楠岄」鐩姤鍛婃暟鎹�
+     * @param tjNumber
+     * @param printReport
+     * @param one
+     * @param 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);

--
Gitblit v1.8.0