From c383c8ca7053005ffa3ee58efd89956fbf52c9ea Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期四, 07 五月 2026 11:34:19 +0800
Subject: [PATCH] 重构客户档案

---
 src/main/java/com/ruoyi/ai/service/AiFileTextExtractor.java |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/ruoyi/ai/service/AiFileTextExtractor.java b/src/main/java/com/ruoyi/ai/service/AiFileTextExtractor.java
index 82cf1eb..6e37451 100644
--- a/src/main/java/com/ruoyi/ai/service/AiFileTextExtractor.java
+++ b/src/main/java/com/ruoyi/ai/service/AiFileTextExtractor.java
@@ -44,7 +44,17 @@
         if ("xls".equals(ext)) {
             return extractXls(bytes);
         }
+        if (isImage(ext)) {
+            return "鍥剧墖鏂囦欢锛�" + filename + "锛屽凡涓婁紶锛岃缁撳悎鍥剧墖鍐呭璇嗗埆閲囪喘鍗曟嵁銆佽〃鏍煎拰浜у搧鏄庣粏銆�";
+        }
         throw new IllegalArgumentException("鏆備笉鏀寔璇ユ枃浠剁被鍨�: " + ext);
+    }
+
+    public boolean isImageFile(MultipartFile file) {
+        if (file == null) {
+            return false;
+        }
+        return isImage(getExtension(file.getOriginalFilename()));
     }
 
     private String extractDocx(byte[] bytes) throws IOException {
@@ -114,4 +124,8 @@
                 "txt", "md", "markdown", "json", "xml", "yaml", "yml", "csv", "log", "properties",
                 "java", "js", "ts", "vue", "html", "css", "sql", "py", "go", "sh", "bat");
     }
+
+    private boolean isImage(String ext) {
+        return StringUtils.inStringIgnoreCase(ext, "png", "jpg", "jpeg", "webp", "bmp");
+    }
 }

--
Gitblit v1.9.3