From b87b01b5267a7715eba68253674f6843f76e0a5b Mon Sep 17 00:00:00 2001
From: zhaowenxuan <chacca165@163.com>
Date: 星期二, 08 四月 2025 18:05:56 +0800
Subject: [PATCH] 2025-04-08

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java |  825 +---------------------------------------------------------
 1 files changed, 27 insertions(+), 798 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java
index 0e3e053..d683c46 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java
@@ -25,6 +25,7 @@
 import com.ltkj.common.utils.PDFDocumentUtil;
 import com.ltkj.common.utils.SecurityUtils;
 import com.ltkj.common.utils.StringUtils;
+import com.ltkj.db.DataSourceContextHolder;
 import com.ltkj.framework.config.MatchUtils;
 import com.ltkj.hosp.domain.*;
 import com.ltkj.hosp.service.*;
@@ -450,8 +451,8 @@
             tjReport.setTjNumber(String.valueOf(tjNumber));
             tjReport.setPath(urlValue + outputFileName1);
             String outputPath1 = value + File.separator;
-            String pdfBinary = getPDFBinary(outputPath1 + outputFileName1);
-            tjReport.setReport(pdfBinary);
+//            String pdfBinary = getPDFBinary(outputPath1 + outputFileName1);
+//            tjReport.setReport(pdfBinary);
             tjReport.setType("浣撴鎶ュ憡");
             tjReport.setPrint("pdf");
             tjReportService.save(tjReport);
@@ -490,288 +491,6 @@
         }
         //灏嗙姸鎬佹敼涓烘湭瀹℃牳
         tjOrderService.updateById(one);
-    }
-
-    private AjaxResult newFun(String tjNumber) {
-        long startTime = System.currentTimeMillis();
-        int num = tjOrderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber);
-        if (num > 0) {
-            return AjaxResult.error("鏈夊欢鏈熼」鐩殏涓嶈兘鐢熸垚鎶ュ憡!!!");
-        }
-        LambdaQueryWrapper<TjOrder> wq = new LambdaQueryWrapper<>();
-        wq.eq(TjOrder::getTjNumber, tjNumber);
-        TjOrder tjOrder = tjOrderService.getOne(wq);
-        if (null != tjOrder) {
-            LambdaQueryWrapper<TjReportTemplate> tjReportTemplateLambdaQueryWrapper = new LambdaQueryWrapper<>();
-            TjReportTemplate reportTemplate = null;
-            if (tjOrder.getTjCategory() != null) {
-                //鏌ヨ瀛楀吀
-                LambdaQueryWrapper<SysDictData> wqq = new LambdaQueryWrapper<>();
-                wqq.eq(SysDictData::getDictType, "dict_tjtype");
-                wqq.eq(SysDictData::getDictValue, tjOrder.getTjCategory());
-                SysDictData one = dictDataService.getOne(wqq);
-                if (one != null) {
-                    //鏌ヨ瀛楀吀
-                    LambdaQueryWrapper<SysDictData> wqq1 = new LambdaQueryWrapper<>();
-                    wqq1.eq(SysDictData::getDictType, "report_template_type");
-                    wqq1.eq(SysDictData::getDictLabel, one.getDictLabel());
-                    SysDictData one1 = dictDataService.getOne(wqq1);
-                    if (one1 != null) {
-                        tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, one1.getDictValue());
-                    } else {
-                        tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, 1);
-                    }
-                } else {
-                    tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, 1);
-                }
-                tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getOpen, 0);
-                reportTemplate = reportTemplateService.getOne(tjReportTemplateLambdaQueryWrapper);
-            } else {
-                tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getOpen, 0);
-                reportTemplate = reportTemplateService.list(tjReportTemplateLambdaQueryWrapper).get(2);
-            }
-            //鍒ゆ柇琛ㄤ腑鏈夋病鏈夎浣撴鎶ュ憡  涓嶈兘閲嶅鐢熸垚
-            LambdaQueryWrapper<TjReport> wqa = new LambdaQueryWrapper<>();
-            wqa.eq(TjReport::getTjNumber, tjNumber);
-            wqa.eq(TjReport::getType, "浣撴鎶ュ憡");
-            Integer count = tjReportService.getSelectCount(wqa);
-            if (count != 0) {
-                return AjaxResult.error("璇ュ鎴锋姤鍛婂凡鐢熸垚锛佷笉鑳介噸澶嶇敓鎴愶紒鍙洿鎺ラ瑙堟垨鎵撳嵃锛�");
-            }
-            Integer checkStatus = tjOrder.getCheckStatus();
-            if (checkStatus == 1) {
-                //鍒ゆ柇鎶ュ憡鐢熸垚 淇濆瓨绫诲瀷 2024/2/29
-                if ("鎶ヨ〃".equals(reportTemplate.getPrint())) {
-                    TjReport tjReport = new TjReport();
-                    tjReport.setTjNumber(String.valueOf(tjNumber));
-                    tjReport.setPath(reportTemplate.getUrl() + "?tjNum=" + tjNumber);
-                    tjReport.setType("浣撴鎶ュ憡");
-                    tjReport.setPrint("鎶ヨ〃");
-                    tjReportService.save(tjReport);
-                    //淇敼order琛ㄤ腑鐨勬墦鍗版姤鍛婃椂闂翠负褰撳墠鏃堕棿
-                    LambdaUpdateWrapper<TjOrder> updateWrapper = new LambdaUpdateWrapper<>();
-                    updateWrapper.eq(TjOrder::getTjNumber, tjNumber);
-                    updateWrapper.set(TjOrder::getReportTime, new Date());
-                    updateWrapper.set(TjOrder::getPrintLastTime, new Date());
-                    updateWrapper.set(TjOrder::getDownloadLastTime, new Date());
-                    updateWrapper.set(TjOrder::getStatus, TjConstants.TJ_END);
-                    tjOrderService.update(updateWrapper);
-                    return AjaxResult.success("宸茬敓鎴愭姤鍛婏紒鍙洿鎺ョ偣鍑婚瑙堬紒");
-                }
-                String template = reportTemplate.getTemplate();
-                String userId = SecurityUtils.getLoginUser().getUsername();
-                if (template == null) {
-                    return AjaxResult.error("娌℃湁璇ユā鏉�");
-                }
-                // --------浠ヤ笂-------  鏍规嵁鏁版嵁搴撲腑鐨勬ā鏉夸簩杩涘埗鏂囦欢  杞琾df  鍒涘缓鏂囦欢澶�  灏唒df鏀捐繘鏈湴鏂囦欢澶�
-                LambdaQueryWrapper<TjCustomer> wq1 = new LambdaQueryWrapper<>();
-                wq1.eq(TjCustomer::getCusId, tjOrder.getUserId());
-                TjCustomer tjCustomer = tjCustomerService.getOne(wq1);
-                LambdaQueryWrapper<DictComp> wq111 = new LambdaQueryWrapper<>();
-                wq111.eq(DictComp::getDrugManufacturerId, tjOrder.getFirmId());
-                DictComp dictComp = dictCompService.getOne(wq111);
-                LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>();
-                wq2.eq(TjOrderDetail::getOrderId, tjOrder.getOrderId());
-                //20230306鍒ゆ柇璇ラ」鐩槸鍚﹂��璐�/缂磋垂
-                wq2.isNotNull(TjOrderDetail::getFlowingWaterId);
-                //20230323鍒ゆ柇璇ラ」鐩槸鍚﹀純妫�/鏈
-//                wq2.eq(TjOrderDetail::getTjStatus,1);
-                List<TjOrderDetail> list = tjOrderDetailService.list(wq2);
-                for (TjOrderDetail tjOrderDetail : list) {
-                    TjProject tjProject = projectService.selectTjProjectByProId(tjOrderDetail.getProId());
-                    tjOrderDetail.setProject(tjProject);
-                }
-                // 鍏辫鑰楁椂5695姣 浠ヤ笅浠g爜鑰楁椂3528
-                // TODO PDF鍒涘缓浼樺寲
-                long pdfMkStart = System.currentTimeMillis();
-                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-                PdfStamper ps = null;
-                PdfReader reader = null;
-                try {
-                    // 璇诲叆pdf琛ㄥ崟
-                    reader = new PdfReader(new ByteArrayInputStream(Base64.getDecoder().decode(template)));
-                    // 鏍规嵁琛ㄥ崟鐢熸垚涓�涓柊鐨刾df
-                    ps = new PdfStamper(reader, byteArrayOutputStream);
-                    // 鑾峰彇pdf琛ㄥ崟
-                    AcroFields form = ps.getAcroFields();
-                    //璇ュ瓧浣撻�犳垚绫诲瀷涓嶅潎鍖�锛屼絾鏄痯df杞浘鐗囦笉涔辩爜
-                    //BaseFont bf = BaseFont.createFont("C:Windows\\Fonts\\simfang.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
-                    BaseFont bf = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
-                    form.addSubstitutionFont(bf);
-                    // 濉厖鏁版嵁缁欒〃鏍�
-                    Map<String, Object> data = new HashMap<>();
-                    // 璁剧疆鐢ㄦ埛淇℃伅
-                    setUserInfo(tjNumber, tjOrder, tjCustomer, dictComp, list, data);
-                    //灏侀潰椤典笅闈㈢殑鎬绘寤鸿鏄剧ず
-                    if (tjOrder.getCheckAdvice() == null) {
-                        data.put("remark", "鏃�");
-                    } else {
-                        data.put("remark", tjOrder.getCheckAdvice());
-                    }
-                    //灏侀潰椤典笅闈㈢殑鎬绘寤鸿鏄剧ず
-                    if (tjOrder.getCheckDoctor() == null) {
-                        data.put("docname", "鏃�");
-                    } else {
-                        data.put("docname", tjOrder.getCheckDoctor());
-                    }
-                    //寮傚父椤圭洰
-//                    data.put("yichang", "銆�1銆戝眻鍏変笉姝n" +
-//                            "銆�2銆戞墎妗冧綋鑲モ激\n" +
-//                            "銆�3銆戜綋閲嶆寚鏁板饩糪n" +
-//                            "銆�4銆戔編鑴傚紓甯革紙鎬昏儐鍥洪唶澧炩炯锛涒舰娌逛笁閰饩硷級\n" +
-//                            "銆�5銆懳�-饩曟皑閰拌浆绉婚叾澧炩炯锛涘ぉ饣斿啲姘ㄩ吀姘ㄥ熀杞Щ閰跺饩硷紱涓欐皑閰告皑鍩鸿浆绉婚叾澧炩炯\n" +
-//                            "銆�6銆戣交饩勪腑搴﹁剛鑲倽");
-
-                    //鎷兼帴閲嶅ぇ闃虫�х粨鏋�
-                    StringBuffer str = new StringBuffer();
-                    str.append("銆愰噸澶ч槼鎬ч」鐩�慭n");
-                    LambdaQueryWrapper<TjBigPositive> bigPositiveLambdaQueryWrapper = new LambdaQueryWrapper<>();
-                    bigPositiveLambdaQueryWrapper.eq(TjBigPositive::getTjNumber, tjNumber);
-                    final List<TjBigPositive> list1 = tjBigPositiveService.list(bigPositiveLambdaQueryWrapper);
-                    if (list1 != null && list1.size() > 0) {
-                        for (int i = 0; i < list1.size(); i++) {
-                            str.append(i + 1).append("銆�").append(list1.get(i).getProName()).append(";\n");
-                        }
-                    } else {
-                        str.append("    鏃狅紱\n");
-                    }
-                    //鎷兼帴寮傚父椤圭洰
-                    str.append("銆愬紓甯告儏鍐甸」鐩�慭n");
-                    if (list.size() > 0) {
-//                        for (int i = 0; i < list.size(); i++) {
-//                            if (list.get(i).getExceptionDesc() == 1) {
-//                                str.append(i + 1).append("銆�").append(projectService.getById(list.get(i).getProId()).getProName()).append(";\n");
-//                            }
-//                        }
-                        int[] index = {0};
-                        List<TjOrderDetail> collect = list.stream()
-                                .filter(item -> item.getExceptionDesc() == 1).collect(Collectors.toList());
-                        if (collect.isEmpty()) {
-                            str.append("    鏃狅紱\n");
-                        } else {
-                            collect.forEach(item -> str.append(index[0]++ + 1).append("銆�").append(projectService.getById(item.getProId()).getProName()).append(";\n"));
-                        }
-                    } else {
-                        str.append("    鏃狅紱\n");
-                    }
-                    //寮傚父椤圭洰
-                    data.put("yichang", str.toString());
-                    // 閬嶅巻data 缁檖df琛ㄥ崟琛ㄦ牸璧嬪��
-                    for (String key : data.keySet()) {
-                        form.setField(key, data.get(key).toString());
-                    }
-                    System.out.println("pdf濉厖琛ㄥ崟鏁版嵁鑰楁椂锛�" + (System.currentTimeMillis() - pdfMkStart));
-                    //璁剧疆涓烘棤娉曠紪杈�
-                    ps.setFormFlattening(true);
-                    ps.close();
-                    reader.close();
-                    // 灏嗕慨鏀瑰悗鐨凱DF鍐呭鍐欏叆
-                    byte[] bytes = byteArrayOutputStream.toByteArray();
-                    // 鍒涘缓鏂扮殑PDF鏂囨。
-                    Document document = new Document(PageSize.A4);
-                    ByteArrayOutputStream finalOutPut = new ByteArrayOutputStream();
-                    PdfCopy copy = new PdfCopy(document, finalOutPut);
-                    document.open();
-                    reader = new PdfReader(bytes);
-                    int numberOfPages = reader.getNumberOfPages();
-                    for (int i = 1; i <= numberOfPages; i++) {
-                        PdfImportedPage page = copy.getImportedPage(reader, i);
-                        copy.addPage(page);
-                    }
-                    // 娣诲姞璇︽儏椤�
-                    document.newPage();
-                    reader.close();
-                    ByteArrayOutputStream infoByteArrayOutputStream = setInfoPage(userId, tjNumber);
-                    reader = new PdfReader(infoByteArrayOutputStream.toByteArray());
-                    int numberOfPages1 = reader.getNumberOfPages();
-                    for (int i = 1; i <= numberOfPages1; i++) {
-                        PdfImportedPage page = copy.getImportedPage(reader, i);
-                        copy.addPage(page);
-                    }
-                    infoByteArrayOutputStream.close();
-                    // 蹇冪數鍥句互鍙婇檮浠�
-                    // 鍥犳暟鎹簱琛ㄥ瓨鏀綽ase64瀵艰嚧鏌ヨ缂撴參 杩欓噷鎵ц缂撴參
-                    // 鍦ㄨ繖閲屽鍔犱竴鏉℃煡璇ount 瀵逛簬娌℃湁杩藉姞闄勪欢鐨� 鎻愬崌閫熷害
-                    long fujianStart = System.currentTimeMillis();
-                    LambdaQueryWrapper<TjReport> queryWrapper = new LambdaQueryWrapper<>();
-                    queryWrapper.eq(TjReport::getTjNumber, tjNumber)
-                            .and(item -> item.eq(TjReport::getType, "闄勪欢").or().eq(TjReport::getType, "蹇冪數鍥�"));
-                    Integer selectCount = tjReportService.getSelectCount(queryWrapper);
-                    if (selectCount > 0) {
-                        String base64XinDianTu = null;
-                        String base64FuJian = null;
-                        List<TjReport> reportList = tjReportService.list(queryWrapper);
-                        TjReport xinDianTu = null;
-                        TjReport fuJian = null;
-                        if (!reportList.isEmpty()) {
-                            for (TjReport tjReport : reportList) {
-                                if ("闄勪欢".equals(tjReport.getType())) {
-                                    fuJian = tjReport;
-                                    base64FuJian = fuJian.getReport();
-                                } else {
-                                    xinDianTu = tjReport;
-                                    base64XinDianTu = xinDianTu.getReport();
-                                }
-                            }
-                        }
-                        if (xinDianTu != null) {
-                            if (fuJian != null) {
-                                addPageByPDFBase64(copy, base64FuJian);
-                                document.newPage();
-                                addPageByPDFBase64(copy, base64XinDianTu);
-                            } else {
-                                addPageByPDFBase64(copy, base64XinDianTu);
-                            }
-                        } else {
-                            if (fuJian != null) {
-                                addPageByPDFBase64(copy, base64FuJian);
-                            }
-                        }
-                    }
-                    long fujianEnd = System.currentTimeMillis();
-                    System.out.println("闄勪欢鏌ヨ鑰楁椂锛�" + (fujianEnd - fujianStart));
-                    System.out.println("鏂囦欢淇濆瓨鍓嶈�楁椂锛�" + (fujianEnd - pdfMkStart));
-                    // 淇濆瓨pdf鏂囦欢
-                    copy.close();
-                    String outputPath1 = value + File.separator;
-                    String outputFileName1 = userId + tjNumber + tjCustomer.getCusName() + "new_浣撴鎶ュ憡.pdf";
-                    File file = new File(outputPath1 + outputFileName1);
-                    BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(file));
-                    outputStream.write(finalOutPut.toByteArray());
-                    outputStream.flush();
-                    outputStream.close();
-                    document.close();
-                    finalOutPut.close();
-                    reader.close();
-                    // 淇濆瓨鏁版嵁
-                    TjReport tjReport = new TjReport();
-                    tjReport.setTjNumber(String.valueOf(tjNumber));
-                    tjReport.setPath(urlValue + outputFileName1);
-                    String pdfBinary = getPDFBinary(outputPath1 + outputFileName1);
-                    tjReport.setReport(pdfBinary);
-                    tjReport.setType("浣撴鎶ュ憡");
-                    tjReport.setPrint("pdf");
-                    tjReportService.save(tjReport);
-                    //淇敼order琛ㄤ腑鐨勬墦鍗版姤鍛婃椂闂翠负褰撳墠鏃堕棿
-                    LambdaUpdateWrapper<TjOrder> updateWrapper = new LambdaUpdateWrapper<>();
-                    updateWrapper.eq(TjOrder::getTjNumber, tjNumber);
-                    updateWrapper.set(TjOrder::getReportTime, new Date());
-                    updateWrapper.set(TjOrder::getPrintLastTime, new Date());
-                    updateWrapper.set(TjOrder::getDownloadLastTime, new Date());
-                    updateWrapper.set(TjOrder::getStatus, TjConstants.TJ_END);
-                    tjOrderService.update(updateWrapper);
-                    long entTime = System.currentTimeMillis();
-                    System.out.println("PDF寮�濮嬪垱寤哄埌缁撴潫鑰楁椂锛�" + (entTime - pdfMkStart));
-                    System.out.println("鎬昏�楁椂锛�" + (entTime - startTime) + "ms");
-                    return AjaxResult.success("宸茬敓鎴愭姤鍛婏紒鍙洿鎺ョ偣鍑婚瑙堬紒");
-                } catch (Exception e) {
-                    e.printStackTrace();
-                    return AjaxResult.success("PDF瀵煎嚭澶辫触");
-                }
-
-            }
-        }
-        return AjaxResult.success();
     }
 
     private void setUserInfo(String tjNumber, TjOrder tjOrder, TjCustomer tjCustomer, DictComp dictComp, List<TjOrderDetail> list, Map<String, Object> data) {
@@ -984,482 +703,6 @@
         document.close();
         pdfWriter.close();
         return byteArrayOutputStream;
-    }
-
-    private AjaxResult oldFun(String tjNumber) {
-        DictHosp dictHosp = dictHospService.list().get(0);
-        long startTime = System.currentTimeMillis();
-        int num = tjOrderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber);
-        if (num > 0) return AjaxResult.error("鏈夊欢鏈熼」鐩殏涓嶈兘鐢熸垚鎶ュ憡!!!");
-        LambdaQueryWrapper<TjOrder> wq = new LambdaQueryWrapper<>();
-        wq.eq(TjOrder::getTjNumber, tjNumber);
-        TjOrder tjOrder = tjOrderService.getOne(wq);
-
-        if (null != tjOrder) {
-            LambdaQueryWrapper<TjReportTemplate> tjReportTemplateLambdaQueryWrapper = new LambdaQueryWrapper<>();
-            TjReportTemplate reportTemplate = null;
-            if (tjOrder.getTjCategory() != null) {
-                //鏌ヨ瀛楀吀
-                LambdaQueryWrapper<SysDictData> wqq = new LambdaQueryWrapper<>();
-                wqq.eq(SysDictData::getDictType, "dict_tjtype");
-                wqq.eq(SysDictData::getDictValue, tjOrder.getTjCategory());
-                SysDictData one = dictDataService.getOne(wqq);
-                if (one != null) {
-                    //鏌ヨ瀛楀吀
-                    LambdaQueryWrapper<SysDictData> wqq1 = new LambdaQueryWrapper<>();
-                    wqq1.eq(SysDictData::getDictType, "report_template_type");
-                    wqq1.eq(SysDictData::getDictLabel, one.getDictLabel());
-                    SysDictData one1 = dictDataService.getOne(wqq1);
-                    if (one1 != null) {
-                        tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, one1.getDictValue());
-                    } else {
-                        tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, 1);
-                    }
-                } else {
-                    tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, 1);
-                }
-                tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getOpen, 0);
-                reportTemplate = reportTemplateService.getOne(tjReportTemplateLambdaQueryWrapper);
-            } else {
-                tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getOpen, 0);
-                reportTemplate = reportTemplateService.list(tjReportTemplateLambdaQueryWrapper).get(2);
-            }
-
-
-            //鍒ゆ柇琛ㄤ腑鏈夋病鏈夎浣撴鎶ュ憡  涓嶈兘閲嶅鐢熸垚
-            LambdaQueryWrapper<TjReport> wqa = new LambdaQueryWrapper<>();
-            wqa.eq(TjReport::getTjNumber, tjNumber);
-            wqa.eq(TjReport::getType, "浣撴鎶ュ憡");
-            List<TjReport> list2 = tjReportService.list(wqa);
-            if (list2.size() != 0) {
-                return AjaxResult.error("璇ュ鎴锋姤鍛婂凡鐢熸垚锛佷笉鑳介噸澶嶇敓鎴愶紒鍙洿鎺ラ瑙堟垨鎵撳嵃锛�");
-            }
-
-
-            Integer checkStatus = tjOrder.getCheckStatus();
-            if (checkStatus == 1) {
-                //鍒ゆ柇鎶ュ憡鐢熸垚 淇濆瓨绫诲瀷 2024/2/29
-                if ("鎶ヨ〃".equals(reportTemplate.getPrint())) {
-                    TjReport tjReport = new TjReport();
-                    tjReport.setTjNumber(String.valueOf(tjNumber));
-                    tjReport.setPath(reportTemplate.getUrl() + "?tjNum=" + tjNumber);
-                    tjReport.setType("浣撴鎶ュ憡");
-                    tjReport.setPrint("鎶ヨ〃");
-                    tjReportService.save(tjReport);
-                    //淇敼order琛ㄤ腑鐨勬墦鍗版姤鍛婃椂闂翠负褰撳墠鏃堕棿
-                    LambdaUpdateWrapper<TjOrder> updateWrapper = new LambdaUpdateWrapper<>();
-                    updateWrapper.eq(TjOrder::getTjNumber, tjNumber);
-                    updateWrapper.set(TjOrder::getReportTime, new Date());
-                    updateWrapper.set(TjOrder::getPrintLastTime, new Date());
-                    updateWrapper.set(TjOrder::getDownloadLastTime, new Date());
-                    updateWrapper.set(TjOrder::getStatus, TjConstants.TJ_END);
-                    tjOrderService.update(updateWrapper);
-                    return AjaxResult.success("宸茬敓鎴愭姤鍛婏紒鍙洿鎺ョ偣鍑婚瑙堬紒");
-                }
-
-
-                String template = reportTemplate.getTemplate();
-                String userId = SecurityUtils.getLoginUser().getUsername();
-                if (template != null) {
-                    PDFBinaryUtil.base64StringToPDF(template, FileUtil.mkdir(value).getPath() + File.separator + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf");
-                }
-                // --------浠ヤ笂-------  鏍规嵁鏁版嵁搴撲腑鐨勬ā鏉夸簩杩涘埗鏂囦欢  杞琾df  鍒涘缓鏂囦欢澶�  灏唒df鏀捐繘鏈湴鏂囦欢澶�
-
-
-                LambdaQueryWrapper<TjCustomer> wq1 = new LambdaQueryWrapper<>();
-                wq1.eq(TjCustomer::getCusId, tjOrder.getUserId());
-                TjCustomer tjCustomer = tjCustomerService.getOne(wq1);
-                LambdaQueryWrapper<DictComp> wq111 = new LambdaQueryWrapper<>();
-                wq111.eq(DictComp::getDrugManufacturerId, tjOrder.getFirmId());
-                DictComp dictComp = dictCompService.getOne(wq111);
-                LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>();
-                wq2.eq(TjOrderDetail::getOrderId, tjOrder.getOrderId());
-                //20230306鍒ゆ柇璇ラ」鐩槸鍚﹂��璐�/缂磋垂
-                wq2.isNotNull(TjOrderDetail::getFlowingWaterId);
-                //20230323鍒ゆ柇璇ラ」鐩槸鍚﹀純妫�/鏈
-//                wq2.eq(TjOrderDetail::getTjStatus,1);
-                List<TjOrderDetail> list = tjOrderDetailService.list(wq2);
-                for (TjOrderDetail tjOrderDetail : list) {
-                    TjProject tjProject = projectService.selectTjProjectByProId(tjOrderDetail.getProId());
-                    tjOrderDetail.setProject(tjProject);
-                }
-
-                String inputFileName = value + File.separator + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf";
-                String outputFileName = value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf";
-                OutputStream os = null;
-                PdfStamper ps = null;
-                PdfReader reader = null;
-                File file = new File(outputFileName);
-                try {
-                    os = Files.newOutputStream(file.toPath());
-                    // 璇诲叆pdf琛ㄥ崟
-                    reader = new PdfReader(inputFileName);
-                    // 鏍规嵁琛ㄥ崟鐢熸垚涓�涓柊鐨刾df
-                    ps = new PdfStamper(reader, os);
-                    // 鑾峰彇pdf琛ㄥ崟
-                    AcroFields form = ps.getAcroFields();
-                    //璇ュ瓧浣撻�犳垚绫诲瀷涓嶅潎鍖�锛屼絾鏄痯df杞浘鐗囦笉涔辩爜
-                    //BaseFont bf = BaseFont.createFont("C:Windows\\Fonts\\simfang.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
-                    BaseFont bf = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
-                    form.addSubstitutionFont(bf);
-
-                    // 濉厖鏁版嵁缁欒〃鏍�
-                    Map<String, Object> data = new HashMap<>();
-
-                    //濉厖鎬у埆锛氬垽鏂敺濂�
-                    Long cusSex = tjCustomer.getCusSex();
-                    String sex;
-                    String name1;
-                    String tjtype;
-                    if (cusSex == 0) {
-                        sex = "鐢�";
-                        name1 = tjCustomer.getCusName() + "鍏堢敓";
-                    } else {
-                        sex = "濂�";
-                        name1 = tjCustomer.getCusName() + "濂冲+";
-                    }
-                    data.put("name", tjCustomer.getCusName());
-                    data.put("cusId", tjCustomer.getCusId());
-                    data.put("name1", name1);
-                    if ("1".equals(tjOrder.getTjType())) {
-                        tjtype = "鍥㈤槦";
-                        data.put("tjtype", tjtype);
-                    } else {
-                        tjtype = "涓汉";
-                        data.put("tjtype", tjtype);
-                    }
-                    data.put("dstype", "缁熶竴");
-                    data.put("sex", sex);
-                    data.put("age", DateUtil.ageOfNow(tjCustomer.getCusBrithday()));
-                    data.put("tjnumber", tjNumber);
-                    data.put("tjdate", DateUtils.parseDateToStr("yyyy/MM/dd", tjOrder.getCreateTime()));
-                    data.put("phone", tjCustomer.getCusPhone());
-                    data.put("idcard", MatchUtils.hideIdCardNum(tjCustomer.getCusIdcard()));
-                    data.put("num1", list.size());
-                    data.put("num2", 0);
-                    data.put("num3", 4);
-                    if (dictComp == null) {
-                        data.put("work", "鏃�");
-                    } else {
-                        data.put("work", dictComp.getCnName());
-                    }
-                    //灏侀潰椤典笅闈㈢殑鎬绘寤鸿鏄剧ず
-                    if (tjOrder.getCheckAdvice() == null) {
-                        data.put("remark", "鏃�");
-                    } else {
-                        data.put("remark", tjOrder.getCheckAdvice());
-                    }
-                    //灏侀潰椤典笅闈㈢殑鎬绘寤鸿鏄剧ず
-                    if (tjOrder.getCheckDoctor() == null) {
-                        data.put("docname", "鏃�");
-                    } else {
-                        data.put("docname", tjOrder.getCheckDoctor());
-                    }
-                    //寮傚父椤圭洰
-//                    data.put("yichang", "銆�1銆戝眻鍏変笉姝n" +
-//                            "銆�2銆戞墎妗冧綋鑲モ激\n" +
-//                            "銆�3銆戜綋閲嶆寚鏁板饩糪n" +
-//                            "銆�4銆戔編鑴傚紓甯革紙鎬昏儐鍥洪唶澧炩炯锛涒舰娌逛笁閰饩硷級\n" +
-//                            "銆�5銆懳�-饩曟皑閰拌浆绉婚叾澧炩炯锛涘ぉ饣斿啲姘ㄩ吀姘ㄥ熀杞Щ閰跺饩硷紱涓欐皑閰告皑鍩鸿浆绉婚叾澧炩炯\n" +
-//                            "銆�6銆戣交饩勪腑搴﹁剛鑲倽");
-
-                    //鎷兼帴閲嶅ぇ闃虫�х粨鏋�
-                    StringBuffer str = new StringBuffer();
-                    str.append("銆愰噸澶ч槼鎬ч」鐩�慭n");
-                    LambdaQueryWrapper<TjBigPositive> bigPositiveLambdaQueryWrapper = new LambdaQueryWrapper<>();
-                    bigPositiveLambdaQueryWrapper.eq(TjBigPositive::getTjNumber, tjNumber);
-                    final List<TjBigPositive> list1 = tjBigPositiveService.list(bigPositiveLambdaQueryWrapper);
-                    if (list1 != null && list1.size() > 0) {
-                        for (int i = 0; i < list1.size(); i++) {
-                            str.append((i + 1) + "銆�" + list1.get(i).getProName() + ";\n");
-                        }
-                    } else {
-                        str.append("    鏃狅紱\n");
-                    }
-                    //鎷兼帴寮傚父椤圭洰
-                    str.append("銆愬紓甯告儏鍐甸」鐩�慭n");
-                    if (list.size() > 0) {
-                        for (int i = 0; i < list.size(); i++) {
-                            if (list.get(i).getExceptionDesc() == 1) {
-                                str.append((i + 1) + "銆�" + projectService.getById(list.get(i).getProId()).getProName() + ";\n");
-                            }
-                        }
-                    } else {
-                        str.append("    鏃狅紱\n");
-                    }
-
-                    //寮傚父椤圭洰
-                    data.put("yichang", str.toString());
-
-                    // 閬嶅巻data 缁檖df琛ㄥ崟琛ㄦ牸璧嬪��
-                    for (String key : data.keySet()) {
-                        form.setField(key, data.get(key).toString());
-                    }
-                    //璁剧疆涓烘棤娉曠紪杈�
-                    ps.setFormFlattening(true);
-                    ps.close();
-                    os.close();
-                    reader.close();
-
-                    //====================================浠ヤ笂灏侀潰椤碉紝浠ヤ笅璇︽儏椤�
-                    //鏂囨。瀵硅薄  瀹炵幇A4绾搁〉闈�
-                    Document document = new Document(PageSize.A4);
-                    //document.setMarginMirroring(true);
-                    //璁剧疆鏂囨。鐨勯〉杈硅窛灏辨槸璺濈椤甸潰杈逛笂鐨勮窛绂伙紝鍒嗗埆涓猴細宸﹁竟璺濓紝鍙宠竟璺濓紝涓婅竟璺濓紝涓嬭竟璺�
-                    document.setMargins(70, 70, 40, 40);
-                    //鐢熸垚pdf鐨勪綅缃互鍙婂悕绉�
-                    String fileName = value + File.separator + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf";
-                    OutputStream outputStream = Files.newOutputStream(Paths.get(fileName));
-                    PdfWriter pdfWriter = PdfWriter.getInstance(document, outputStream);
-
-                    //pdfWriter.setPageEvent(new MyHeaderFooter());// 椤电湁椤佃剼
-
-                    document.open();
-
-                    document.add(new Header("鍋ュ悍浣撴缁撴灉", "鍋ュ悍浣撴缁撴灉"));
-
-
-                    Map<TjOrderRemark, List<TjPdfVO>> tjOrderRemarkObjectMap = addTable(tjNumber);
-                    Map<TjOrderRemark, List<TjPdfVO>> tjOrderRemarkListMap = addHuaYanTable(tjNumber);
-                    tjOrderRemarkObjectMap.putAll(tjOrderRemarkListMap);
-                    for (Map.Entry<TjOrderRemark, List<TjPdfVO>> entry : tjOrderRemarkObjectMap.entrySet()) {
-                        List<TjPdfVO> value = entry.getValue();
-                        LambdaQueryWrapper<TjProject> wqqq = new LambdaQueryWrapper<>();
-                        wqqq.eq(TjProject::getProId, entry.getKey().getProId());
-                        TjProject one11 = projectService.getOne(wqqq);
-                        //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛�
-                        if (null != one11 && "N".equals(one11.getNeedReport())) {
-                            continue;
-                        }
-                        String titleName = null;
-                        if (null != one11 && "1".equals(one11.getResultType())) {
-                            titleName = one11.getProName();
-                            // 璁剧疆鏍囬瀛椾綋鏍峰紡
-                            Font titleFonts = PdfUtils.setFont(9);
-                            Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName);
-
-                            String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉"};
-                            // 鑾峰彇鍒楄〃鏁版嵁
-                            //璁剧疆琛ㄥご瀛椾綋鏍峰紡
-                            Font headFont = PdfUtils.setFont(9);
-                            // 璁剧疆姝f枃瀛椾綋鏍峰紡锛�12鍙�
-                            Font textFont = PdfUtils.setFont(9);
-                            //鍒涘缓琛ㄦ牸  灏嗚〃澶村瓧浣撳拰姝f枃瀛椾綋鏀捐繘鍘�
-                            PdfPTable table = PdfUtils.setTable1(headFont, textFont, titles, value);
-                            document.add(paragraph);
-                            document.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);
-                                    Font remarkFonts = PdfUtils.setFont(9);
-                                    Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring);
-                                    document.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);
-                                    document.add(pp);
-                                }
-                            } else {
-                                Font remarkFonts = PdfUtils.setFont(9);
-                                Paragraph pp = PdfUtils.setParagraph(remarkFonts, remark);
-                                document.add(pp);
-                            }
-
-                            //鍒ゆ柇涓绘鍖诲笀鏄惁涓虹┖  绌轰笉鑳芥樉绀簄ull
-                            if (null != entry.getKey().getDoctorName() && null != userService.getById(entry.getKey().getDoctorName())) {
-                                //涓绘鍖诲笀
-                                String doctorName = "涓绘鍖诲笀锛�" + userService.getById(entry.getKey().getDoctorName()).getNickName();
-                                Font doctorFonts = PdfUtils.setFont(9);
-                                Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName);
-                                df.setAlignment(Element.ALIGN_RIGHT);
-                                document.add(df);
-                            } else {
-                                String doctorName = "涓绘鍖诲笀锛�" + "鏃�";
-                                Font doctorFonts = PdfUtils.setFont(9);
-                                Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName);
-                                df.setAlignment(Element.ALIGN_RIGHT);
-                                document.add(df);
-
-                            }
-
-                            //鍒嗗壊绾�
-                            LineSeparator objectName = new LineSeparator();
-                            document.add(objectName);
-                        } else {
-                            if (null != one11) {
-                                titleName = one11.getProName();
-                            } else {
-                                titleName = entry.getKey().getProName();
-                            }
-
-                            // 璁剧疆鏍囬瀛椾綋鏍峰紡
-                            Font titleFonts = PdfUtils.setFont(9);
-                            Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName);
-
-                            String[] titles = {"浣撴椤圭洰", "浣撴缁撴灉", "鍗曚綅", "鍙傝�冭寖鍥�"};
-                            // 鑾峰彇鍒楄〃鏁版嵁
-                            //璁剧疆琛ㄥご瀛椾綋鏍峰紡
-                            Font headFont = PdfUtils.setFont(9);
-                            // 璁剧疆姝f枃瀛椾綋鏍峰紡锛�12鍙�
-                            Font textFont = PdfUtils.setFont(9);
-                            //鍒涘缓琛ㄦ牸  灏嗚〃澶村瓧浣撳拰姝f枃瀛椾綋鏀捐繘鍘�
-                            PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value,dictHosp.equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌"));
-                            document.add(paragraph);
-                            document.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);
-                                    Font remarkFonts = PdfUtils.setFont(9);
-                                    Paragraph pp = PdfUtils.setParagraph(remarkFonts, substring);
-                                    document.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);
-                                    document.add(pp);
-                                }
-                            } else {
-                                Font remarkFonts = PdfUtils.setFont(9);
-                                Paragraph pp = PdfUtils.setParagraph(remarkFonts, remark);
-                                document.add(pp);
-                            }
-
-                            //鍒ゆ柇涓绘鍖诲笀鏄惁涓虹┖  绌轰笉鑳芥樉绀簄ull
-                            if (null != entry.getKey().getDoctorName() && null != userService.getById(entry.getKey().getDoctorName())) {
-                                //涓绘鍖诲笀
-                                String doctorName = "涓绘鍖诲笀锛�" + userService.getById(entry.getKey().getDoctorName()).getNickName();
-                                Font doctorFonts = PdfUtils.setFont(9);
-                                Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName);
-                                df.setAlignment(Element.ALIGN_RIGHT);
-                                document.add(df);
-                            } else {
-                                String doctorName = "涓绘鍖诲笀锛�" + "鏃�";
-                                Font doctorFonts = PdfUtils.setFont(9);
-                                Paragraph df = PdfUtils.setParagraph(doctorFonts, doctorName);
-                                df.setAlignment(Element.ALIGN_RIGHT);
-                                document.add(df);
-                            }
-                            //鍒嗗壊绾�
-                            LineSeparator objectName = new LineSeparator();
-                            document.add(objectName);
-                        }
-                    }
-                    document.close();
-                    pdfWriter.close();
-                    outputStream.close();
-
-//                    LambdaQueryWrapper<TjReport> rtwq1 = new LambdaQueryWrapper<>();
-//                    rtwq1.eq(TjReport::getType, "鍖诲鍚嶈瘝");
-////                    rtwq1.eq(TjReport::getTjNumber, tjNumber);
-//                    TjReport one11111 = tjReportService.getOne(rtwq1);
-//                    if(null !=one11111){
-//                        String report1 = one11111.getReport();
-//                        PDFBinaryUtil.base64StringToPDF(report1, FileUtil.mkdir(value).getPath() + File.separator + userId + "鍖诲鍚嶈瘝.pdf");
-//                    }
-
-                    LambdaQueryWrapper<TjReport> rtwq = new LambdaQueryWrapper<>();
-                    rtwq.eq(TjReport::getType, "蹇冪數鍥�");
-                    rtwq.eq(TjReport::getTjNumber, tjNumber);
-                    TjReport one1111 = tjReportService.getOne(rtwq);
-                    if (null != one1111) {
-                        String report = one1111.getReport();
-                        PDFBinaryUtil.base64StringToPDF(report, FileUtil.mkdir(value).getPath() + File.separator + tjNumber + userId + "蹇冪數鍥�.pdf");
-                    }
-
-                    LambdaQueryWrapper<TjReport> rtwq12 = new LambdaQueryWrapper<>();
-                    rtwq12.eq(TjReport::getType, "闄勪欢");
-                    rtwq12.eq(TjReport::getTjNumber, tjNumber);
-                    TjReport one111112 = tjReportService.getOne(rtwq12);
-                    if (null != one111112) {
-                        String report12 = one111112.getReport();
-                        PDFBinaryUtil.base64StringToPDF(report12, FileUtil.mkdir(value).getPath() + File.separator + tjNumber + userId + "闄勪欢.pdf");
-                    }
-
-                    //鍚堝苟
-                    String[] files1 = null;
-                    if (one1111 != null) {
-                        if (one111112 != null) {
-                            files1 = new String[]{value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + File.separator + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + File.separator + tjNumber + userId + "闄勪欢.pdf", value + File.separator + tjNumber + userId + "蹇冪數鍥�.pdf"};
-                        } else {
-                            files1 = new String[]{value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + File.separator + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + File.separator + tjNumber + userId + "蹇冪數鍥�.pdf"};
-                        }
-                    } else {
-                        if (one111112 != null) {
-                            files1 = new String[]{value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + File.separator + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + File.separator + tjNumber + userId + "闄勪欢.pdf"};
-                        } else {
-                            files1 = new String[]{value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + File.separator + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf"};
-                        }
-                    }
-                    //鍚堝苟
-//                    String[] files1 = {value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + File.separator + userId + tjNumber+"浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + File.separator +tjNumber+ userId + "闄勪欢.pdf", value + File.separator + tjNumber + userId + "蹇冪數鍥�.pdf"};
-                    String outputPath1 = value + File.separator;
-                    String outputFileName1 = userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf";
-
-                    File file1 = new File(outputPath1 + outputFileName1);
-                    List<File> f = new ArrayList<>();
-                    for (String s : files1) {
-                        f.add(new File(s));
-                    }
-                    MergePdf.mergeFileToPDF(f, file1);
-
-                    TjReport tjReport = new TjReport();
-                    tjReport.setTjNumber(String.valueOf(tjNumber));
-                    tjReport.setPath(urlValue + outputFileName1);
-                    String pdfBinary = getPDFBinary(outputPath1 + outputFileName1);
-                    tjReport.setReport(pdfBinary);
-                    tjReport.setType("浣撴鎶ュ憡");
-                    tjReport.setPrint("pdf");
-                    tjReportService.save(tjReport);
-
-                    //FileUtil.del(value + File.separator + tjNumber + "浣撴鎶ュ憡.pdf");
-                    //FileUtil.del(value + File.separator + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf");
-                    //FileUtil.del(value + File.separator + userId +tjNumber+ "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf");
-                    //FileUtil.del(value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf");
-                    //FileUtil.del(value + File.separator + userId + "蹇冪數鍥�.pdf");
-
-
-                    //淇敼order琛ㄤ腑鐨勬墦鍗版姤鍛婃椂闂翠负褰撳墠鏃堕棿
-                    LambdaUpdateWrapper<TjOrder> updateWrapper = new LambdaUpdateWrapper<>();
-                    updateWrapper.eq(TjOrder::getTjNumber, tjNumber);
-                    updateWrapper.set(TjOrder::getReportTime, new Date());
-                    updateWrapper.set(TjOrder::getPrintLastTime, new Date());
-                    updateWrapper.set(TjOrder::getDownloadLastTime, new Date());
-                    updateWrapper.set(TjOrder::getStatus, TjConstants.TJ_END);
-                    tjOrderService.update(updateWrapper);
-                    long entTime = System.currentTimeMillis();
-                    System.out.println(entTime - startTime + "ms");
-                    return AjaxResult.success("宸茬敓鎴愭姤鍛婏紒鍙洿鎺ョ偣鍑婚瑙堬紒");
-
-                } catch (Exception e) {
-                    e.printStackTrace();
-                    return AjaxResult.success("PDF瀵煎嚭澶辫触");
-                } finally {
-//                    transitionService.deletedTbTransitionListByCusIdAndTjNum(tjCustomer.getCusIdcard(), tjOrder.getCardId());
-                }
-            }
-        }
-        return null;
     }
 
 
@@ -1733,24 +976,23 @@
 
     @GetMapping("/preview/{flag}/{TjNumber}")
     @ApiOperation(value = "涓嬭浇浣撴鎶ュ憡")
-    public void preview(HttpServletResponse response, @PathVariable("flag") boolean flag, @PathVariable("TjNumber") String tjNumber) {
+    public void preview(HttpServletResponse response, @PathVariable("flag") boolean flag, @PathVariable("TjNumber") String tjNumber) throws IOException {
         TjOrder tjOrder = tjOrderService.getOrderByTjNum(tjNumber);
         TjCustomer tjCustomer = tjCustomerService.getById( tjOrder.getUserId());
-        LambdaQueryWrapper<TjReport> we = new LambdaQueryWrapper<>();
-        we.eq(TjReport::getTjNumber, tjNumber);
-        we.eq(TjReport::getType, "浣撴鎶ュ憡");
-        TjReport one = tjReportService.getOne(we);
-        if (one == null) {
-            return;
-        }
-        String userId = SecurityUtils.getLoginUser().getUsername();
-        PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + File.separator + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf");
-        String filePath = value + File.separator + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf";
+//        LambdaQueryWrapper<TjReport> we = new LambdaQueryWrapper<>();
+//        we.eq(TjReport::getTjNumber, tjNumber);
+//        we.eq(TjReport::getType, "浣撴鎶ュ憡");
+//        TjReport one = tjReportService.getOne(we);
+//        if (one == null) {
+//            return;
+//        }
+        String key = DataSourceContextHolder.getDataSourceKey();
+        key = key.replace("ltkjpeis10_","");
+//        String userId = SecurityUtils.getLoginUser().getUsername();
+//        PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + File.separator + key + File.separator + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf");
+        String filePath = value + File.separator + key + File.separator + tjCustomer.getCusId() + tjNumber + tjCustomer.getCusName() + "_鎶ュ憡.pdf";
+        log.info("棰勮鎶ュ憡 ->{}",filePath);
         File f = new File(filePath);
-        if (filePath.isEmpty()) {
-            System.out.println("鏂囦欢涓嶅瓨鍦紒");
-            return;
-        }
         BufferedInputStream br = null;
         OutputStream out = null;
         FileInputStream fileInputStream = null;
@@ -1763,33 +1005,21 @@
             if (flag) {
                 // 鍦ㄧ嚎鎵撳紑鏂瑰紡
                 URL u = new URL("file:///" + filePath);
-                //System.out.println(u);
                 String contentType = u.openConnection().getContentType();
                 response.setContentType(contentType);
                 response.setHeader("Content-Disposition", "inline;filename="
-                        + userId + tjNumber + ".pdf");
+                        + tjCustomer.getCusId() + tjNumber + ".pdf");
             } else {
                 // 绾笅杞芥柟寮�
                 response.setContentType("application/x-msdownload");
                 response.setContentType("application/pdf;charset=utf-8");
                 response.setHeader("Content-Disposition", "attachment;filename="
-                        + userId + tjNumber + ".pdf");
+                        + tjCustomer.getCusId() + tjNumber + ".pdf");
             }
             out = response.getOutputStream();
             while ((len = br.read(bs)) > 0) {
                 out.write(bs, 0, len);
             }
-//            if(null !=tjOrder.getHeshouTime() && tjOrder.getHeshouStatus()==1){
-//                TjReportPrint print=new TjReportPrint();
-//                print.setTjNumber(tjNumber);
-//                print.setPrintBy(SecurityUtils.getLoginUser().getUser().getNickName());
-//                print.setPrintTime(date);
-//                print.setPrintStatus("宸叉墦鍗�");
-//                if (printService.save(print)) {
-//                    tjOrder.setPrintLastTime(date);
-//                    tjOrderService.updateById(tjOrder);
-//                }
-//            }
             out.flush();
             out.close();
             br.close();
@@ -1797,6 +1027,7 @@
         } catch (IOException e) {
             e.printStackTrace();
             //System.out.println("pdf澶勭悊鏂囦欢寮傚父" + e);
+//            response.sendError(HttpServletResponse.SC_NOT_FOUND);
         } finally {
             if (out != null) {
                 try {
@@ -1827,15 +1058,13 @@
         if (one == null) {
             return;
         }
+        String key = DataSourceContextHolder.getDataSourceKey();
+        key = key.replace("ltkjpeis10_","");
 
-        String userId = SecurityUtils.getLoginUser().getUsername();
-        PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + File.separator + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf");
-        String filePath = value + File.separator + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf";
+//        String userId = SecurityUtils.getLoginUser().getUsername();
+//        PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + File.separator + key + File.separator + tjCustomer.getCusId() + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf");
+        String filePath = value + File.separator + key + File.separator + tjCustomer.getCusId() + tjNumber + tjCustomer.getCusName() + "_鎶ュ憡.pdf";
         File f = new File(filePath);
-        if (filePath.isEmpty()) {
-            System.out.println("鏂囦欢涓嶅瓨鍦紒");
-            return;
-        }
         BufferedInputStream br = null;
         OutputStream out = null;
         FileInputStream fileInputStream = null;
@@ -1852,13 +1081,13 @@
                 String contentType = u.openConnection().getContentType();
                 response.setContentType(contentType);
                 response.setHeader("Content-Disposition", "inline;filename="
-                        + userId + tjNumber + ".pdf");
+                        + tjCustomer.getCusId() + tjNumber + ".pdf");
             } else {
                 // 绾笅杞芥柟寮�
                 response.setContentType("application/x-msdownload");
                 response.setContentType("application/pdf;charset=utf-8");
                 response.setHeader("Content-Disposition", "attachment;filename="
-                        + userId + tjNumber + ".pdf");
+                        + tjCustomer.getCusId() + tjNumber + ".pdf");
             }
             out = response.getOutputStream();
             while ((len = br.read(bs)) > 0) {

--
Gitblit v1.8.0