commit

Change-Id: I09f13f6bf4a4fe56205b8137f1179b81a3394d11
diff --git a/pom.xml b/pom.xml
index e677d09..682bcc1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -46,6 +46,10 @@
             <version>3.5.8</version>
         </dependency>
         <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-security</artifactId>
+        </dependency>
+        <dependency>
             <groupId>org.projectlombok</groupId>
             <artifactId>lombok</artifactId>
             <optional>true</optional>
diff --git a/src/main/java/com/g9/g9backend/config/MybatisPlusConfig.java b/src/main/java/com/g9/g9backend/config/MybatisPlusConfig.java
index 31cc606..fae9926 100644
--- a/src/main/java/com/g9/g9backend/config/MybatisPlusConfig.java
+++ b/src/main/java/com/g9/g9backend/config/MybatisPlusConfig.java
@@ -1,23 +1,68 @@
 package com.g9.g9backend.config;
 
 import com.baomidou.mybatisplus.annotation.DbType;
+import com.baomidou.mybatisplus.core.toolkit.AES;
 import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
 import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
 import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.core.env.Environment; // 正确导入 Spring 的 Environment
 import org.springframework.transaction.annotation.EnableTransactionManagement;
 
 @Configuration
 @EnableTransactionManagement
-@MapperScan( { "com.g9.g9backend.mapper" })
+@MapperScan({"com.g9.g9backend.mapper"})
 public class MybatisPlusConfig {
 
+    private final Environment environment;
+
+    public MybatisPlusConfig(Environment environment) {
+        this.environment = environment;
+    }
+
     @Bean
     public MybatisPlusInterceptor mybatisPlusInterceptor() {
-        MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
-        mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
-        return mybatisPlusInterceptor;
+        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
+        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
+        return interceptor;
     }
 
-}
+    // 生成 AES 密钥 (只需运行一次,生成后妥善保存)
+    public static void main(String[] args) {
+        String randomKey = AES.generateRandomKey();
+        System.out.println("生成的 AES 密钥: " + randomKey);
+        String encryptedPassword = AES.encrypt("", randomKey); // 对实际的数据库密码进行加密
+        System.out.println("加密后的密码: " + encryptedPassword);
+    }
+
+    // 注册自定义密码解码器
+    @Bean
+    public PasswordDecoder passwordDecoder() {
+        return new CustomPasswordDecoder(environment.getProperty("mybatis-plus.aes-key"));
+    }
+
+    // 自定义密码解码器接口
+    public interface PasswordDecoder {
+        String decode(String encodedPassword);
+    }
+
+    // 自定义密码解码器实现
+    public static class CustomPasswordDecoder implements PasswordDecoder {
+
+        private final String aesKey;
+
+        public CustomPasswordDecoder(String aesKey) {
+            this.aesKey = aesKey;
+        }
+
+        @Override
+        public String decode(String encodedPassword) {
+            try {
+                return AES.decrypt(encodedPassword, aesKey);
+            } catch (Exception e) {
+                throw new RuntimeException("密码解密失败", e);
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/src/main/java/com/g9/g9backend/controller/FileController.java b/src/main/java/com/g9/g9backend/controller/FileController.java
index 313f61e..947c4af 100644
--- a/src/main/java/com/g9/g9backend/controller/FileController.java
+++ b/src/main/java/com/g9/g9backend/controller/FileController.java
@@ -38,7 +38,7 @@
     @PostMapping
     public ResponseEntity<String> uploadFile(@RequestBody MultipartFile file) {
         // 相对路径(可在资源根路径创建 upload 文件夹)
-        String UPLOAD_DIR = "D:/nginx/nginx-1.26.2/MCPT";
+        String UPLOAD_DIR = "/app/upload";
 
         // 获取原始文件名
         String originalFilename = file.getOriginalFilename();
diff --git a/src/main/java/com/g9/g9backend/controller/ResourceController.java b/src/main/java/com/g9/g9backend/controller/ResourceController.java
index abde7ef..61f56fe 100644
--- a/src/main/java/com/g9/g9backend/controller/ResourceController.java
+++ b/src/main/java/com/g9/g9backend/controller/ResourceController.java
@@ -121,7 +121,7 @@
         community.setType(postResourceDTO.getResource().getClassify());
         community.setResourceId(postResourceDTO.getResource().getResourceId());
         communityService.save(community);
-        return ResponseEntity.ok("");
+        return ResponseEntity.ok(String.valueOf(resource.getResourceId()));
     }
 
     /**
@@ -133,7 +133,7 @@
     @PostMapping("/version")
     public ResponseEntity<String> uploadResourceVersion(@RequestBody ResourceVersion resourceVersion) {
         resourceVersionService.save(resourceVersion);
-        return ResponseEntity.ok("");
+        return ResponseEntity.ok(String.valueOf(resourceVersion.getResourceVersionId()));
     }
 
     /**
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 07ec02f..de13118 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -2,9 +2,9 @@
   application:
     name: G9backend
   datasource:
-    url: jdbc:mysql://localhost:3306/mcpt
-    username: root
-    password:
+    url: jdbc:mysql://202.205.102.121:3306/team9
+    username: team9
+    password: "Team99999#"
   jpa:
     hibernate:
       ddl-auto: none