Files
supersonic/chat/server/src/main/resources/mapper/ChatParseMapper.xml
jerryjzhang 1ff1a76a9e
Some checks are pending
supersonic CentOS CI / build (21) (push) Waiting to run
supersonic mac CI / build (21) (push) Waiting to run
supersonic ubuntu CI / build (21) (push) Waiting to run
supersonic windows CI / build (21) (push) Waiting to run
feat(chat): 添加问题ID删除解析信息功能
- 在ChatParseMapper接口中新增deleteByQuestionId方法
- 实现按问题ID删除聊天解析数据的功能
- 在XML映射文件中添加对应的DELETE SQL语句
2026-04-25 20:24:46 +08:00

61 lines
2.4 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.tencent.supersonic.chat.server.persistence.mapper.ChatParseMapper">
<resultMap id="ChatParse" type="com.tencent.supersonic.chat.server.persistence.dataobject.ChatParseDO">
<id column="question_id" property="questionId"/>
<result column="chat_id" property="chatId"/>
<result column="parse_id" property="parseId"/>
<result column="create_time" property="createTime"/>
<result column="query_text" property="queryText"/>
<result column="user_name" property="userName"/>
<result column="parse_info" property="parseInfo"/>
<result column="is_candidate" property="isCandidate"/>
</resultMap>
<insert id="batchSaveParseInfo" parameterType="com.tencent.supersonic.chat.server.persistence.dataobject.ChatParseDO">
insert into s2_chat_parse
(question_id, chat_id, parse_id, create_time, query_text, user_name, parse_info,is_candidate)
values
<foreach collection="list" item="item" index="index" separator=",">
(#{item.questionId}, #{item.chatId}, #{item.parseId}, #{item.createTime}, #{item.queryText}, #{item.userName}, #{item.parseInfo}, #{item.isCandidate})
</foreach>
</insert>
<update id="updateParseInfo" parameterType="com.tencent.supersonic.chat.server.persistence.dataobject.ChatParseDO">
update s2_chat_parse
set parse_info = #{parseInfo}
where question_id = #{questionId} and parse_id = #{parseId}
</update>
<select id="getParseInfo" resultMap="ChatParse">
select *
from s2_chat_parse
where question_id = #{questionId} and parse_id = #{parseId} limit 1
</select>
<select id="getParseInfoList" resultMap="ChatParse">
select *
from s2_chat_parse
where question_id in
<foreach item="questionId" index="index" collection="list" open="(" separator="," close=")">
#{questionId}
</foreach>
</select>
<select id="getContextualParseInfo" resultMap="ChatParse">
select *
from s2_chat_parse
where chat_id = #{chatId} order by question_id desc limit 10
</select>
<delete id="deleteByQuestionId">
delete from s2_chat_parse
where question_id = #{questionId}
</delete>
</mapper>