RewardRedeemMapper.xml 6.78 KB
Newer Older
zhaobiyan's avatar
zhaobiyan committed
1 2 3 4 5 6 7 8 9 10 11
<?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="cn.iocoder.yudao.module.reward.dal.mysql.redeem.RewardRedeemMapper">

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

zhaobiyan's avatar
zhaobiyan committed
12 13
    <select id="pageInfo" resultType="cn.iocoder.yudao.module.reward.vo.reward.RewardRedeemPageRespVO">
        select
zhaobiyan's avatar
zhaobiyan committed
14 15 16 17
        <include refid="columns"/>
        from ecw_reward_redeem err
        left join ecw_reward er on err.reward_id = er.id
        left join member_user mu on mu.id = err.member_id
18
        left join ecw_node en on er.node_id = en.id
zhaobiyan's avatar
zhaobiyan committed
19 20 21
        left join system_user suc on suc.id = er.creator
        left join system_user suu on suu.id = er.updater
        left join ecw_currency cc on err.currency = cc.id
zhaobiyan's avatar
zhaobiyan committed
22
        left join ecw_express ee on err.courier_company = ee.id
zhaobiyan's avatar
zhaobiyan committed
23 24
        where 1=1
        <include refid="pageCondition"/>
zhaobiyan's avatar
zhaobiyan committed
25
        order by err.create_time desc
zhaobiyan's avatar
zhaobiyan committed
26 27 28 29 30 31 32
        limit #{start}, #{size}
    </select>
    <select id="pageCount" resultType="java.lang.Integer">
        select count(*)
        from ecw_reward_redeem err
        left join ecw_reward er on err.reward_id = er.id
        left join member_user mu on mu.id = err.member_id
33
        left join ecw_node en on er.node_id = en.id
zhaobiyan's avatar
zhaobiyan committed
34 35
        left join system_user suc on suc.id = er.creator
        left join system_user suu on suu.id = er.updater
zhaobiyan's avatar
zhaobiyan committed
36
        left join ecw_express ee on err.courier_company = ee.id
zhaobiyan's avatar
zhaobiyan committed
37 38 39 40 41
        where 1=1
        <include refid="pageCondition"/>
    </select>
    <select id="detail" resultType="cn.iocoder.yudao.module.reward.vo.reward.RewardRedeemPageRespVO">
        select
42 43
        mus.hold_score as holdScore,
        er.points_require as pointsRequire,
zhangfeng's avatar
zhangfeng committed
44 45
        er.start_time as startTime,
        er.end_time as endTime,
46 47 48
        er.img_zh as imgZh,
        er.img_en as imgEn,
        er.points_require as oncePointsRequire,
zhaobiyan's avatar
zhaobiyan committed
49 50 51 52
        <include refid="columns"/>
        from ecw_reward_redeem err
        left join ecw_reward er on err.reward_id = er.id
        left join member_user mu on mu.id = err.member_id
53
        left join member_user_score mus on mu.id = mus.member_id
54
        left join ecw_node en on er.node_id = en.id
zhaobiyan's avatar
zhaobiyan committed
55 56 57
        left join system_user suc on suc.id = er.creator
        left join system_user suu on suu.id = er.updater
        left join ecw_currency cc on err.currency = cc.id
zhaobiyan's avatar
zhaobiyan committed
58
        left join ecw_express ee on err.courier_company = ee.id
zhaobiyan's avatar
zhaobiyan committed
59 60
        where err.id = #{id}
    </select>
zhaobiyan's avatar
zhaobiyan committed
61 62 63 64 65 66
    <select id="exportList" resultType="cn.iocoder.yudao.module.reward.vo.reward.RewardRedeemPageRespVO">
        select
        <include refid="columns"/>
        from ecw_reward_redeem err
        left join ecw_reward er on err.reward_id = er.id
        left join member_user mu on mu.id = err.member_id
67
        left join ecw_node en on er.node_id = en.id
zhaobiyan's avatar
zhaobiyan committed
68 69 70 71 72 73 74 75
        left join system_user suc on suc.id = er.creator
        left join system_user suu on suu.id = er.updater
        left join ecw_currency cc on err.currency = cc.id
        left join ecw_express ee on err.courier_company = ee.id
        where 1=1
        <include refid="pageCondition"/>
        order by er.create_time desc
    </select>
zhaobiyan's avatar
zhaobiyan committed
76 77

    <sql id="columns">
zhaobiyan's avatar
zhaobiyan committed
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
        err.id ,
        err.member_id as memberId,
        err.reward_id as rewardId,
        err.status,
        err.reward_count as rewardCount,
        err.redeem_type as redeemType,
        err.entrance,
        err.expenses,
        err.currency,
        err.recipient_name as recipientName,
        err.recipient_phone_num as recipientPhoneNum,
        err.recipient_address as recipientAddress,
        err.redeemer,
        err.redemption_time as redemptionTime,
        err.courier_company as courierCompany,
zhaobiyan's avatar
zhaobiyan committed
93
        ee.company_name as courierCompanyName,
zhaobiyan's avatar
zhaobiyan committed
94 95 96 97 98 99 100 101 102 103
        err.express_no as expressNo,
        err.express_date as expressDate,
        err.express_sender as expressSender,
        err.annex as annex,
        err.remark as remark,
        err.create_time as createTime,
        err.update_time as updateTime,
        err.creator as creator,
        err.updater as updater,
        err.deleted as deleted,
zhaobiyan's avatar
zhaobiyan committed
104 105
        err.verify_user as verifyUser,
        err.verify_time as verifyTime,
106 107
        mu.nickname as memberNameZh,
        mu.english_name as memberNameEn,
zhaobiyan's avatar
zhaobiyan committed
108 109 110 111 112 113
        er.code as rewardCode,
        er.title_zh as rewardTitleZh,
        er.title_en as rewardTitleEn,
        er.title_fr as rewardTitleFr,
        en.title_zh as nodeTitleZh,
        en.title_en as nodeTitleEn,
zhaobiyan's avatar
zhaobiyan committed
114
        err.score_count as totalCount,
zhaobiyan's avatar
zhaobiyan committed
115 116
        suc.username as creatorName,
        suu.username as updaterName,
117 118
        cc.title_zh as currencyTitleZh,
        cc.title_en as currencyTitleEn,
zhaobiyan's avatar
zhaobiyan committed
119
        (select username from system_user where id = er.updater) as updaterName
zhaobiyan's avatar
zhaobiyan committed
120
    </sql>
zhaobiyan's avatar
zhaobiyan committed
121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141

    <sql id="pageCondition">
        <if test="req.rewardTitle != null and req.rewardTitle !=''">
            and (er.title_zh like '%${req.rewardTitle}%' or er.title_en like '%${req.rewardTitle}%' or er.title_fr like '%${req.rewardTitle}%')
        </if>
        <if test="req.memberName != null and req.memberName !=''">
            and mu.nickname like '%${req.memberName}%'
        </if>
        <if test="req.rewardCode != null and req.rewardCode !=''">
            and er.code like '%${req.rewardCode}%'
        </if>
        <if test="req.redeemType != null">
            and err.redeem_type = #{req.redeemType}
        </if>
        <if test="req.status != null">
            and err.status = #{req.status}
        </if>
        <if test="req.entrance != null">
            and err.entrance = #{req.entrance}
        </if>
        <if test="req.nodeId != null">
142
            and er.node_id = #{req.nodeId}
zhaobiyan's avatar
zhaobiyan committed
143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161
        </if>
        <if test="req.rewardCount != null and req.rewardCountOperate != null">
            <!--1:大于 2:等于 3:小于-->
            <if test="req.rewardCountOperate == 1">
                and err.reward_count &gt; #{req.rewardCount}
            </if>
            <if test="req.rewardCountOperate == 2">
                and err.reward_count = #{req.rewardCount}
            </if>
            <if test="req.rewardCountOperate == 3">
                and err.reward_count &lt; #{req.rewardCount}
            </if>
        </if>
        <if test="req.startTime != null ">
            and err.create_time &gt;= #{req.startTime}
        </if>
        <if test="req.endTime != null ">
            and err.create_time &lt;= #{req.endTime}
        </if>
162 163 164
        <if test="req.memberId != null">
            and err.member_id = #{req.memberId}
        </if>
zhaobiyan's avatar
zhaobiyan committed
165
    </sql>
zhaobiyan's avatar
zhaobiyan committed
166
</mapper>