处理 可能导致的唯一约束失败问题

This commit is contained in:
zk
2026-07-09 10:36:13 +08:00
parent 7db7bbbeda
commit 9859724448
@@ -79,12 +79,18 @@ public class MentorMockChatService {
throw new RuntimeException("模拟对话生成失败", e);
}
// 6. 入库
MentorMockChat record = new MentorMockChat();
record.setMentorId(mentorId);
record.setMessages(chatMessages);
record.setCreateTime(Instant.now());
mentorMockChatMapper.insert(record);
// 6. 入库(存在则更新,不存在则插入)
MentorMockChat existRecord = mentorMockChatMapper.selectOne(new LambdaQueryWrapper<MentorMockChat>().eq(MentorMockChat::getMentorId, mentorId));
if (existRecord != null) {
existRecord.setMessages(chatMessages);
mentorMockChatMapper.updateById(existRecord);
} else {
MentorMockChat record = new MentorMockChat();
record.setMentorId(mentorId);
record.setMessages(chatMessages);
record.setCreateTime(Instant.now());
mentorMockChatMapper.insert(record);
}
// 7. 返回
MentorMockChatDto dto = new MentorMockChatDto();