From bf84842d69b99d79ee17996de65bf8a2bab4ac07 Mon Sep 17 00:00:00 2001
From: zjh <zjh@888>
Date: 星期二, 26 十二月 2023 11:13:58 +0800
Subject: [PATCH] zjh 本地 2023/12/26 -1

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReservationController.java |   85 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 83 insertions(+), 2 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReservationController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReservationController.java
index 410ba0b..d8c96a4 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReservationController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReservationController.java
@@ -1,6 +1,8 @@
 package com.ltkj.web.controller.system;
 
+import java.io.*;
 import java.math.BigDecimal;
+import java.net.URL;
 import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -8,9 +10,11 @@
 import javax.servlet.http.HttpServletResponse;
 
 import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.io.FileUtil;
 import cn.hutool.extra.pinyin.PinyinUtil;
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.base.Joiner;
 import com.ltkj.common.excelConfig.ExcelUtils;
@@ -21,11 +25,14 @@
 import com.ltkj.hosp.dto.ConfirmDto;
 import com.ltkj.hosp.dto.ExcelImportDto;
 import com.ltkj.hosp.service.*;
+import com.ltkj.mall.mallOrderUtils.TjConstants;
+import com.ltkj.web.config.pdfutils.PDFBinaryUtil;
 import com.ltkj.web.config.redis.OrderDelayService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
@@ -71,12 +78,86 @@
     private TjAsyncService asyncService;
     @Resource
     private OrderDelayService delayService;
+    @Resource
+    private ITjReportTemplateService reportTemplateService;
+
+    @Value("${path.filePath}")
+    private String value;
 
     @PostMapping("/importTemplate")
     @ApiOperation(value = "瀵煎嚭excel琛ㄦā鏉�")
     public void importTemplate(HttpServletResponse response) {
-        ExcelUtils.exportTemplate(response, "浣撴棰勭害Excel妯℃澘", TjReservation.class);
+        //鍘熸潵鐨勪笅杞芥ā鏉胯皟鐢ㄦ帴鍙�
+//        ExcelUtils.exportTemplate(response, "浣撴棰勭害Excel妯℃澘", TjReservation.class);
+        String base64String = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\瑗垮畨璺嘲鏈虹數绉戞妧鏈夐檺鍏徃.xls");
+//        TjReportTemplate tem = new TjReportTemplate();
+//        tem.setName("鍥綋棰勭害Excel妯$増");
+//        tem.setRemark("鍥綋棰勭害Excel妯$増");
+//        tem.setTemplate(base64String);
+//        tem.setFlag("1");
+//        tem.setOpen("0");
+//        reportTemplateService.save(tem);
+
+//        LambdaQueryWrapper<TjReportTemplate> wq = new LambdaQueryWrapper<>();
+//        wq.eq(TjReportTemplate::getFlag, 4);
+//        wq.eq(TjReportTemplate::getName, "");
+//        wq.eq(TjReportTemplate::getOpen, 0);
+//         reportTemplateService.getOne(wq);
+
+        PDFBinaryUtil.base64StringToPDF(base64String, FileUtil.mkdir(value).getPath() + "\\" + "鍥綋棰勭害Excel妯$増.xls");
+        String filePath = value + "\\" + "鍥綋棰勭害Excel妯$増.xls";
+        File f = new File(filePath);
+        if (filePath.isEmpty()) {
+            System.out.println("鏂囦欢涓嶅瓨鍦紒");
+            return;
+        }
+        BufferedInputStream br = null;
+        OutputStream out = null;
+        FileInputStream fileInputStream = null;
+        try {
+            fileInputStream = new FileInputStream(f);
+            br = new BufferedInputStream(fileInputStream);
+            byte[] bs = new byte[1024];
+            int len = 0;
+            response.reset(); // 闈炲父閲嶈
+            if (true) {
+                // 鍦ㄧ嚎鎵撳紑鏂瑰紡
+                URL u = new URL("file:///" + filePath);
+                //System.out.println(u);
+                String contentType = u.openConnection().getContentType();
+                response.setContentType(contentType);
+                response.setHeader("Content-Disposition", "inline;filename=鍥綋棰勭害Excel妯$増.xls");
+            } else {
+                // 绾笅杞芥柟寮�
+                response.setContentType("application/x-msdownload");
+                response.setContentType("application/pdf;charset=utf-8");
+                response.setHeader("Content-Disposition", "attachment;filename=鍥綋棰勭害Excel妯$増.xls");
+            }
+            out = response.getOutputStream();
+            while ((len = br.read(bs)) > 0) {
+                out.write(bs, 0, len);
+            }
+            out.flush();
+            out.close();
+            br.close();
+            fileInputStream.close();
+        } catch (IOException e) {
+            e.printStackTrace();
+            //System.out.println("pdf澶勭悊鏂囦欢寮傚父" + e);
+        } finally {
+            if (out != null) {
+                try {
+                    out.close();
+                    br.close();
+                    fileInputStream.close();
+
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
     }
+
 
 
     /**
@@ -424,7 +505,7 @@
      */
     @GetMapping(value = "/{id}")
     @ApiOperation(value = "鏍规嵁棰勭害id鑾峰彇棰勭害璇︽儏")
-    public AjaxResult getInfo(@PathVariable("id") @ApiParam(value = "棰勭害id") Integer id) {
+    public AjaxResult getInfo(@PathVariable("id") @ApiParam(value = "棰勭害id") String id) {
         TjReservation tjReservation = tjReservationService.selectTjReservationById(id);
         if (null != tjReservation) {
             if (null != tjReservation.getPacId()) {

--
Gitblit v1.8.0