<?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.yc.ship.module.ota.dal.mysql.distributorrecharge.DistributorRechargeMapper">

    <!--
        一般情况下，尽可能使用 Mapper 进行 CRUD 增删改查即可。
        无法满足的场景，例如说多表关联查询，才使用 XML 编写 SQL。
        代码生成器暂时只生成 Mapper XML 文件本身，更多推荐 MybatisX 快速开发插件来生成查询。
        文档可见：https://www.iocoder.cn/MyBatis/x-plugins/
     -->

    <select id="queryPage" resultType="com.yc.ship.module.ota.controller.admin.distributorrecharge.vo.DistributorRechargeRespVO">
        SELECT
        dr.id,
        dr.distributor_id,
        dr.`status`,
        dr.money,
        dr.recharge_type,
        dr.recharge_mode,
        dr.apply_remark,
        dr.apply_user,
        dr.apply_time,
        dr.apply_user_name,
        dr.audit_remark,
        dr.audit_time,
        dr.audit_user,
        dr.audit_user_name,
        od.name as distributor_name,
        tl.before_balance,
        tl.after_balance
        from
        ota_distributor_recharge dr
        INNER JOIN ota_distributor od on od.id=dr.distributor_id
        left JOIN ota_trade_log tl on tl.id = dr.recharge_log_id
        where dr.deleted =0
        <if test="param.distributorName != null and param.distributorName !=''">
            AND od.name like CONCAT('%', #{param.distributorName}, '%')
        </if>
        <if test="param.rechargeType != null ">
            and FIND_IN_SET(dr.recharge_type,#{param.rechargeType})
        </if>
        <if test="param.rechargeMode != null ">
            and FIND_IN_SET(dr.recharge_mode,#{param.rechargeMode})
        </if>
        <if test="param.status != null">
            and FIND_IN_SET(dr.status,#{param.status})
        </if>
        <if test="param.money != null ">
            and dr.money =#{param.money}
        </if>
        order by dr.create_time desc , dr.audit_time desc
    </select>

</mapper>