From 5e02e3ef5f8cf392c2eb0a84099e91cc01807176 Mon Sep 17 00:00:00 2001 From: "liu.zixi" Date: Sun, 28 Sep 2025 13:32:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A1=88=E4=BE=8B=E5=8A=A9=E6=89=8B=EF=BC=9A?= =?UTF-8?q?=E8=81=8A=E5=A4=A9=E5=A2=9E=E5=8A=A0=E4=B8=8A=E4=BC=A0=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E5=92=8C=E4=BC=81=E4=B8=9A=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CaseAiChatServiceImpl.java | 26 ++++++++++--------- .../xboe/module/boecase/vo/CaseReferVo.java | 15 +++++++++++ 2 files changed, 29 insertions(+), 12 deletions(-) diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CaseAiChatServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CaseAiChatServiceImpl.java index e982d815..143a2f56 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CaseAiChatServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CaseAiChatServiceImpl.java @@ -15,6 +15,8 @@ import com.xboe.module.boecase.service.IAiAccessTokenService; import com.xboe.module.boecase.service.ICaseAiChatService; import com.xboe.module.boecase.vo.CaseAiMessageVo; import com.xboe.module.boecase.vo.CaseReferVo; +import com.xboe.system.organization.vo.OrgSimpleVo; +import com.xboe.system.user.service.IUserService; import lombok.extern.slf4j.Slf4j; import okhttp3.*; import okhttp3.sse.EventSource; @@ -65,6 +67,9 @@ public class CaseAiChatServiceImpl implements ICaseAiChatService { @Autowired private IAiAccessTokenService aiAccessTokenService; + @Autowired + private IUserService userService; + @Autowired private CaseAiConversationsDao caseAiConversationsDao; @@ -180,10 +185,10 @@ public class CaseAiChatServiceImpl implements ICaseAiChatService { break; } } + sseEmitter.send(responseData.toJSONString()); + } else { + sseEmitter.send(data); } - - // 发送给前端 - sseEmitter.send(data); } catch (IOException e) { log.error("调用接口处理监听数据时发生异常", e); } catch (Exception e) { @@ -409,11 +414,6 @@ public class CaseAiChatServiceImpl implements ICaseAiChatService { } // 构建返给前端的数据结构 - JSONObject modifiedResponse = new JSONObject(); - modifiedResponse.put("success", true); - modifiedResponse.put("code", 0); - modifiedResponse.put("message", "业务处理成功"); - JSONObject data = new JSONObject(); data.put("status", 0); data.put("conversationId", conversationData.conversationId); @@ -448,10 +448,8 @@ public class CaseAiChatServiceImpl implements ICaseAiChatService { data.put("fileRefer", newFileRefer); data.put("suggestions", responseData.get("suggestions")); - modifiedResponse.put("data", data); - log.info("处理文件引用成功,返回 {} 个案例引用", currentCaseRefers.size()); - return modifiedResponse; + return data; } catch (Exception e) { log.error("处理文件引用并构建响应数据异常", e); @@ -519,13 +517,17 @@ public class CaseAiChatServiceImpl implements ICaseAiChatService { if (caseEntity == null) { return null; } - + + String authorUserId = caseEntity.getAuthorId(); + OrgSimpleVo authorOrg = userService.findOrgByUserId(authorUserId); // 构建 CaseReferVo CaseReferVo caseRefer = new CaseReferVo(); caseRefer.setCaseId(caseEntity.getId()); caseRefer.setTitle(caseEntity.getTitle()); caseRefer.setAuthorName(caseEntity.getAuthorName()); caseRefer.setContent(caseEntity.getContent()); + caseRefer.setUploadTime(caseEntity.getSysCreateTime()); + caseRefer.setOrgInfo(authorOrg.getName()); // 构建关键词列表 List keywords = new ArrayList<>(); diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/vo/CaseReferVo.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/vo/CaseReferVo.java index 5961f596..3786f31d 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/vo/CaseReferVo.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/vo/CaseReferVo.java @@ -1,7 +1,10 @@ package com.xboe.module.boecase.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; import java.util.List; /** @@ -25,6 +28,18 @@ public class CaseReferVo { */ private String authorName; + /** + * 组织信息 + */ + private String orgInfo; + + /** + * 上传时间 + */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime uploadTime; + /** * 关键词列表 */