|
|
@ -4,24 +4,58 @@ |
|
|
|
|
|
|
|
<!-- 查询所有消费记录 --> |
|
|
|
<select id="selectAll" resultType="com.example.demo.domain.vo.ConsumeUser"> |
|
|
|
SELECT u.name AS name, |
|
|
|
u.jwcode AS jwcode, |
|
|
|
u.market AS market, |
|
|
|
ugr.goods_name AS goodsName, |
|
|
|
ugr.pay_platform AS payPlatform, |
|
|
|
ugr.sum_gold AS sumGold, |
|
|
|
ugr.permanent_gold AS permanentGold, |
|
|
|
(COALESCE(ugr.free_june, 0) + COALESCE(ugr.free_december, 0)) AS freeGold, |
|
|
|
ugr.task_gold AS taskGold, |
|
|
|
ugr.remark AS remark, |
|
|
|
a.admin_name AS adminName, |
|
|
|
ugr.create_time AS createTime |
|
|
|
SELECT u.name AS name, |
|
|
|
u.jwcode AS jwcode, |
|
|
|
u.market AS market, |
|
|
|
ugr.goods_name AS goodsName, |
|
|
|
ugr.pay_platform AS payPlatform, |
|
|
|
ugr.sum_gold AS sumGold, |
|
|
|
ugr.permanent_gold AS permanentGold, |
|
|
|
(COALESCE(ugr.free_june, 0) + COALESCE(ugr.free_december, 0)) AS freeGold, |
|
|
|
ugr.task_gold AS taskGold, |
|
|
|
ugr.remark AS remark, |
|
|
|
a.admin_name AS adminName, |
|
|
|
ugr.create_time AS createTime |
|
|
|
FROM user u |
|
|
|
JOIN |
|
|
|
user_gold_record ugr ON u.jwcode = ugr.jwcode |
|
|
|
JOIN |
|
|
|
admin a ON ugr.admin_id = a.id |
|
|
|
JOIN |
|
|
|
user_gold_record ugr ON u.jwcode = ugr.jwcode |
|
|
|
JOIN |
|
|
|
admin a ON ugr.admin_id = a.id |
|
|
|
WHERE ugr.type = 1 |
|
|
|
<trim prefix="ORDER BY" suffixOverrides=","> |
|
|
|
<choose> |
|
|
|
<!-- 当指定排序字段时使用指定字段排序 --> |
|
|
|
<when test="sortField != null and sortField != ''"> |
|
|
|
<choose> |
|
|
|
<!-- 对三种金币数量的排序处理 --> |
|
|
|
<when test="sortField == 'sumGold'">ugr.sum_gold</when> |
|
|
|
<when test="sortField == 'permanentGold'">ugr.permanent_gold</when> |
|
|
|
<when test="sortField == 'freeGold'">(COALESCE(ugr.free_june, 0) + COALESCE(ugr.free_december, 0))</when> |
|
|
|
<!-- 对时间字段的排序处理 --> |
|
|
|
<when test="sortField == 'createTime'">ugr.create_time</when> |
|
|
|
<!-- 其他字段不支持排序,使用默认排序 --> |
|
|
|
<otherwise>ugr.create_time</otherwise> |
|
|
|
</choose> |
|
|
|
|
|
|
|
<!-- 排序方向处理 --> |
|
|
|
<if test="sortOrder != null and sortOrder != ''"> |
|
|
|
<choose> |
|
|
|
<when test="sortOrder == 'ASC'">ASC</when> |
|
|
|
<when test="sortOrder == 'DESC'">DESC</when> |
|
|
|
<otherwise>DESC</otherwise> |
|
|
|
</choose> |
|
|
|
</if> |
|
|
|
<if test="sortOrder == null or sortOrder == ''"> |
|
|
|
DESC |
|
|
|
</if> |
|
|
|
</when> |
|
|
|
|
|
|
|
<!-- 未指定排序字段时,使用默认的时间降序排序 --> |
|
|
|
<otherwise> |
|
|
|
ugr.create_time DESC |
|
|
|
</otherwise> |
|
|
|
</choose> |
|
|
|
</trim> |
|
|
|
</select> |
|
|
|
|
|
|
|
<!-- 查询筛选后消费记录 --> |
|
|
@ -61,6 +95,40 @@ |
|
|
|
AND ugr.create_time BETWEEN #{startTime} AND #{endTime} |
|
|
|
</if> |
|
|
|
</where> |
|
|
|
<trim prefix="ORDER BY" suffixOverrides=","> |
|
|
|
<choose> |
|
|
|
<!-- 当指定排序字段时使用指定字段排序 --> |
|
|
|
<when test="sortField != null and sortField != ''"> |
|
|
|
<choose> |
|
|
|
<!-- 对三种金币数量的排序处理 --> |
|
|
|
<when test="sortField == 'sumGold'">ugr.sum_gold</when> |
|
|
|
<when test="sortField == 'permanentGold'">ugr.permanent_gold</when> |
|
|
|
<when test="sortField == 'freeGold'">(COALESCE(ugr.free_june, 0) + COALESCE(ugr.free_december, 0))</when> |
|
|
|
<!-- 对时间字段的排序处理 --> |
|
|
|
<when test="sortField == 'createTime'">ugr.create_time</when> |
|
|
|
<!-- 其他字段不支持排序,使用默认排序 --> |
|
|
|
<otherwise>ugr.create_time</otherwise> |
|
|
|
</choose> |
|
|
|
|
|
|
|
<!-- 排序方向处理 --> |
|
|
|
<if test="sortOrder != null and sortOrder != ''"> |
|
|
|
<choose> |
|
|
|
<when test="sortOrder == 'ASC'">ASC</when> |
|
|
|
<when test="sortOrder == 'DESC'">DESC</when> |
|
|
|
<otherwise>DESC</otherwise> |
|
|
|
</choose> |
|
|
|
</if> |
|
|
|
<if test="sortOrder == null or sortOrder == ''"> |
|
|
|
DESC |
|
|
|
</if> |
|
|
|
</when> |
|
|
|
|
|
|
|
<!-- 未指定排序字段时,使用默认的时间降序排序 --> |
|
|
|
<otherwise> |
|
|
|
ugr.create_time DESC |
|
|
|
</otherwise> |
|
|
|
</choose> |
|
|
|
</trim> |
|
|
|
</select> |
|
|
|
|
|
|
|
<insert id="add" parameterType="com.example.demo.domain.entity.UserGoldRecord" useGeneratedKeys="true" keyProperty="id"> |
|
|
|