zhubaomin
2025-02-21 1f19230e00b543b58f03853df1a38ebd8b508e55
pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeRechargeHistoryMapper.xml
@@ -177,4 +177,47 @@
      operateDt = #{operatedt,jdbcType=TIMESTAMP}
    where id = #{id,jdbcType=BIGINT}
  </update>
  <!--依据水卡ID将最后一条无效状态的充值历史记录改为有效-->
  <update id="turnRechargeHistoryValidByCardId">
    UPDATE se_recharge_history
        SET operate_valid = 2
    WHERE id = (
        SELECT id FROM (
            SELECT id
            FROM se_recharge_history
            WHERE operate_valid = 1 AND cardId = #{cardId}
            ORDER BY id DESC
        LIMIT 1) AS subquery
    );
  </update>
<!-- /////////////////////////////////// -->
<!-- 统计相关                              -->
<!-- /////////////////////////////////// -->
  <select id="statisticsByIc" resultType="com.dy.pipIrrGlobal.voSt.VoIcRechargeStatistics">
    select clientId as clientId,
           cardId as cardId,
           sum(amount) as amount,
           sum(gift) as gift,
           count(*) as times
    from se_recharge_history
    where operate_valid = 2
    and id <![CDATA[>=]]> #{startId, jdbcType=BIGINT}
    and id <![CDATA[<]]> #{endId, jdbcType=BIGINT}
    group by clientId, cardId
  </select>
  <select id="statisticsByClient" resultType="com.dy.pipIrrGlobal.voSt.VoClientRechargeStatistics">
    select clientId as clientId,
           sum(amount) as amount,
           sum(gift) as gift,
           count(*) as times
    from se_recharge_history
    where operate_valid = 2
    and id <![CDATA[>=]]> #{startId, jdbcType=BIGINT}
    and id <![CDATA[<]]> #{endId, jdbcType=BIGINT}
    group by clientId
  </select>
</mapper>