2026-03-10 14:30:24 +08:00

55 lines
1.7 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="UnivPronoStat">
<insert id="insertUnivPronoStat" parameterType="UnivPronoStat">
INSERT INTO univpronostat(
uid, aispeech, totalscore, totalnum, areaid)
VALUES (#{uid}, #{aiSpeech}, #{totalScore}, #{totalNum}, #{areaId});
</insert>
<update id="updateUnivPronoStat" parameterType="UnivPronoStat">
UPDATE univpronostat
SET uid=#{uid}, aispeech=#{aiSpeech}, totalscore=#{totalScore}, totalnum=#{totalNum}, areaid=#{areaId}
where uid=#{uid} and aiSpeech=#{aiSpeech}
</update>
<select id="getUnivPronoStatByKey" parameterType="java.util.Map" resultType="UnivPronoStat">
SELECT uid, aispeech, totalscore, totalnum, areaid
FROM univpronostat WHERE uid=#{uid} and aiSpeech=#{aiSpeech}
</select>
<select id="getSeqUnivPronoStat" resultType="Integer" useCache="false" flushCache="true">
SELECT nextval('seq_univpronoStatId') ;
</select>
<select id="getUnivPronoStatsByUid" parameterType="java.lang.Long" resultType="UnivPronoStat">
SELECT uid, aispeech, totalscore, totalnum, areaid
FROM univpronostat
WHERE uid=#{uid}
</select>
<select id="getUnivAvgscoreByUid" parameterType="java.lang.Long" resultType="java.util.HashMap">
select case howmuch
when 0 then 0
else round( totalScore / howmuch )
end as score,
0 as accuracy, 0 as fluent , 0 as integrity
from UnivUserHonor
where uid = #{uid}
</select>
</mapper>