From 971162978842f8cf87d34f99da8c529e2e945da8 Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期二, 15 四月 2025 08:46:57 +0800
Subject: [PATCH] zjh20250415

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java |  124 +++++++++++++++++++++++++----------------
 1 files changed, 76 insertions(+), 48 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 ecdeb4e..59a012f 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
@@ -39,6 +39,7 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
+import jodd.util.StringUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -106,24 +107,29 @@
     private IDictHospService dictHospService;
     @Autowired
     private ITjReportPrintService printService;
+    @Autowired
+    private TjOrderYcxmService ycxmService;
 
     @GetMapping("/savePdf")
     @ApiOperation(value = "浠庢湰鍦板瓨鍌ㄦā鏉垮埌鏁版嵁搴�")
     public AjaxResult savePdf() {
         //浠庢枃浠跺湴鍧�璇诲叆PDF鏂囦欢  浠呭瓨鍌ㄤ竴娆�
         String base64String = PDFBinaryUtil.getPDFBinary(configService.selectConfigByKey("default_pdf5Template"));
-        reportTemplateService.remove(new LambdaQueryWrapper<TjReportTemplate>().eq(TjReportTemplate::getName,"浣撴鎶ュ憡妯℃澘5"));
-        TjReportTemplate tem = new TjReportTemplate();
-        tem.setName("浣撴鎶ュ憡妯℃澘5");
-        tem.setRemark("浣撴鎶ュ憡妯℃澘5");
-        tem.setTemplate(base64String);
-        tem.setFlag("1");
-        tem.setOpen("0");
-        tem.setCreateTime(DateUtil.date());
-        final boolean save = reportTemplateService.save(tem);
-        if (save) {
-            return AjaxResult.success("淇濆瓨鎴愬姛");
+        if(StringUtil.isNotBlank(base64String)){
+            reportTemplateService.remove(new LambdaQueryWrapper<TjReportTemplate>().eq(TjReportTemplate::getName,"浣撴鎶ュ憡妯℃澘5"));
+            TjReportTemplate tem = new TjReportTemplate();
+            tem.setName("浣撴鎶ュ憡妯℃澘5");
+            tem.setRemark("浣撴鎶ュ憡妯℃澘5");
+            tem.setTemplate(base64String);
+            tem.setFlag("1");
+            tem.setOpen("0");
+            tem.setCreateTime(DateUtil.date());
+            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();
@@ -414,7 +420,7 @@
                     tjOrder.setPrintLastTime(null);
                     tjOrderService.updateById(tjOrder);
 
-                    logger.error("鐢熸垚鎶ュ憡寮傚父");
+                    logger.error(String.valueOf(e));
                     return AjaxResult.error("鐢熸垚鎶ュ憡澶辫触");
                 }
             } else {
@@ -444,8 +450,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);
@@ -1709,7 +1715,7 @@
         we.eq(TjReport::getType, "浣撴鎶ュ憡");
         TjReport one = tjReportService.getOne(we);
         if (one == null) {
-            return AjaxResult.error("鏆傛棤浣撴鎶ュ憡");
+            return AjaxResult.error("鏆傛棤浣撴鎶ュ憡,璇锋挙鍥炲埌鎬绘鏈鏍搁〉闈�,闇�鎬绘鍖荤敓閲嶆柊瀹℃牳骞剁敓鎴愭姤鍛�!");
         }
         if ("pdf".equals(one.getPrint())) {
             res.put("flag", "0");
@@ -1719,7 +1725,7 @@
             res.put("url", one.getPath());
             return AjaxResult.success(res);
         } else {
-            return AjaxResult.error("鏆傛棤浣撴鎶ュ憡");
+            return AjaxResult.error("鏆傛棤浣撴鎶ュ憡,璇锋挙鍥炲埌鎬绘鏈鏍搁〉闈�,闇�鎬绘鍖荤敓閲嶆柊瀹℃牳骞剁敓鎴愭姤鍛�!");
         }
 
     }
@@ -1730,21 +1736,17 @@
     public void preview(HttpServletResponse response, @PathVariable("flag") boolean flag, @PathVariable("TjNumber") String tjNumber) {
         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 userId = SecurityUtils.getLoginUser().getUsername();
+//        PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + File.separator + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf");
+        String filePath = value + 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;
@@ -1761,13 +1763,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) {
@@ -1902,6 +1904,29 @@
         } else {
             return makeReport(tjNumbers);
         }
+    }
+
+
+    @GetMapping("/xiugaidayinzhuangtai")
+    @ApiOperation(value = "淇敼鎵撳嵃鐘舵�佹帴鍙�")
+    @Transactional
+    public AjaxResult xiugaidayinzhuangtai(@RequestParam String tjNumber) {
+        TjOrder order = tjOrderService.getOrderByTjNum(tjNumber);
+        if(null !=order){
+            Date date=new Date();
+            TjReportPrint print=new TjReportPrint();
+            print.setTjNumber(tjNumber);
+            print.setPrintBy(SecurityUtils.getLoginUser().getUser().getNickName());
+            print.setPrintTime(date);
+            print.setPrintStatus("宸叉墦鍗�");
+            if (printService.save(print)) {
+                order.setPrintLastTime(date);
+                order.setStatus(TjConstants.TJ_END);
+                tjOrderService.updateById(order);
+            }
+            return AjaxResult.success();
+        }
+     return AjaxResult.error();
     }
 
     /**
@@ -2133,20 +2158,8 @@
 
     @GetMapping("/revocationReport/{TjNumber}")
     @ApiOperation(value = "鎾ら攢鐢熸垚浣撴鎶ュ憡")
+    @Transactional
     public AjaxResult revocationReport(@PathVariable("TjNumber") String tjNumber) {
-        //閫昏緫鍒犻櫎鏁版嵁搴撻噷鐨勬姤鍛�
-        QueryWrapper<TjReport> wq1 = new QueryWrapper<>();
-        wq1.select("re_id");
-        wq1.eq("tj_number", tjNumber);
-        wq1.eq("type", "浣撴鎶ュ憡");
-        TjReport tjReport = tjReportService.getOne(wq1);
-        if (null != tjReport) {
-            // 涓嶅湪浣跨敤閫昏緫鍒犻櫎 閫昏緫鍒犻櫎瀵艰嚧鎵撳嵃鎶ュ憡鐢熸垚 鏌ヨsql缂撴參
-            int i = tjReportService.deleteTjReportByReId(tjReport.getReId());
-            if (i == 0) {
-                return AjaxResult.error("鎾ゅ洖澶辫触锛�");
-            }
-        }
 
         TjOrder one = tjOrderService.getOrderByTjNum(tjNumber);
         if(null !=one){
@@ -2167,10 +2180,25 @@
             one.setPrintLastTime(null);
             one.setDownloadLastTime(null);
             if (tjOrderService.updateById(one)) {
+
+                //閫昏緫鍒犻櫎鏁版嵁搴撻噷鐨勬姤鍛�
+                QueryWrapper<TjReport> wq1 = new QueryWrapper<>();
+                wq1.select("re_id");
+                wq1.eq("tj_number", tjNumber);
+                wq1.eq("type", "浣撴鎶ュ憡");
+                TjReport tjReport = tjReportService.getOne(wq1);
+                if (null != tjReport) {
+                    // 涓嶅湪浣跨敤閫昏緫鍒犻櫎 閫昏緫鍒犻櫎瀵艰嚧鎵撳嵃鎶ュ憡鐢熸垚 鏌ヨsql缂撴參
+                    int i = tjReportService.deleteTjReportByReId(tjReport.getReId());
+                    if (i == 0) {
+                        return AjaxResult.error("鏆傛棤浣撴鎶ュ憡,璇锋挙鍥炲埌鎬绘鏈鏍搁〉闈�,闇�鎬绘鍖荤敓閲嶆柊瀹℃牳骞剁敓鎴愭姤鍛�!");
+                    }
+                }
+
                 return AjaxResult.success("鎾ゅ洖鎴愬姛锛�");
             }
         }
-        return AjaxResult.error("鎾ゅ洖澶辫触锛�");
+        return AjaxResult.error("璇ヤ汉鍛樹綋妫�璁板綍涓嶅瓨鍦�,璇锋牳瀹炰汉鍛樹俊鎭�!");
 
     }
 
@@ -2220,8 +2248,8 @@
         LambdaQueryWrapper<TjOrder> wq2 = new LambdaQueryWrapper<>();
         wq2.eq(TjOrder::getFirmId, firmId);
         wq2.eq(TjOrder::getFirmDeptId, firmDeptId);
-        wq2.eq(TjOrder::getTjType, "1");
-        wq2.in(TjOrder::getStatus, 401, 402);
+        wq2.ne(TjOrder::getTjType, "2");
+//        wq2.in(TjOrder::getStatus, 401, 402);
         final List<TjOrder> list = tjOrderService.list(wq2);
 
         for (TjOrder tjOrder : list) {

--
Gitblit v1.8.0