Просмотр исходного кода

feat(report): 舌诊图片持久化 + parsePreview member_id nullable

Xiaogang Liao 1 месяц назад
Родитель
Сommit
3afec9e18c

+ 5 - 2
cfc-backend/src/main/java/com/etotem/cfc/service/TongueDiagnosisService.java

@@ -26,9 +26,10 @@ public class TongueDiagnosisService {
     @Resource
     @Resource
     private IndicatorDefinitionMapper indicatorDefinitionMapper;
     private IndicatorDefinitionMapper indicatorDefinitionMapper;
 
 
-    public Map<String, Object> parsePreview(MultipartFile file, Long memberId) {
-        String imageUrl = "/uploads/tongue/" + System.currentTimeMillis() + ".jpg";
+    @Resource
+    private StorageService storageService;
 
 
+    public Map<String, Object> parsePreview(MultipartFile file, Long memberId) {
         byte[] imageBytes;
         byte[] imageBytes;
         try {
         try {
             imageBytes = file.getBytes();
             imageBytes = file.getBytes();
@@ -38,6 +39,8 @@ public class TongueDiagnosisService {
         String filename = file.getOriginalFilename() != null ? file.getOriginalFilename() : "tongue.jpg";
         String filename = file.getOriginalFilename() != null ? file.getOriginalFilename() : "tongue.jpg";
         Map<String, Object> diagnosisResult = aiService.sendTongueDiagnosis(imageBytes, filename, memberId);
         Map<String, Object> diagnosisResult = aiService.sendTongueDiagnosis(imageBytes, filename, memberId);
 
 
+        // 持久化舌诊图片,避免 confirm 页面图片 URL 指向不存在的本地路径
+        String imageUrl = storageService.storeFile(file, "tongue");
         TongueRecord record = new TongueRecord();
         TongueRecord record = new TongueRecord();
         record.setMemberId(memberId);
         record.setMemberId(memberId);
         record.setChildId(memberId);
         record.setChildId(memberId);