From 34428bd30b004336f9ebc93de0ebe8fae65017c9 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期四, 27 十一月 2025 14:09:30 +0800
Subject: [PATCH] 审批界面增加pdf,图片预览功能

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/controller/OssFileController.java |   32 +++++++++++++++++++++++++++++++-
 1 files changed, 31 insertions(+), 1 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/controller/OssFileController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/controller/OssFileController.java
index 9f5845b..beb7c55 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/controller/OssFileController.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/commons/controller/OssFileController.java
@@ -4,9 +4,12 @@
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springblade.core.mp.support.Condition;
+import org.springblade.core.oss.OssTemplate;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
@@ -24,6 +27,8 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.io.IOException;
+import java.io.InputStream;
 import java.util.List;
 
 @Slf4j
@@ -35,13 +40,15 @@
 	@Autowired
 	private OssFileCommonService ossFileCommonService;
 	@Autowired
+	private OssTemplate ossTemplate;
+	@Autowired
 	private ParamService paramService;
 	/**
 	 * 寰呭姙浠诲姟鍒楄〃椤�
 	 */
 	@GetMapping("file-content")
 	@ApiOperationSupport(order = 3)
-	@Operation(summary = "寰呭姙浠诲姟鏁伴噺鏌ヨ", description = "寰呭姙浠诲姟鏁伴噺鏌ヨ")
+	@Operation(summary = "鑾峰彇鏂囦欢鏂囨湰鍐呭", description = "鑾峰彇鏂囦欢鏂囨湰鍐呭")
 	public R<String> fileContent(String ossFileName) {
 		if(StringUtils.isBlank(ossFileName)){
 			throw new RuntimeException("鏂囦欢鍚嶄负绌�");
@@ -50,4 +57,27 @@
 	}
 
 
+	@GetMapping("file-bytes")
+	@ApiOperationSupport(order = 3)
+	@Operation(summary = "鑾峰彇鏂囦欢瀛楄妭", description = "鑾峰彇鏂囦欢瀛楄妭")
+	public void fileBytes(String ossFileName, HttpServletResponse response) throws IOException {
+		if(StringUtils.isBlank(ossFileName)){
+			throw new RuntimeException("鏂囦欢鍚嶄负绌�");
+		}
+		//ossTemplate.fileLink()
+		try(InputStream ins = ossTemplate.statFileStream(ossFileName);){
+			response.getOutputStream().write(IOUtils.toByteArray(ins));
+		}
+	}
+
+	@GetMapping("file-link")
+	@ApiOperationSupport(order = 3)
+	@Operation(summary = "鑾峰彇鏂囦欢瀛楄妭", description = "鑾峰彇鏂囦欢瀛楄妭")
+	public R<String> fileLink(String ossFileName, HttpServletResponse response) throws IOException {
+		if(StringUtils.isBlank(ossFileName)){
+			throw new RuntimeException("鏂囦欢鍚嶄负绌�");
+		}
+		String link = ossTemplate.fileLink(ossFileName);
+		return R.data(link);
+	}
 }

--
Gitblit v1.9.3