diff --git a/tool-tech-admin/pom.xml b/tool-tech-admin/pom.xml
index 6a1b9d0..3b63802 100644
--- a/tool-tech-admin/pom.xml
+++ b/tool-tech-admin/pom.xml
@@ -85,6 +85,18 @@
lombok
+
+
+ com.documents4j
+ documents4j-local
+ 1.0.3
+
+
+ com.documents4j
+ documents4j-transformer-msoffice-word
+ 1.0.3
+
+
diff --git a/tool-tech-admin/src/main/java/com/rzdata/web/controller/common/CommonController.java b/tool-tech-admin/src/main/java/com/rzdata/web/controller/common/CommonController.java
index 78a0fc5..51ca39f 100644
--- a/tool-tech-admin/src/main/java/com/rzdata/web/controller/common/CommonController.java
+++ b/tool-tech-admin/src/main/java/com/rzdata/web/controller/common/CommonController.java
@@ -7,9 +7,14 @@ import com.rzdata.common.utils.StringUtils;
import com.rzdata.common.utils.file.FileUploadUtils;
import com.rzdata.common.utils.file.FileUtils;
import com.rzdata.framework.config.ServerConfig;
+import com.rzdata.web.domain.Attachment;
+import com.rzdata.web.domain.FileOperationRequest;
+import com.rzdata.web.service.IAttachmentService;
+import com.rzdata.web.service.impl.AttachmentServiceImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
@@ -37,9 +42,13 @@ public class CommonController
@Autowired
private ServerConfig serverConfig;
+ @Autowired
+ private IAttachmentService attachmentService;
+
private static final String FILE_DELIMETER = ",";
+
/**
* 通用下载请求
*
@@ -166,6 +175,21 @@ public class CommonController
}
+
+ /**
+ * 预览下载
+ * txt、pdf、word(doc、docx格式)
+ */
+ @PostMapping("/preview/download")
+ public ResponseEntity resourceDownload(@RequestBody Attachment attachment)
+ {
+ byte[] bytes = attachmentService.loadFileAsBytes(attachment);
+ return ResponseEntity.ok()
+ .contentType(MediaType.parseMediaType("application/octet-stream"))
+ .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"" + attachment.getFileOldName() + "\"")
+ .body(bytes);
+ }
+
@PostMapping("/initUpload")
public ResponseEntity