fuliqi
2025-02-10 27e913d6d28a9cfa0785d15453a4de10fd36ce6d
ycl-server/src/main/resources/mapper/zgyw/CalculateRecordMapper.xml
@@ -3,13 +3,39 @@
<mapper namespace="com.ycl.platform.mapper.CalculateRecordMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.ycl.platform.domain.vo.CalculateRecordVO">
    <resultMap id="BaseResultMap" type="com.ycl.platform.domain.vo.CalculateReportDetailVO">
        <result column="id" property="id" />
        <result column="create_time" property="createTime" />
        <result column="rule_id" property="ruleId" />
        <result column="contract_id" property="contractId" />
        <result column="deduct_category" property="unitName" />
        <result column="score_condition" property="contractName" />
        <result column="description" property="calculateTime" />
        <result column="deduct_money" property="deductMoney" />
        <result column="score" property="score" />
        <result column="score" property="deductMoney" />
        <collection property="recordList" column="contract_id" select="selectByContractId" ofType="com.ycl.platform.domain.vo.CalculateMoneyRuleVO"/>
    </resultMap>
    <update id="updateBatch" parameterType="java.util.List">
        update t_calculate_record
        <trim prefix="set" suffixOverrides=","><!-- 表示在生成的 SQL 语句前面添加 set 关键字,并移除末尾逗号 -->
            <trim prefix="deduct_money =case" suffix="end,"><!-- 构造case语法 末尾加上end,如果需要更新多个字段复制这个trim -->
                <foreach collection="list" item="item">
                    when id=#{item.id} then #{item.deductMoney}
                </foreach>
            </trim>
        </trim>
        where id in
        <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
            #{item.id,jdbcType=BIGINT}
        </foreach>
    </update>
    <update id="batchPublish">
        update t_calculate_record set status = 'PUBLISHED'
        where contract_id = #{contractId} and which_year =#{whichYear}
    </update>
    <update id="updatePublishById">
        update t_calculate_record set status = #{status}
        where id = #{id}
    </update>
</mapper>