diff --git a/hsweb-web-controller/pom.xml b/hsweb-web-controller/pom.xml
index 4b2f8acb8..e59c0c6ac 100644
--- a/hsweb-web-controller/pom.xml
+++ b/hsweb-web-controller/pom.xml
@@ -41,5 +41,9 @@
commons-fileupload
${commons.fileupload.version}
+
+ org.hsweb
+ hsweb-expands-compress
+
\ No newline at end of file
diff --git a/hsweb-web-controller/src/main/java/org/hsweb/web/controller/file/FileController.java b/hsweb-web-controller/src/main/java/org/hsweb/web/controller/file/FileController.java
index 16938231c..8a0f38e86 100644
--- a/hsweb-web-controller/src/main/java/org/hsweb/web/controller/file/FileController.java
+++ b/hsweb-web-controller/src/main/java/org/hsweb/web/controller/file/FileController.java
@@ -1,6 +1,10 @@
package org.hsweb.web.controller.file;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
import org.hsweb.commons.StringUtils;
+import org.hsweb.expands.compress.Compress;
+import org.hsweb.expands.compress.zip.ZIPWriter;
import org.hsweb.web.bean.po.resource.Resources;
import org.hsweb.web.core.authorize.annotation.Authorize;
import org.hsweb.web.core.exception.NotFoundException;
@@ -64,6 +68,21 @@ public class FileController {
mediaTypeMapper.put(".xml", MediaType.TEXT_XML_VALUE);
}
+ /**
+ * 构建zip
+ */
+ @RequestMapping(value = "/download-zip/{name:.+}", method = {RequestMethod.POST})
+ public void downloadZip(@PathVariable("name") String name,
+ @RequestParam("data") String dataStr,
+ HttpServletResponse response) throws Exception {
+ response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
+ response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode(name, "utf-8"));
+ ZIPWriter writer = Compress.zip();
+ List