案例助手:增加@Transactional注解

This commit is contained in:
liu.zixi
2025-09-30 11:45:51 +08:00
parent 960de20658
commit 88709c15a5

View File

@@ -45,6 +45,7 @@ import org.jetbrains.annotations.Nullable;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;
@@ -83,6 +84,7 @@ public class CaseAiChatServiceImpl implements ICaseAiChatService {
private CasesDao casesDao; private CasesDao casesDao;
@Override @Override
@Transactional
public SseEmitter chat(CaseAiChatDto caseAiChatDto, CurrentUser currentUser) { public SseEmitter chat(CaseAiChatDto caseAiChatDto, CurrentUser currentUser) {
// 1. 获取conversationId // 1. 获取conversationId
String conversationId = getOrCreateConversationId(caseAiChatDto, currentUser); String conversationId = getOrCreateConversationId(caseAiChatDto, currentUser);
@@ -96,7 +98,7 @@ public class CaseAiChatServiceImpl implements ICaseAiChatService {
conversation.setAiConversationId(conversationId); conversation.setAiConversationId(conversationId);
conversation.setConversationName("AI案例咨询-" + LocalDateTime.now()); conversation.setConversationName("AI案例咨询-" + LocalDateTime.now());
conversation.setConversationUser(currentUser.getAccountId()); conversation.setConversationUser(currentUser.getAccountId());
// 由于编译问题,这里先注释,实际部署时需要取消注释 // 保存会话到数据库
caseAiConversationsDao.save(conversation); caseAiConversationsDao.save(conversation);
} }
@@ -242,6 +244,7 @@ public class CaseAiChatServiceImpl implements ICaseAiChatService {
} }
@Override @Override
@Transactional
public CaseAiConversations createNewConversation(String userId, String conversationName) { public CaseAiConversations createNewConversation(String userId, String conversationName) {
try (CloseableHttpClient httpClient = HttpClients.createDefault()) { try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
String url = caseAiProperties.getBaseUrl() + "/apigateway/knowledge/v1/conversation"; String url = caseAiProperties.getBaseUrl() + "/apigateway/knowledge/v1/conversation";