From 97abbefaa321f176b8340738e729db04827d97f9 Mon Sep 17 00:00:00 2001 From: huazhongmin Date: Tue, 23 Dec 2025 17:43:33 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../emotion/service/impl/AiChatServiceImpl.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/backend-single/src/main/java/com/emotion/service/impl/AiChatServiceImpl.java b/backend-single/src/main/java/com/emotion/service/impl/AiChatServiceImpl.java index 4941aea..9bd6753 100644 --- a/backend-single/src/main/java/com/emotion/service/impl/AiChatServiceImpl.java +++ b/backend-single/src/main/java/com/emotion/service/impl/AiChatServiceImpl.java @@ -2667,7 +2667,12 @@ public class AiChatServiceImpl implements AiChatService { if (response.statusCode() != 200) { String errorBody = response.body().collect(java.util.stream.Collectors.joining("\n")); log.error("工作流请求失败,状态码: {}, 响应: {}", response.statusCode(), errorBody); - apiCall.setResponseBody(errorBody); + // 将错误响应包装成JSON格式存储 + Map errorWrapper = new HashMap<>(); + errorWrapper.put("type", "error"); + errorWrapper.put("data", errorBody); + errorWrapper.put("timestamp", System.currentTimeMillis()); + apiCall.setResponseBody(JSON.toJSONString(errorWrapper)); cozeApiCallService.updateById(apiCall); throw new RuntimeException("工作流请求失败,状态码: " + response.statusCode()); } @@ -2755,9 +2760,13 @@ public class AiChatServiceImpl implements AiChatService { } } - // 保存原始响应数据到API调用记录 + // 保存原始响应数据到API调用记录(包装成JSON格式) try { - apiCall.setResponseBody(fullStreamData.toString()); + Map streamDataWrapper = new HashMap<>(); + streamDataWrapper.put("type", "workflow_stream"); + streamDataWrapper.put("data", fullStreamData.toString()); + streamDataWrapper.put("timestamp", System.currentTimeMillis()); + apiCall.setResponseBody(JSON.toJSONString(streamDataWrapper)); cozeApiCallService.updateById(apiCall); } catch (Exception e) { log.error("保存工作流响应数据失败: {}", e.getMessage(), e);