退款金额排行查询

master
yixian 7 years ago
parent 1549c64c08
commit 7ffee061f0

@ -3,53 +3,50 @@
<mapper namespace="au.com.royalpay.payment.manage.mappers.payment.RefundMapper"> <mapper namespace="au.com.royalpay.payment.manage.mappers.payment.RefundMapper">
<select id="listOrderRefunds" resultType="com.alibaba.fastjson.JSONObject"> <select id="listOrderRefunds" resultType="com.alibaba.fastjson.JSONObject">
SELECT SELECT r.*,
r.*, a.audit_result,
a.audit_result, a.auditorname,
a.auditorname, a.audittime
a.audittime
FROM pmt_refunds r FROM pmt_refunds r
LEFT JOIN pmt_refund_applies a ON a.refund_id = r.refund_id LEFT JOIN pmt_refund_applies a ON a.refund_id = r.refund_id
WHERE r.order_id = #{order_id} WHERE r.order_id = #{order_id}
</select> </select>
<select id="findRefundInfoByDay" resultType="com.alibaba.fastjson.JSONObject"> <select id="findRefundInfoByDay" resultType="com.alibaba.fastjson.JSONObject">
<![CDATA[ <![CDATA[
SELECT SELECT IFNULL(SUM(prf.amount), 0) total_refund_amount,
IFNULL(SUM(prf.amount), 0) total_refund_amount, IFNULL(COUNT(prf.refund_id), 0) total_refund_count,
IFNULL(COUNT(prf.refund_id), 0) total_refund_count, MAX(prf.amount) max_refund_amount
MAX(prf.amount) max_refund_amount
FROM pmt_refunds prf FROM pmt_refunds prf
WHERE prf.create_time <= #{end} WHERE prf.create_time <= #{end}
AND prf.create_time >= #{begin} AND prf.create_time >= #{begin}
AND prf.status IN ('2', '4', '5') AND prf.status IN ('2', '4', '5')
]]> ]]>
</select> </select>
<select id="findClientMoniker" resultType="com.alibaba.fastjson.JSONObject"> <select id="findClientMoniker" resultType="com.alibaba.fastjson.JSONObject">
<![CDATA[ <![CDATA[
SELECT DISTINCT sysc.* SELECT DISTINCT sysc.*
FROM sys_clients sysc, FROM sys_clients sysc,
pmt_refunds prf pmt_refunds prf
WHERE prf.create_time <= #{end} WHERE prf.create_time <= #{end}
AND prf.create_time >= #{begin} AND prf.create_time >= #{begin}
AND prf.amount = #{amount} AND prf.amount = #{amount}
AND sysc.client_id = prf.client_id AND sysc.client_id = prf.client_id
AND prf.status IN ('2', '4', '5') AND prf.status IN ('2', '4', '5')
]]> ]]>
</select> </select>
<select id="listRefundCount" resultType="com.alibaba.fastjson.JSONObject"> <select id="listRefundCount" resultType="com.alibaba.fastjson.JSONObject">
<![CDATA[ <![CDATA[
SELECT SELECT count(1) refund_counts,
count(1) refund_counts, sum(ptr.clearing_amount) refund_amount,
sum(prf.amount) refund_amount, sysc.client_moniker
sysc.client_moniker FROM sys_clients sysc
FROM pmt_refunds prf, inner join pmt_refunds prf on prf.client_id = sysc.client_id and prf.create_time <= #{end}
sys_clients sysc AND prf.create_time >= #{begin}
WHERE prf.create_time <= #{end} inner join pmt_transactions ptr on ptr.refund_id = prf.refund_id and ptr.transaction_type = 'Debit' and
AND prf.create_time >= #{begin} ptr.system_generate = 0
AND prf.client_id = sysc.client_id
AND prf.status IN ('2', '4', '5')
GROUP BY prf.client_id GROUP BY prf.client_id
ORDER BY refund_amount DESC ORDER BY refund_amount DESC
limit 30
]]> ]]>
</select> </select>
<select id="listRefundDate" resultType="com.alibaba.fastjson.JSONObject"> <select id="listRefundDate" resultType="com.alibaba.fastjson.JSONObject">
@ -57,7 +54,7 @@
SELECT * SELECT *
FROM calendar FROM calendar
WHERE datelist >= #{begin} WHERE datelist >= #{begin}
AND datelist <= #{end} AND datelist <= #{end}
ORDER BY datelist ASC ORDER BY datelist ASC
]]> ]]>
</select> </select>
@ -71,53 +68,53 @@
</select> </select>
<select id="listUnionAllApply" resultType="com.alibaba.fastjson.JSONObject"> <select id="listUnionAllApply" resultType="com.alibaba.fastjson.JSONObject">
SELECT SELECT
order_id order_id, order_id order_id,
client_id client_id, client_id client_id,
create_time create_time, create_time create_time,
confirm_time confirm_time, confirm_time confirm_time,
operator_name operator_name, operator_name operator_name,
`status` `status` , `status` `status` ,
amount amount, amount amount,
currency currency, currency currency,
1 type 1 type
FROM FROM
pmt_refunds pmt_refunds
<where> <where>
<if test="client_id!=null"> <if test="client_id!=null">
and client_id = #{client_id} and client_id = #{client_id}
</if>
<if test="start_time!=null">
and create_time &gt;= #{start_time}
</if>
<if test="start_time!=null">
and create_time &lt;= #{end_time}
</if>
<if test="client_ids!=null">
client_id in
<foreach collection="client_ids" open="(" close=")" separator="," item="item">
#{item}
</foreach>
</if> </if>
<if test="start_time!=null">
and create_time &gt;= #{start_time}
</if>
<if test="start_time!=null">
and create_time &lt;= #{end_time}
</if>
<if test="client_ids!=null">
client_id in
<foreach collection="client_ids" open="(" close=")" separator="," item="item">
#{item}
</foreach>
</if>
</where> </where>
UNION ALL UNION ALL
SELECT SELECT
ra.order_id order_id, ra.order_id order_id,
ra.client_id client_id, ra.client_id client_id,
ra.applytime create_time, ra.applytime create_time,
ra.audittime confirm_time, ra.audittime confirm_time,
ra.auditorname operator_name, ra.auditorname operator_name,
ra.audit_result `status` , ra.audit_result `status` ,
r.amount amount, r.amount amount,
r.currency currency, r.currency currency,
2 type 2 type
FROM FROM
pmt_refund_applies ra left join pmt_refunds r on ra.refund_id = r.refund_id pmt_refund_applies ra left join pmt_refunds r on ra.refund_id = r.refund_id
<where> <where>
<if test="client_id!=null"> <if test="client_id!=null">
and ra.client_id = #{client_id} and ra.client_id = #{client_id}
</if> </if>
<if test="start_time!=null"> <if test="start_time!=null">
and ra.applytime &gt;= #{start_time} and ra.applytime &gt;= #{start_time}
</if> </if>
<if test="start_time!=null"> <if test="start_time!=null">
and ra.applytime &lt;= #{end_time} and ra.applytime &lt;= #{end_time}

Loading…
Cancel
Save