From 375c18a6d2713ff19b22093eec57315992d8333f Mon Sep 17 00:00:00 2001
From: Codex Assistant <codex@example.com>
Date: 星期四, 06 十一月 2025 13:33:52 +0800
Subject: [PATCH] 增加评审下载
---
backend/src/main/java/com/rongyichuang/judge/service/CosService.java | 33 +++++++++++++++++++++++++++++++++
1 files changed, 33 insertions(+), 0 deletions(-)
diff --git a/backend/src/main/java/com/rongyichuang/judge/service/CosService.java b/backend/src/main/java/com/rongyichuang/judge/service/CosService.java
index 4e0273e..44bc63d 100644
--- a/backend/src/main/java/com/rongyichuang/judge/service/CosService.java
+++ b/backend/src/main/java/com/rongyichuang/judge/service/CosService.java
@@ -124,6 +124,39 @@
}
/**
+ * 鐩存帴涓婁紶鏈湴鏂囦欢鍒癈OS
+ */
+ public String uploadLocalFile(java.io.File file, String fileName) throws Exception {
+ // 鐢熸垚鏂囦欢璺緞锛氭寜鏃ユ湡鍒嗙洰褰�
+ String dateDir = new java.text.SimpleDateFormat("yyyyMMdd").format(new Date());
+ String key = dateDir + "/" + fileName;
+
+ System.out.println("=== COS鏈湴鏂囦欢涓婁紶璋冭瘯淇℃伅 ===");
+ System.out.println("鏂囦欢Key: " + key);
+ System.out.println("鏂囦欢澶у皬: " + file.length());
+ System.out.println("鏂囦欢璺緞: " + file.getAbsolutePath());
+
+ // 鍒涘缓COS瀹㈡埛绔�
+ COSCredentials cred = new BasicCOSCredentials(secretId, secretKey);
+ ClientConfig clientConfig = new ClientConfig(new Region(region));
+ COSClient cosClient = new COSClient(cred, clientConfig);
+
+ try {
+ // 鍒涘缓涓婁紶璇锋眰
+ com.qcloud.cos.model.PutObjectRequest putObjectRequest =
+ new com.qcloud.cos.model.PutObjectRequest(bucket, key, file);
+
+ // 鎵ц涓婁紶
+ com.qcloud.cos.model.PutObjectResult result = cosClient.putObject(putObjectRequest);
+ System.out.println("涓婁紶鎴愬姛锛孍Tag: " + result.getETag());
+
+ return key; // 杩斿洖鐩稿璺緞
+ } finally {
+ cosClient.shutdown();
+ }
+ }
+
+ /**
* 鑾峰彇鏂囦欢璁块棶 URL
*/
public String getFileUrl(String key) {
--
Gitblit v1.8.0