From b7103b4da9d05a5faa3c2eea81eff376380eb7dc Mon Sep 17 00:00:00 2001
From: zhaowenxuan <chacca165@163.com>
Date: 星期二, 10 十二月 2024 01:00:16 +0800
Subject: [PATCH] pdf调整

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java |  406 +++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 333 insertions(+), 73 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 74d97e6..3f2c630 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
@@ -22,6 +22,7 @@
 import com.ltkj.hosp.sqlDomain.LtkjExamJcbgd;
 import com.ltkj.hosp.sqlDomain.LtkjHybgd;
 import com.ltkj.hosp.sqlDomain.LtkjHysqd;
+import com.ltkj.hosp.vodomain.CsProVo;
 import com.ltkj.system.service.ISysConfigService;
 import com.ltkj.system.service.ISysDictDataService;
 import com.ltkj.system.service.ISysUserService;
@@ -44,6 +45,8 @@
 import java.util.List;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.stream.Collectors;
+
+import static com.ltkj.common.utils.pdfutils.PdfUtils.createTable;
 
 /**
  * 妫�鏌� 妫�楠屾姤鍛妏df鐢熸垚
@@ -154,18 +157,45 @@
         }
         document1.setMargins(70, 70, 40, 40);
         document1.open();
-        // 闈炲寲楠岄」鐩姤鍛�
-        Map<TjOrderRemark, List<TjPdfVO>> printReport = new HashMap<>();
-        notHuaYanData(tjOrder.getTjNumber(), printReport, tjOrder, customer);
-        try {
-            notHuaYanTable(document1, printReport,dictHosp,color);
-        } catch (DocumentException e) {
-            log.error("闈炲寲楠岄」鐩~鍏呰〃鏍煎紓甯�");
-            log.error(String.valueOf(e));
-            return AjaxResult.error();
+
+        if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){
+            // 缁勮浣撴妫�鏌ラ」鐩姤鍛�
+            Map<TjOrderRemark, List<TjPdfVO>> printReport = new HashMap<>();
+            notHuaYanData(tjOrder.getTjNumber(), printReport, tjOrder, customer);
+            try {
+                notHuaYanTable(document1, printReport,dictHosp,color);
+            } catch (DocumentException e) {
+                log.error("闈炲寲楠岄」鐩~鍏呰〃鏍煎紓甯�");
+                log.error(String.valueOf(e));
+                return AjaxResult.error();
+            }
+            // 缁勮妫�楠屾暟鎹�
+            makeHisJianYanTable(document1, map,dictHosp,color);
+
+            // 缁勮pacs妫�鏌ユ暟鎹�
+            printReport = new HashMap<>();
+            pacsJianChaData(tjOrder.getTjNumber(), printReport, tjOrder, customer);
+            try {
+                notHuaYanTable(document1, printReport,dictHosp,color);
+            } catch (DocumentException e) {
+                log.error("闈炲寲楠岄」鐩~鍏呰〃鏍煎紓甯�");
+                log.error(String.valueOf(e));
+                return AjaxResult.error();
+            }
+        }else {
+            // 闈炲寲楠岄」鐩姤鍛�
+            Map<TjOrderRemark, List<TjPdfVO>> printReport = new HashMap<>();
+            notHuaYanData(tjOrder.getTjNumber(), printReport, tjOrder, customer);
+            try {
+                notHuaYanTable(document1, printReport,dictHosp,color);
+            } catch (DocumentException e) {
+                log.error("闈炲寲楠岄」鐩~鍏呰〃鏍煎紓甯�");
+                log.error(String.valueOf(e));
+                return AjaxResult.error();
+            }
+            // 缁勮妫�楠屾暟鎹�
+            makeHisJianYanTable(document1, map,dictHosp,color);
         }
-        // 缁勮妫�楠屾暟鎹�
-        makeHisJianYanTable(document1, map,dictHosp,color);
 
 
         List<ByteArrayOutputStream> jianchas =  makeHisJianChaTable(tjOrder);
@@ -224,6 +254,107 @@
             return AjaxResult.error();
         }
         savePDFFile(outputFileName1, tjOrder, customer, finalOutPut);
+        return AjaxResult.success();
+    }
+
+    public AjaxResult hisPDFNew(TjOrder tjOrder, TjCustomer customer, TjReportTemplate tjReportTemplate) throws Exception {
+        DictHosp dictHosp = dictHospService.list().get(0);
+        String color = sysConfigService.selectConfigByKey("report_title_color");
+        List<SysDictData> sysUserSex = sysDictDataService.list(new LambdaQueryWrapper<SysDictData>().eq(SysDictData::getDictType, "sys_user_sex"));
+
+        ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+        Document document = new Document(PageSize.A4);
+        PdfWriter pdfWriter = null;
+        int pageSize = 0;
+        try {
+            pdfWriter = PdfWriter.getInstance(document, byteArrayOutputStream);
+                String sex = "";
+                if (customer.getCusSex() != null) {
+                    for (SysDictData userSex : sysUserSex) {
+                        if (userSex.getDictValue().equals(String.valueOf(customer.getCusSex()))) {
+                            sex = userSex.getDictLabel();
+                        }
+                    }
+                }
+                if (StrUtil.isBlank(sex)) sex = "鏈煡";
+                pdfWriter.setPageEvent(new FooterHeaderPageEvent(dictHosp.getHospName(),customer.getCusName(),tjOrder.getTjNumber(),sex,String.valueOf(DateUtil.ageOfNow(customer.getCusBrithday()))));
+                pageSize = pdfWriter.getPageNumber();
+        } catch (DocumentException e) {
+            log.error(String.valueOf(e));
+            return AjaxResult.error();
+        }
+
+        Map<TjOrderRemark, List<TjPdfVO>> printReport = new HashMap<>();
+        notHuaYanData(tjOrder.getTjNumber(), printReport, tjOrder, customer);
+        try {
+            notHuaYanTable(document, printReport,dictHosp,color);
+        } catch (DocumentException e) {
+            log.error("闈炲寲楠岄」鐩~鍏呰〃鏍煎紓甯�");
+            log.error(String.valueOf(e));
+            return AjaxResult.error();
+        }
+        PdfReader reader = null;
+
+        // 妫�楠屾暟鎹�
+        HashMap<String, Object> map = makeHisJianYan(tjOrder, customer);
+        makeHisJianYanTable(document, map,dictHosp,color);
+        List<ByteArrayOutputStream> jianchas =  makeHisJianChaTable(tjOrder);
+        document.close();
+
+        Document document1 = new Document(PageSize.A4);
+        ByteArrayOutputStream finalOutPut = new ByteArrayOutputStream();
+        PdfCopy copy = new PdfCopy(document1, finalOutPut);
+        byte[] bytes = byteArrayOutputStream.toByteArray();
+        document1.open();
+        reader = new PdfReader(bytes);
+
+        int numberOfPages = reader.getNumberOfPages();
+
+
+
+
+
+        try {
+            reader = new PdfReader(byteArrayOutputStream.toByteArray());
+            int numberOfPages1 = reader.getNumberOfPages();
+            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();
+            byteArrayOutputStream.close();
+            document.close();
+            copy.close();
+        } catch (IOException e) {
+            log.error("鎷疯礉pdf寮傚父");
+            log.error(String.valueOf(e));
+            return AjaxResult.error();
+        }
+
+
+
+
+        /*
+        * 绗簩椤垫鏌ョ姸鎬佷俊鎭� 妫�鏌ョ瀹や笌妫�鏌ラ」鐩�
+        * <span v-if="scope.row.type == '0'">鏈</span>
+        * <span v-if="scope.row.type == '1'">宸叉</span>
+        * <span v-if="scope.row.type == '2'">寮冩</span>
+        * <span v-if="scope.row.type == '3'">寤舵湡</span>
+        * */
+        List<CsProVo> list = tjOrderRemarkService.cSWebGetProByTjNumAndOrderId(tjOrder.getTjNumber(),false);
+
+
+
+
         return AjaxResult.success();
     }
 
@@ -455,8 +586,8 @@
      */
     private void makeHisJianYanTable(Document document1, HashMap<String, Object> map,DictHosp dictHosp,String colorStr) throws DocumentException {
         if (!map.isEmpty()) {
-            String[] titles = new String[]{"浣撴椤圭洰", "浣撴缁撴灉","鏍囧織", "鍗曚綅", "鍙傝�冭寖鍥�"};
-            float[] titlesWidth = new float[]{270, 80, 40, 80, 100};
+            String[] titles = new String[]{"浣撴椤圭洰", "浣撴缁撴灉","鎻愮ず", "鍗曚綅", "鍙傝�冭寖鍥�"};
+            float[] titlesWidth = new float[]{280, 100, 40, 100, 120};
             for (Map.Entry<String, Object> entry : map.entrySet()) {
                 String titleName = entry.getKey().trim();
                 HashMap<String, Object> entryValue = (HashMap<String, Object>) entry.getValue();
@@ -529,8 +660,10 @@
             LambdaQueryWrapper<TjProject> wqqq = new LambdaQueryWrapper<>();
             wqqq.eq(TjProject::getProId, entry.getKey().getProId());
             TjProject one11 = projectService.getOne(wqqq);
+            if (entry.getValue().isEmpty()) continue;
             //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛�
             if (null != one11 && "Y".equals(one11.getNeedReport())) {
+                TjOrderRemark orderRemark = entry.getKey();
                 List<TjPdfVO> value = entry.getValue();
                 String titleName = null;
                 if (null != one11 && "1".equals(one11.getResultType())) {
@@ -557,43 +690,70 @@
                     }
 
 
-                    String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"};
-                    // 鑾峰彇鍒楄〃鏁版嵁
-                    //璁剧疆琛ㄥご瀛椾綋鏍峰紡
-                    Font headFont = PdfUtils.setFont(9);
-                    // 璁剧疆姝f枃瀛椾綋鏍峰紡锛�12鍙�
-                    Font textFont = PdfUtils.setFont(9);
-                    //鍒涘缓琛ㄦ牸  灏嗚〃澶村瓧浣撳拰姝f枃瀛椾綋鏀捐繘鍘�
-                    PdfPTable table = PdfUtils.setTable2(headFont, textFont, titles, value);
+//                    String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"};
+//                    Font headFont = PdfUtils.setFont(9);
+//                    Font textFont = PdfUtils.setFont(9);
+//                    PdfPTable table = PdfUtils.setTable2(headFont, textFont, titles, value,dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌"));
+//                    document1.add(table);
 
-                    document1.add(table);
+                    if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌") && !value.isEmpty()){
+                        if (value.size()>1){
+                            String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"};
+                            Font headFont = PdfUtils.setFont(9);
+                            Font textFont = PdfUtils.setFont(9);
+                            PdfPTable table = PdfUtils.setTable2(headFont, textFont, titles, value,dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌"));
+                            document1.add(table);
+                        }else {
+                            Font remarkFonts = PdfUtils.setFont(9);
+                            Paragraph pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ墍瑙侊細");
+                            document1.add(pp);
+                            Paragraph ppp = new Paragraph(value.get(0).getSj(), 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(), remarkFonts);
+                            paragraph.setAlignment(Element.ALIGN_LEFT);
+                            paragraph.setLeading(5f);
+                            document1.add(ppp);
+                        }
+                    }else {
+                        String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"};
+                        Font headFont = PdfUtils.setFont(9);
+                        Font textFont = PdfUtils.setFont(9);
+                        PdfPTable table = PdfUtils.setTable2(headFont, textFont, titles, value,dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌"));
+                        document1.add(table);
+                    }
                     //鍒ゆ柇澶囨敞鏄惁涓虹┖  绌轰笉鑳芥樉绀簄ull
                     if (entry.getKey().getRemark() == null) {
                         entry.getKey().setRemark("");
                     }
-                    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);
+                    if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){
+                        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(9);
+                                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(9);
+                                Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring);
+                                document1.add(pp);
+                            }
+                        } else {
                             Font remarkFonts = PdfUtils.setFont(9);
-                            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(9);
-                            Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring);
+                            Paragraph pp = PdfUtils.setParagraph(remarkFonts, remark);
                             document1.add(pp);
                         }
-                    } else {
-                        Font remarkFonts = PdfUtils.setFont(9);
-                        Paragraph pp = PdfUtils.setParagraph(remarkFonts, remark);
-                        document1.add(pp);
                     }
                     //鍒ゆ柇涓绘鍖诲笀鏄惁涓虹┖  绌轰笉鑳芥樉绀簄ull
-                    zhuJianYiShi(document1, entry);
+                    zhuJianYiShi(document1, entry,orderRemark.getCreateTime(),dictHosp);
                     //鍒嗗壊绾�
                     if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) {
                         LineSeparator objectName = new LineSeparator();
@@ -626,42 +786,73 @@
                         document1.add(paragraph);
                     }
 
-                    String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"};
-                    // 鑾峰彇鍒楄〃鏁版嵁
-                    //璁剧疆琛ㄥご瀛椾綋鏍峰紡
-                    Font headFont = PdfUtils.setFont(9);
-                    // 璁剧疆姝f枃瀛椾綋鏍峰紡锛�12鍙�
-                    Font textFont = PdfUtils.setFont(9);
-                    //鍒涘缓琛ㄦ牸  灏嗚〃澶村瓧浣撳拰姝f枃瀛椾綋鏀捐繘鍘�
-                    PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value);
-                    document1.add(table);
+//                    String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"};
+//                    Font headFont = PdfUtils.setFont(9);
+//                    Font textFont = PdfUtils.setFont(9);
+//                    PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value,dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌"));
+//                    document1.add(table);
+
+                    if (dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌") && !value.isEmpty()){
+                        System.out.println("value = " + value);
+                        if (value.size()>1){
+                            String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"};
+                            Font headFont = PdfUtils.setFont(9);
+                            Font textFont = PdfUtils.setFont(9);
+                            PdfPTable table = PdfUtils.setTable2(headFont, textFont, titles, value,dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌"));
+                            document1.add(table);
+                        }else {
+                            Font remarkFonts = PdfUtils.setFont(9);
+                            Paragraph pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ墍瑙侊細");
+                            document1.add(pp);
+                            Paragraph ppp = new Paragraph(value.get(0).getSj(), 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(), remarkFonts);
+                            paragraph.setAlignment(Element.ALIGN_LEFT);
+                            paragraph.setLeading(5f);
+                            document1.add(ppp);
+                        }
+                    }else {
+                        String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅"};
+                        Font headFont = PdfUtils.setFont(9);
+                        Font textFont = PdfUtils.setFont(9);
+                        PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value,dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌"));
+                        document1.add(table);
+                    }
+
+
                     //鍒ゆ柇澶囨敞鏄惁涓虹┖  绌轰笉鑳芥樉绀簄ull
                     if (entry.getKey().getRemark() == null) {
                         entry.getKey().setRemark("");
                     }
-                    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);
+                    if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){
+                        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(9);
+                                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(9);
+                                Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring);
+                                document1.add(pp);
+                            }
+                        } else {
                             Font remarkFonts = PdfUtils.setFont(9);
-                            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(9);
-                            Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring);
+                            Paragraph pp = PdfUtils.setParagraph(remarkFonts, remark);
                             document1.add(pp);
                         }
-                    } else {
-                        Font remarkFonts = PdfUtils.setFont(9);
-                        Paragraph pp = PdfUtils.setParagraph(remarkFonts, remark);
-                        document1.add(pp);
                     }
                     //鍒ゆ柇涓绘鍖诲笀鏄惁涓虹┖  绌轰笉鑳芥樉绀簄ull
-                    zhuJianYiShi(document1, entry);
+                    zhuJianYiShi(document1, entry,orderRemark.getCreateTime(),dictHosp);
                     if (!dictHosp.getHospName().equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")) {
                         //鍒嗗壊绾�
                         LineSeparator objectName = new LineSeparator();
@@ -678,11 +869,16 @@
      * @param entry
      * @throws DocumentException
      */
-    private void zhuJianYiShi(Document document1, Map.Entry<TjOrderRemark, List<TjPdfVO>> entry) throws DocumentException {
-        if (null != entry.getKey().getDoctorName() && null != userService.getById(entry.getKey().getDoctorName())) {
+    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("婢勫悎鐭垮姟灞�涓績鍖婚櫌") ) {
             //涓绘鍖诲笀
             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("婢勫悎鐭垮姟灞�涓績鍖婚櫌")){
+                doctorNameDefault = entry.getValue().get(0).getShys();
+            }
             Font doctorFonts = PdfUtils.setFont(9);
             if (key.equals("Y")){
                 String qmImg = dictUserInfoMapper.selectQmImgInnerJoinUserByUserId(String.valueOf(sysUser.getUserId()));
@@ -693,7 +889,11 @@
                     elements.setSpacingAfter(10f);
                     elements.setAlignment(Element.ALIGN_RIGHT);
                     Phrase phrase = new Phrase();
-                    phrase.add(new Chunk("涓绘鍖诲笀锛�",doctorFonts));
+                    if (createTime != null) {
+                        phrase.add(new Chunk("妫�鏌ユ椂闂达細"+new SimpleDateFormat("yyyy-MM-dd").format(createTime)+"             涓绘鍖诲笀锛�", doctorFonts));
+                    }else {
+                        phrase.add(new Chunk("涓绘鍖诲笀锛�", doctorFonts));
+                    }
                     byte[] decode = Base64.getDecoder().decode(qmImg);
                     Image image = null;
                     try {
@@ -703,25 +903,29 @@
                         elements.add(phrase);
                         document1.add(elements);
                     } catch (IOException e) {
-                        String doctorName = "涓绘鍖诲笀锛�" + sysUser.getNickName();
+                        String doctorName = "涓绘鍖诲笀锛�" + doctorNameDefault;
+                        if (createTime != null) doctorName = "妫�鏌ユ椂闂达細"+new SimpleDateFormat("yyyy-MM-dd").format(createTime)+"             涓绘鍖诲笀锛�" + doctorNameDefault;
                         Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName);
                         df.setAlignment(Element.ALIGN_RIGHT);
                         document1.add(df);
                     }
                 }else {
-                    String doctorName = "涓绘鍖诲笀锛�" + sysUser.getNickName();
+                    String doctorName = "涓绘鍖诲笀锛�" + doctorNameDefault;
+                    if (createTime != null) doctorName = "妫�鏌ユ椂闂达細"+new SimpleDateFormat("yyyy-MM-dd").format(createTime)+"             涓绘鍖诲笀锛�" + doctorNameDefault;
                     Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName);
                     df.setAlignment(Element.ALIGN_RIGHT);
                     document1.add(df);
                 }
             }else {
-                String doctorName = "涓绘鍖诲笀锛�" + sysUser.getNickName();
+                String doctorName = "涓绘鍖诲笀锛�" + doctorNameDefault;
+                if (createTime != null) doctorName = "妫�鏌ユ椂闂达細"+new SimpleDateFormat("yyyy-MM-dd").format(createTime)+"             涓绘鍖诲笀锛�" + doctorNameDefault;
                 Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName);
                 df.setAlignment(Element.ALIGN_RIGHT);
                 document1.add(df);
             }
         } else {
             String doctorName = "涓绘鍖诲笀锛�" + "鏃�";
+            if (createTime != null) doctorName = "妫�鏌ユ椂闂达細"+new SimpleDateFormat("yyyy-MM-dd").format(createTime)+"             涓绘鍖诲笀锛�" + "鏃�";
             Font doctorFonts = PdfUtils.setFont(9);
             Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName);
             df.setAlignment(Element.ALIGN_RIGHT);
@@ -1013,6 +1217,62 @@
                         } else {
                             tjPdfVO.setCompany("/");
                         }
+                        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()));
+//                        LtkjExamJcbgd jcbgd = jcbgdService.getOne(wrapper);
+//                        if (jcbgd != null){
+//                            tjPdfVO.setTs(jcbgd.getYxbx());
+//                            tjPdfVO.setSj(jcbgd.getBgNr());
+//                            tjPdfVO.setShys(jcbgd.getShysxm());
+//                        }
+                        tjPdfVOS.add(tjPdfVO);
+                    }
+                }
+            }
+            printReport.put(entry.getKey(), tjPdfVOS);
+        }
+    }
+    private void pacsJianChaData(String tjNumber, Map<TjOrderRemark, List<TjPdfVO>> printReport, TjOrder one, TjCustomer customer) {
+//        LambdaQueryWrapper<TjOrderRemark> wqq = new LambdaQueryWrapper<>();
+//        wqq.eq(TjOrderRemark::getTjNumber, tjNumber);
+//        wqq.ne(TjOrderRemark::getDeptId, "241");
+//        wqq.in(TjOrderRemark::getDeptId, "269", "270", "253", "254", "255", "257");
+//        wqq.notIn(TjOrderRemark::getProId, projectService.getNneedReprotProId());
+//        List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.list(wqq);
+        List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.pacsJianChaData(tjNumber);
+        for (TjOrderRemark tjOrderRemark : tjOrderRemarks) {
+            printReport.put(tjOrderRemark, null);
+        }
+        for (Map.Entry<TjOrderRemark, List<TjPdfVO>> entry : printReport.entrySet()) {
+            List<TjPdfVO> tjPdfVOS = new ArrayList<>();
+            List<TjOrderDetail> tjOrderDetails = tjOrderDetailService.getDetailByOrderIdAndParId(one.getOrderId(), entry.getKey().getProId());
+            for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
+                TjProject tjProject = projectService.getById(tjOrderDetail.getProId());
+                if (null != tjProject && tjProject.getNeedReport().equals("Y")) {
+                    tjOrderDetail.setProject(tjProject);
+
+                    if (tjOrderDetail.getProject().getProParentId().equals(entry.getKey().getProId())) {
+                        TjPdfVO tjPdfVO = new TjPdfVO();
+                        tjPdfVO.setProName(tjOrderDetail.getProject().getProName());
+                        tjPdfVO.setProResult(tjOrderDetail.getProResult());
+                        tjPdfVO.setExc(tjOrderDetail.getExceptionDesc());
+                        if (null != tjProject.getProMetering()) {
+                            tjPdfVO.setCompany(tjProject.getProMetering());
+                        } else {
+                            tjPdfVO.setCompany("/");
+                        }
+                        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()));
+                        LtkjExamJcbgd jcbgd = jcbgdService.getOne(wrapper);
+                        if (jcbgd != null){
+                            tjPdfVO.setTs(jcbgd.getYxbx());
+                            tjPdfVO.setSj(jcbgd.getBgNr());
+                            tjPdfVO.setShys(jcbgd.getShysxm());
+                        }
                         tjPdfVOS.add(tjPdfVO);
                     }
                 }

--
Gitblit v1.8.0