推荐算法 用户考核 头像上传

Change-Id: Iaac96768d5238142f5ed445f5cc64ccedd239d0f
diff --git a/src/main/java/com/pt5/pthouduan/controller/UserController.java b/src/main/java/com/pt5/pthouduan/controller/UserController.java
index 4a23ea9..11f77ce 100644
--- a/src/main/java/com/pt5/pthouduan/controller/UserController.java
+++ b/src/main/java/com/pt5/pthouduan/controller/UserController.java
@@ -31,7 +31,11 @@
 public class UserController {
     @Autowired
     private UserService userService;
-    private String uploadDir="../var/www/avatars/";  // 配置文件上传目录,例如: /var/www/avatars/
+
+    @Value("${torrent.user-image-dir}")
+    private String uploadDir;
+
+    //private String uploadDir="../var/www/avatars/";  // 配置文件上传目录,例如: /var/www/avatars/
 
     private String accessPath="../avatars/";
 
@@ -113,68 +117,68 @@
         return userService.getuserid(username);
     }
 
-    @PostMapping("/uploadimage")
-    public ResponseEntity<Map<String, Object>> uploadAvatar(@RequestParam("avatar") MultipartFile file) {
-        Map<String, Object> response = new HashMap<>();
+//    @PostMapping("/uploadimage")
+//    public ResponseEntity<Map<String, Object>> uploadAvatar(@RequestParam("avatar") MultipartFile file) {
+//        Map<String, Object> response = new HashMap<>();
+//
+//        // 1. 验证文件是否为空
+//        if (file.isEmpty()) {
+//            response.put("success", false);
+//            response.put("message", "请选择要上传的文件");
+//            return ResponseEntity.badRequest().body(response);
+//        }
+//
+//        // 2. 验证文件类型
+//        String contentType = file.getContentType();
+//        if (!"image/jpeg".equals(contentType) &&
+//                !"image/png".equals(contentType) &&
+//                !"image/gif".equals(contentType)) {
+//            response.put("success", false);
+//            response.put("message", "只支持JPG/PNG/GIF格式的图片");
+//            return ResponseEntity.badRequest().body(response);
+//        }
+//
+//        // 3. 验证文件大小 (前端已验证,后端再次验证)
+//        if (file.getSize() > 10 * 1024 * 1024) { // 10MB
+//            response.put("success", false);
+//            response.put("message", "图片大小不能超过10MB");
+//            return ResponseEntity.badRequest().body(response);
+//        }
 
-        // 1. 验证文件是否为空
-        if (file.isEmpty()) {
-            response.put("success", false);
-            response.put("message", "请选择要上传的文件");
-            return ResponseEntity.badRequest().body(response);
-        }
-
-        // 2. 验证文件类型
-        String contentType = file.getContentType();
-        if (!"image/jpeg".equals(contentType) &&
-                !"image/png".equals(contentType) &&
-                !"image/gif".equals(contentType)) {
-            response.put("success", false);
-            response.put("message", "只支持JPG/PNG/GIF格式的图片");
-            return ResponseEntity.badRequest().body(response);
-        }
-
-        // 3. 验证文件大小 (前端已验证,后端再次验证)
-        if (file.getSize() > 10 * 1024 * 1024) { // 10MB
-            response.put("success", false);
-            response.put("message", "图片大小不能超过10MB");
-            return ResponseEntity.badRequest().body(response);
-        }
-
-        try {
-            // 4. 创建上传目录(如果不存在)
-            File dir = new File(uploadDir);
-            if (!dir.exists()) {
-                dir.mkdirs();
-            }
-            System.out.println(dir.getAbsolutePath());
-            // 5. 生成唯一文件名 (日期+UUID+后缀)
-            String originalFilename = file.getOriginalFilename();
-            String fileExt = originalFilename.substring(originalFilename.lastIndexOf("."));
-            String newFilename = new SimpleDateFormat("yyyyMMdd").format(new Date()) +
-                    "_" + UUID.randomUUID().toString().replace("-", "") +
-                    fileExt.toLowerCase();
-
-            // 6. 保存文件
-            Path path = Paths.get(uploadDir, newFilename);
-            Files.copy(file.getInputStream(), path);
-
-            // 7. 返回访问URL
-            String fileUrl = accessPath + newFilename;
-
-            response.put("success", true);
-            response.put("url", fileUrl);
-            response.put("message", "头像上传成功");
-
-            return ResponseEntity.ok(response);
-
-        } catch (IOException e) {
-            e.printStackTrace();
-            response.put("success", false);
-            response.put("message", "文件上传失败: " + e.getMessage());
-            return ResponseEntity.status(500).body(response);
-        }
-    }
+//        try {
+//            // 4. 创建上传目录(如果不存在)
+//            File dir = new File(uploadDir);
+//            if (!dir.exists()) {
+//                boolean created = dir.mkdirs();  // 递归创建目录
+//                if (!created) {
+//                    throw new IOException("无法创建目录:" + uploadDir);
+//                }
+//            }
+//            System.out.println(dir.getAbsolutePath());
+//            String filename = System.currentTimeMillis()+"_"+file.getOriginalFilename();
+//            Path userimagePath = Paths.get(uploadDir, filename);
+//
+//            // 6. 保存文件
+//            Files.createDirectories(userimagePath.getParent()); // 创建目录
+//            Files.copy(file.getInputStream(), userimagePath, StandardCopyOption.REPLACE_EXISTING);
+//
+//            // 7. 返回访问URL
+//            //String fileUrl = accessPath + newFilename;
+//            String fileUrl = "http://localhost:8080/" + uploadDir + filename;
+//
+//            response.put("success", true);
+//            response.put("url", fileUrl);
+//            response.put("message", "头像上传成功");
+//
+//            return ResponseEntity.ok(response);
+//
+//        } catch (IOException e) {
+//            e.printStackTrace();
+//            response.put("success", false);
+//            response.put("message", "文件上传失败: " + e.getMessage());
+//            return ResponseEntity.status(500).body(response);
+//        }
+    //}
 
 
 }