From c6c95a49be6194989c124b8fd316fb5d434bd153 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期六, 27 一月 2024 10:29:37 +0800
Subject: [PATCH] 开发业务接口

---
 server/service/src/main/java/com/doumee/core/utils/Constants.java |   28 +++++++++++++++++++++++-----
 1 files changed, 23 insertions(+), 5 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/core/utils/Constants.java b/server/service/src/main/java/com/doumee/core/utils/Constants.java
index 89be6c5..624e0a1 100644
--- a/server/service/src/main/java/com/doumee/core/utils/Constants.java
+++ b/server/service/src/main/java/com/doumee/core/utils/Constants.java
@@ -5,12 +5,12 @@
 import com.doumee.dao.business.model.Solutions;
 import io.swagger.models.auth.In;
 import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
+import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream;
 import org.apache.commons.lang3.StringUtils;
 
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.InputStream;
-import java.io.OutputStream;
+import javax.servlet.ServletOutputStream;
+import java.io.*;
 import java.math.BigDecimal;
 import java.net.URL;
 import java.net.URLDecoder;
@@ -811,6 +811,7 @@
         private int key;
         private int collectStatus;
 
+
         // 鏋勯�犳柟娉�
         InsuranceApplyStatus(int key, String name,String info,int collectStatus) {
             this.name = name;
@@ -1337,7 +1338,8 @@
             InputStream inStream = null;
             OutputStream os = null;
             try {
-                file = File.createTempFile("", fileName);
+                String tempDir = System.getProperty("java.io.tmpdir")+fileName;
+                file = new File(tempDir);
                 //涓嬭浇
                 urlfile = new URL(url);
                 inStream = urlfile.openStream();
@@ -1367,4 +1369,20 @@
 
         return file;
     }
+    public static void packFilesToZip(List<File> files,    ServletOutputStream os) throws IOException {
+        try (ZipArchiveOutputStream zipOutputStream = new ZipArchiveOutputStream(os)) {
+            for (File file : files) {
+                ZipArchiveEntry entry = new ZipArchiveEntry(file.getName());
+                zipOutputStream.putArchiveEntry(entry);
+                try (FileInputStream fileInputStream = new FileInputStream(file)) {
+                    byte[] buffer = new byte[1024];
+                    int length;
+                    while ((length = fileInputStream.read(buffer)) > 0) {
+                        zipOutputStream.write(buffer, 0, length);
+                    }
+                }
+                zipOutputStream.closeArchiveEntry();
+            }
+        }
+    }
 }

--
Gitblit v1.9.3