From d759650d617699c78810f051b8f4a086aa7b9a6c Mon Sep 17 00:00:00 2001
From: 赵文轩 <1652863494@qq.com>
Date: 星期一, 17 六月 2024 14:40:51 +0800
Subject: [PATCH] 打印pdf调用his工具

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java |   87 ++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 81 insertions(+), 6 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 584dc8d..06b92e0 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
@@ -6,6 +6,7 @@
 import java.nio.file.Files;
 import java.nio.file.Paths;
 import java.text.NumberFormat;
+import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -38,6 +39,7 @@
 import com.ltkj.web.config.pdfutils.MyHeaderFooter;
 import com.ltkj.web.config.pdfutils.PDFBinaryUtil;
 import com.ltkj.web.config.pdfutils.PdfUtils;
+import com.ltkj.web.controller.his.HisPDFUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -100,6 +102,8 @@
 
     @Autowired
     private ITjBigPositiveService tjBigPositiveService;
+    @Autowired
+    private HisPDFUtil hisPDFUtil;
 
     @GetMapping("/savePdf")
     @ApiOperation(value = "浠庢湰鍦板瓨鍌ㄦā鏉垮埌鏁版嵁搴�")
@@ -287,15 +291,86 @@
 //        remarkVo.setProId("1633660948860522555");
 //        updateOrderRemarkVos.add(remarkVo);
 //        tjCheckController.checkUpdateOrderRemark(updateOrderRemarkVos);
-        System.out.println("---------------------------------------newFun寮�濮�--------------------------------------------------");
-        error = newFun(tjNumber);
-        System.out.println("-------------------------------------------缁撴潫----------------------------------------------");
+//        System.out.println("---------------------------------------newFun寮�濮�--------------------------------------------------");
+        // 浠ュ墠娴嬭瘯pdf鏂规硶
+//        error = newFun(tjNumber);
+//        System.out.println("-------------------------------------------缁撴潫----------------------------------------------");
         // 鎾ら攢
 //        revocationReport(tjNumber);
-        if (error != null) {
-            return error;
+//        if (error != null) {
+//            return error;
+//        }
+//        return AjaxResult.success("璇ョ敤鎴蜂綋妫�鏈畬鎴愶紝涓嶈兘鎵撳嵃鎶ュ憡锛侊紒锛�");
+        int num = tjOrderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber);
+        if (num > 0) {
+            return AjaxResult.error("鏈夊欢鏈熼」鐩殏涓嶈兘鐢熸垚鎶ュ憡!!!");
         }
-        return AjaxResult.success("璇ョ敤鎴蜂綋妫�鏈畬鎴愶紝涓嶈兘鎵撳嵃鎶ュ憡锛侊紒锛�");
+        //鍒ゆ柇琛ㄤ腑鏈夋病鏈夎浣撴鎶ュ憡  涓嶈兘閲嶅鐢熸垚
+        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("璇ュ鎴锋姤鍛婂凡鐢熸垚锛佷笉鑳介噸澶嶇敓鎴愶紒鍙洿鎺ラ瑙堟垨鎵撳嵃锛�");
+        }
+        String configByKey = configService.selectConfigByKey("sfkqdyhis");
+        if (configByKey.equals("Y")) {
+            LambdaQueryWrapper<TjOrder> queryWrapper = new LambdaQueryWrapper<>();
+            queryWrapper.eq(TjOrder::getTjNumber, tjNumber);
+            TjOrder tjOrder = tjOrderService.getOne(queryWrapper);
+            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);
+                }
+                Integer checkStatus = tjOrder.getCheckStatus();
+                if (checkStatus == 1) {
+                    String hisRegistrationId = tjOrder.getCardId();
+                    Date createTime = tjOrder.getCreateTime();
+                    Date finishTime = tjOrder.getFinishTime();
+                    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                    String ksrq = dateFormat.format(createTime);
+                    String jsrq = dateFormat.format(finishTime);
+                    HashMap<String, Object> params = new HashMap<>();
+                    params.put("his_registration_id", hisRegistrationId);
+                    params.put("ksbm", "");
+                    params.put("pationid", "");
+                    params.put("ksrq", ksrq);
+                    params.put("jsrq", jsrq);
+                    params.put("pagecount", 100);
+                    params.put("page", 1);
+                    HashMap<String, Object> map = new HashMap<>();
+                    return hisPDFUtil.execHisRequest(map, params, tjOrder, reportTemplate);
+                } else {
+                    return AjaxResult.error("璇峰厛鎬绘");
+                }
+            }
+        }
+        return AjaxResult.error();
     }
 
     private AjaxResult newFun(String tjNumber) {

--
Gitblit v1.8.0