From a2d12d52275c9fc34277d3e41c662a5ea9fb597f Mon Sep 17 00:00:00 2001
From: lige <bestlige@outlook.com>
Date: 星期三, 24 一月 2024 10:11:44 +0800
Subject: [PATCH] 报告合并判断心电图和附件

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java |  165 ++++++++++++++++++++++++++++++++----------------------
 1 files changed, 97 insertions(+), 68 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 6b0809c..2ea25c9 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
@@ -72,8 +72,6 @@
     @Resource
     private ITjStandardService tjStandardService;
     @Resource
-    private ITjAdviceService tjAdviceService;
-    @Resource
     private IDictCompService dictCompService;
     @Resource
     private ITjReportTemplateService reportTemplateService;
@@ -90,6 +88,40 @@
 
     @Autowired
     private ISysDictDataService dictDataService;
+    @Resource
+    private ITbTransitionService transitionService;
+
+    @GetMapping("/savePdf")
+    @ApiOperation(value = "浠庢湰鍦板瓨鍌ㄦā鏉垮埌鏁版嵁搴�")
+    public AjaxResult savePdf() {
+        //浠庢枃浠跺湴鍧�璇诲叆PDF鏂囦欢  浠呭瓨鍌ㄤ竴娆�
+        String base64String = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\浣撴妯℃澘4.pdf");
+        TjReportTemplate tem = new TjReportTemplate();
+        tem.setName("浣撴鎶ュ憡妯℃澘4");
+        tem.setRemark("浣撴鎶ュ憡妯℃澘4");
+        tem.setTemplate(base64String);
+        tem.setFlag("1");
+        tem.setOpen("0");
+        final boolean save = reportTemplateService.save(tem);
+        if(save){
+            return AjaxResult.success("淇濆瓨鎴愬姛");
+        }
+        return AjaxResult.success("淇濆瓨澶辫触");
+//        String base64String2 = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\蹇冪數鍥�1.pdf");
+//        TjReport tem2 = new TjReport();
+//        tem2.setTjNumber(tjNumber);
+//        tem2.setReport(base64String2);
+//        tem2.setType("蹇冪數鍥�");
+//        tjReportService.save(tem2);
+//
+//        String base64String1 = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\闄勪欢2.pdf");
+//        TjReport tem1 = new TjReport();
+//        tem1.setTjNumber(tjNumber);
+//        tem1.setReport(base64String1);
+//        tem1.setType("闄勪欢");
+//        tjReportService.save(tem1);
+
+    }
 
 
     //    /* *//**
@@ -227,49 +259,15 @@
     @Transactional
     public AjaxResult toPdf(@PathVariable("TjNumber") @ApiParam(value = "浣撴鍙�") String tjNumber) {
 
-        //浠庢枃浠跺湴鍧�璇诲叆PDF鏂囦欢  浠呭瓨鍌ㄤ竴娆�
-        // TODO: 2023/3/21 灏嗘ā鏉夸繚瀛樺埌鏁版嵁搴� 涓�娆′娇鐢ㄥ悗娉ㄩ噴
-//        String base64String = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\浣撴妯℃澘4.pdf");
-//        TjReportTemplate tem = new TjReportTemplate();
-//        tem.setName("浣撴鎶ュ憡妯℃澘4");
-//        tem.setRemark("浣撴鎶ュ憡妯℃澘4");
-//        tem.setTemplate(base64String);
-//        tem.setFlag("1");
-//        tem.setOpen("0");
-//        reportTemplateService.save(tem);
-//        // TODO: 2023/3/21 灏嗗績鐢靛浘淇濆瓨鍒版暟鎹簱 涓�娆′娇鐢ㄥ悗娉ㄩ噴  鏆傛椂鐢ㄤ簬娴嬭瘯
-//        String base64String2 = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\蹇冪數鍥�1.pdf");
-//        TjReport tem2 = new TjReport();
-//        tem2.setTjNumber(tjNumber);
-//        tem2.setReport(base64String2);
-//        tem2.setType("蹇冪數鍥�");
-//        tjReportService.save(tem2);
-//
-//        String base64String1 = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\闄勪欢2.pdf");
-//        TjReport tem1 = new TjReport();
-//        tem1.setTjNumber(tjNumber);
-//        tem1.setReport(base64String1);
-//        tem1.setType("闄勪欢");
-//        tjReportService.save(tem1);
-//
-//        String base64String3 = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\鍖诲鍚嶈瘝.pdf");
-//        TjReport tem3 = new TjReport();
-//        tem3.setTjNumber(tjNumber);
-//        tem3.setReport(base64String3);
-//        tem3.setType("鍖诲鍚嶈瘝");
-//        tjReportService.save(tem3);
-
-
         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<>();
@@ -290,12 +288,13 @@
                 }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);
             }
-
-
-            tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getOpen, 0);
-            TjReportTemplate one1 = reportTemplateService.getOne(tjReportTemplateLambdaQueryWrapper);
-            String template = one1.getTemplate();
+            String template = reportTemplate.getTemplate();
 
             String userId = SecurityUtils.getLoginUser().getUsername();
             PDFBinaryUtil.base64StringToPDF(template, FileUtil.mkdir(value).getPath() + "\\" + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf");
@@ -403,12 +402,15 @@
                         data.put("docname", tjOrder.getCheckDoctor());
                     }
                     //寮傚父椤圭洰
-                    data.put("yichang", "銆�1銆戝眻鍏変笉姝n" +
-                            "銆�2銆戞墎妗冧綋鑲モ激\n" +
-                            "銆�3銆戜綋閲嶆寚鏁板饩糪n" +
-                            "銆�4銆戔編鑴傚紓甯革紙鎬昏儐鍥洪唶澧炩炯锛涒舰娌逛笁閰饩硷級\n" +
-                            "銆�5銆懳�-饩曟皑閰拌浆绉婚叾澧炩炯锛涘ぉ饣斿啲姘ㄩ吀姘ㄥ熀杞Щ閰跺饩硷紱涓欐皑閰告皑鍩鸿浆绉婚叾澧炩炯\n" +
-                            "銆�6銆戣交饩勪腑搴﹁剛鑲倽");
+//                    data.put("yichang", "銆�1銆戝眻鍏変笉姝n" +
+//                            "銆�2銆戞墎妗冧綋鑲モ激\n" +
+//                            "銆�3銆戜綋閲嶆寚鏁板饩糪n" +
+//                            "銆�4銆戔編鑴傚紓甯革紙鎬昏儐鍥洪唶澧炩炯锛涒舰娌逛笁閰饩硷級\n" +
+//                            "銆�5銆懳�-饩曟皑閰拌浆绉婚叾澧炩炯锛涘ぉ饣斿啲姘ㄩ吀姘ㄥ熀杞Щ閰跺饩硷紱涓欐皑閰告皑鍩鸿浆绉婚叾澧炩炯\n" +
+//                            "銆�6銆戣交饩勪腑搴﹁剛鑲倽");
+
+                    //寮傚父椤圭洰
+                    data.put("yichang", "");
 
                     // 閬嶅巻data 缁檖df琛ㄥ崟琛ㄦ牸璧嬪��
                     for (String key : data.keySet()) {
@@ -427,11 +429,11 @@
                     //璁剧疆鏂囨。鐨勯〉杈硅窛灏辨槸璺濈椤甸潰杈逛笂鐨勮窛绂伙紝鍒嗗埆涓猴細宸﹁竟璺濓紝鍙宠竟璺濓紝涓婅竟璺濓紝涓嬭竟璺�
                     document.setMargins(70, 70, 40, 40);
                     //鐢熸垚pdf鐨勪綅缃互鍙婂悕绉�
-                    String fileName = value + "\\" + userId + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf";
+                    String fileName = value + "\\" + userId +tjNumber+ "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf";
                     OutputStream outputStream = Files.newOutputStream(Paths.get(fileName));
                     PdfWriter pdfWriter = PdfWriter.getInstance(document, outputStream);
 
-                    pdfWriter.setPageEvent(new MyHeaderFooter());// 椤电湁椤佃剼
+                    //pdfWriter.setPageEvent(new MyHeaderFooter());// 椤电湁椤佃剼
 
                     document.open();
 
@@ -444,7 +446,11 @@
                         LambdaQueryWrapper<TjProject> wqqq = new LambdaQueryWrapper<>();
                         wqqq.eq(TjProject::getProId, entry.getKey().getProId());
                         TjProject one11 = projectService.getOne(wqqq);
-                        if ("1".equals(one11.getProCheckMethod())) {
+                        //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛�
+                        if ("N".equals(one11.getNeedReport())){
+                            continue;
+                        }
+                        if ("1".equals(one11.getResultType())) {
                             String titleName = one11.getProName();
                             // 璁剧疆鏍囬瀛椾綋鏍峰紡
                             Font titleFonts = PdfUtils.setFont(9);
@@ -576,31 +582,50 @@
                     pdfWriter.close();
                     outputStream.close();
 
-                    // TODO: 2023/3/29  鏌ヨ闄勪欢pdf 濡傚績鐢靛浘銆侀檮浠�
-                    LambdaQueryWrapper<TjReport> rtwq1 = new LambdaQueryWrapper<>();
-                    rtwq1.eq(TjReport::getType, "鍖诲鍚嶈瘝");
-//                    rtwq1.eq(TjReport::getTjNumber, tjNumber);
-                    TjReport one11111 = tjReportService.getOne(rtwq1);
-                    String report1 = one11111.getReport();
-                    PDFBinaryUtil.base64StringToPDF(report1, FileUtil.mkdir(value).getPath() + "\\" + userId + "鍖诲鍚嶈瘝.pdf");
+//                    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() + "\\" + userId + "鍖诲鍚嶈瘝.pdf");
+//                    }
 
                     LambdaQueryWrapper<TjReport> rtwq = new LambdaQueryWrapper<>();
                     rtwq.eq(TjReport::getType, "蹇冪數鍥�");
 //                    rtwq.eq(TjReport::getTjNumber, tjNumber);
                     TjReport one1111 = tjReportService.getOne(rtwq);
-                    String report = one1111.getReport();
-                    PDFBinaryUtil.base64StringToPDF(report, FileUtil.mkdir(value).getPath() + "\\" + userId + "蹇冪數鍥�.pdf");
+                    if(null !=one1111){
+                        String report = one1111.getReport();
+                        PDFBinaryUtil.base64StringToPDF(report, FileUtil.mkdir(value).getPath() + "\\" +tjNumber+ userId + "蹇冪數鍥�.pdf");
+                    }
 
                     LambdaQueryWrapper<TjReport> rtwq12 = new LambdaQueryWrapper<>();
                     rtwq12.eq(TjReport::getType, "闄勪欢");
 //                    rtwq12.eq(TjReport::getTjNumber, tjNumber);
                     TjReport one111112 = tjReportService.getOne(rtwq12);
-                    String report12 = one111112.getReport();
-                    PDFBinaryUtil.base64StringToPDF(report12, FileUtil.mkdir(value).getPath() + "\\" + userId + "闄勪欢.pdf");
-
+                    if(null !=one111112){
+                        String report12 = one111112.getReport();
+                        PDFBinaryUtil.base64StringToPDF(report12, FileUtil.mkdir(value).getPath() + "\\" +tjNumber+ userId + "闄勪欢.pdf");
+                    }
 
                     //鍚堝苟
-                    String[] files1 = {value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + "\\" + userId + "鍖诲鍚嶈瘝.pdf", value + "\\" + userId + "闄勪欢.pdf", value + "\\" + userId + "蹇冪數鍥�.pdf"};
+                    String[] files1=null;
+                    if (one1111!=null ){
+                        if (one111112!=null){
+                            files1 = new String[ ]{value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + "\\" + tjNumber + userId + "闄勪欢.pdf", value + "\\" + tjNumber + userId + "蹇冪數鍥�.pdf"};
+                        }else {
+                            files1 = new String[]{value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf",value + "\\" + tjNumber + userId + "蹇冪數鍥�.pdf"};
+                        }
+                    }else {
+                        if (one111112!=null){
+                            files1 = new String[]{value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + "\\" + tjNumber + userId + "闄勪欢.pdf"};
+                        }else {
+                            files1 = new String[]{value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf"};
+                        }
+                    }
+                    //鍚堝苟
+//                    String[] files1 = {value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + tjNumber+"浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + "\\" +tjNumber+ userId + "闄勪欢.pdf", value + "\\" + tjNumber + userId + "蹇冪數鍥�.pdf"};
                     String outputPath1 = value + "\\";
                     String outputFileName1 = userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf";
 
@@ -619,10 +644,9 @@
                     tjReport.setType("浣撴鎶ュ憡");
                     tjReportService.save(tjReport);
 
-                    //TODO 2023/2/3 16:21 鐢熸垚浣撴鎶ュ憡pdf鍚庡垹闄ゆ湰鍦版枃浠�
                     //FileUtil.del(value + "\\" + tjNumber + "浣撴鎶ュ憡.pdf");
                     //FileUtil.del(value + "\\" + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf");
-                    //FileUtil.del(value + "\\" + userId + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf");
+                    //FileUtil.del(value + "\\" + userId +tjNumber+ "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf");
                     //FileUtil.del(value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf");
                     //FileUtil.del(value + "\\" + userId + "蹇冪數鍥�.pdf");
 
@@ -641,6 +665,8 @@
                 } catch (Exception e) {
                     e.printStackTrace();
                     return AjaxResult.success("PDF瀵煎嚭澶辫触");
+                }finally {
+                    transitionService.deletedTbTransitionListByCusIdAndTjNum(tjCustomer.getCusIdcard(),tjOrder.getCardId());
                 }
             }
         }
@@ -1378,13 +1404,16 @@
         LambdaQueryWrapper<TjOrder> wqq = new LambdaQueryWrapper<>();
         wqq.like(TjOrder::getUserId, cusId);
         List<TjOrder> orderList = tjOrderService.list(wqq);
-        if (orderList!=null){
+        if (orderList!=null && orderList.size()>0){
             for (TjOrder tjOrder : orderList) {
                 if (tjOrder!=null){
                     LambdaQueryWrapper<TjReport> wq = new LambdaQueryWrapper<>();
                     wq.eq(TjReport::getTjNumber, tjOrder.getTjNumber());
                     wq.eq(TjReport::getType,"浣撴鎶ュ憡");
-                    res.add(tjReportService.getOne(wq));
+                    TjReport one = tjReportService.getOne(wq);
+                    if(null !=one){
+                        res.add(one);
+                    }
                 }
             }
             return AjaxResult.success(res);

--
Gitblit v1.8.0