qin преди 1 година
родител
ревизия
b4203cfaa9
променени са 1 файла, в които са добавени 9 реда и са изтрити 58 реда
  1. 9 58
      src/main/java/com/poteviohealth/cgp/statistics/utils/ExcelUtils2.java

+ 9 - 58
src/main/java/com/poteviohealth/cgp/statistics/utils/ExcelUtils2.java

@@ -17,7 +17,9 @@ import org.springframework.stereotype.Component;
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
-import java.io.*;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
 import java.net.URLEncoder;
 import java.util.Collections;
 import java.util.List;
@@ -32,22 +34,21 @@ public class ExcelUtils2 implements ResourceLoaderAware {
     /**
      * excel文件的导出下载
      *
-     * @param templateLoacation excel模板文件位置,格式参见org.springframework.core.io.ResourceLoader#getResource方法注释
+     * @param templateLocation excel模板文件位置,格式参见org.springframework.core.io.ResourceLoader#getResource方法注释
      * @param data              excel模板需要的单项数据
      * @param list              excel模板需要的列表数据
      * @param filename          给浏览器端下载的文件名
      * @param resp 响应类
      * @see ResourceLoader#getResource(String)
      */
-    public static void easyDownload(String templateLoacation, Map<String, Object> data, List<?> list, String filename,
+    public static void easyDownload(String templateLocation, Map<String, Object> data, List<?> list, String filename,
                                     HttpServletResponse resp) {
 
-        Resource template = resourceLoader.getResource(templateLoacation);
+        Resource template = resourceLoader.getResource(templateLocation);
 
-        resp.setHeader("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=utf-8");
+        resp.setHeader("Content-Type", "application/vnd.ms-excel; charset=utf-8");
         try {
-            logger.info("size:==="+template.getFile().length());
-            resp.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode(filename, "UTF-8"));
+          resp.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode(filename, "UTF-8"));
         } catch (Exception e) {
             throw new RuntimeException(e);
         }
@@ -56,6 +57,7 @@ public class ExcelUtils2 implements ResourceLoaderAware {
             InputStream is = template.getInputStream();
             OutputStream outputStream = resp.getOutputStream();
             ExcelWriter excelWriter = EasyExcel.write(outputStream).withTemplate(is).build();
+            logger.info("size==="+is.available());
             is.close();
             WriteSheet writeSheet = EasyExcel.writerSheet().build();
             // 直接写入数据
@@ -84,57 +86,6 @@ public class ExcelUtils2 implements ResourceLoaderAware {
         logger.info("export time:" + (System.currentTimeMillis() - begin));
     }
 
-    /**
-     * excel文件的导出下载
-     *
-     * @param templateLoacation excel模板文件位置,格式参见org.springframework.core.io.ResourceLoader#getResource方法注释
-     * @param data              excel模板需要的单项数据
-     * @param list              excel模板需要的列表数据
-     * @param filename          给浏览器端下载的文件名
-     * @param resp 响应类
-     * @see ResourceLoader#getResource(String)
-     */
-    public static void easyDownloadOrder(String templateLoacation, Map<String, Object> data, List<?> list, String filename,
-                                    HttpServletResponse resp) {
-        Resource template = resourceLoader.getResource(templateLoacation);
-        resp.setContentType("application/vnd.ms-excel");
-        try {
-            resp.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode(filename, "UTF-8"));
-            resp.setCharacterEncoding("utf8");
-            resp.setHeader("Pragma", "public");
-            resp.setHeader("Cache-Control", "no-store");
-            resp.addHeader("Cache-Control", "max-age=0");
-        } catch (UnsupportedEncodingException e) {
-            throw new RuntimeException(e);
-        }
-        long begin = System.currentTimeMillis();
-        try {
-            InputStream is = template.getInputStream();
-
-            OutputStream outputStream = resp.getOutputStream();
-            ExcelWriter excelWriter = EasyExcel.write(outputStream).withTemplate(is).build();
-            is.close();
-            WriteSheet writeSheet = EasyExcel.writerSheet().build();
-            // 直接写入数据
-            excelWriter.fill(list, writeSheet);
-            if (!data.isEmpty()) {
-                excelWriter.fill(data, writeSheet);
-            }
-            excelWriter.finish();
-            outputStream.flush();
-        } catch (IOException e) {
-            e.printStackTrace();
-            throw new RuntimeException(e);
-        } finally {
-            try {
-                resp.getOutputStream().close();
-            } catch (IOException e) {
-                e.printStackTrace();
-            }
-        }
-        logger.info("export time:" + (System.currentTimeMillis() - begin));
-    }
-
     /**
      * 实体模型导出
      * @param response 响应类