liusheng
2026-10-10 33e1839c6214ad72cc5a76ae254ce0bb542e9263
smartor/src/main/resources/mapper/smartor/SvyLibTemplateTargetoptionMapper.xml
@@ -43,6 +43,7 @@
        <result property="prompt" column="prompt"/>
        <result property="sendTaskid" column="send_taskid"/>
        <result property="sendTaskname" column="send_taskname"/>
        <result property="defaultValue" column="default_value"/>
    </resultMap>
    <sql id="selectSvyLibTemplateTargetoptionVo">
@@ -54,6 +55,7 @@
               score,
               prompt,
               option_no,
               default_value,
               appendflag,
               appenddesc,
               categoryName,
@@ -104,6 +106,7 @@
            <if test="nextQuestion != null ">and next_question = #{nextQuestion}</if>
            <if test="language != null  and language != ''">and language = #{language}</if>
            <if test="version != null  and version != ''">and version = #{version}</if>
            <if test="defaultValue != null">and default_value = #{defaultValue}</if>
            <if test="isupload != null ">and isupload = #{isupload}</if>
            <if test="uploadTime != null ">and upload_time = #{uploadTime}</if>
            <if test="orgid != null  and orgid != ''">and orgid = #{orgid}</if>
@@ -121,6 +124,23 @@
    <select id="selectSvyLibTemplateTargetoptionById" parameterType="Long" resultMap="SvyLibTemplateTargetoptionResult">
        <include refid="selectSvyLibTemplateTargetoptionVo"/>
        where id = #{id}
    </select>
    <!--
        满意度统计:一次取回多个问题的选项分值(只取 scriptid、score)。
        等价于逐个问题执行 selectSvyLibTemplateTargetoptionList(scriptid),但只取用得到的列;
        scriptIds 为空时不加 scriptid 过滤(对应原查询 scriptid 为 null 时丢弃该条件的行为)。
    -->
    <select id="selectSvyLibTargetoptionScores" resultType="java.util.Map">
        select scriptid as scriptid, score as score
        from svy_lib_template_targetoption
        where del_flag = 0
        <if test="scriptIds != null and scriptIds.size() > 0">
            and scriptid IN
            <foreach collection="scriptIds" item="scriptId" open="(" separator="," close=")">
                #{scriptId}
            </foreach>
        </if>
    </select>
    <insert id="insertSvyLibTemplateTargetoption" parameterType="com.smartor.domain.SvyLibTemplateTargetoption"
@@ -164,6 +184,7 @@
            <if test="prompt != null">prompt,</if>
            <if test="sendTaskid != null">send_taskid,</if>
            <if test="sendTaskname != null">send_taskname,</if>
            <if test="defaultValue != null">default_value,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="groupid != null">#{groupid},</if>
@@ -203,6 +224,7 @@
            <if test="prompt != null">#{prompt},</if>
            <if test="sendTaskid != null">#{sendTaskid},</if>
            <if test="sendTaskname != null">#{sendTaskname},</if>
            <if test="defaultValue != null">#{defaultValue},</if>
        </trim>
    </insert>
@@ -246,6 +268,7 @@
            <if test="prompt != null">prompt = #{prompt},</if>
            <if test="sendTaskid != null">send_taskid= #{sendTaskid},</if>
            <if test="sendTaskname != null">send_taskname = #{sendTaskname},</if>
            <if test="defaultValue != null">default_value = #{defaultValue},</if>
        </trim>
        where id = #{id}
    </update>
@@ -262,4 +285,14 @@
            #{id}
        </foreach>
    </delete>
    <select id="selectByScriptIds" resultMap="SvyLibTemplateTargetoptionResult">
        <include refid="selectSvyLibTemplateTargetoptionVo"/>
        where del_flag = 0
        and scriptid in
        <foreach item="scriptId" collection="scriptIds" open="(" separator="," close=")">
            #{scriptId}
        </foreach>
        <if test="orgid != null and orgid != ''">and orgid = #{orgid}</if>
    </select>
</mapper>