ChannelFeeMapper.xml
4.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<?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.lecuntao.ordering.customization.dal.ChannelFeeMapper">
<sql id="whereForFindList">
<if test="request.payType!=null"> AND pl.PAY_TYPE = #{ request.payType }</if>
<if test="request.startTime!=null"> AND o.CLOSE_TIME >=#{ request.startTime }</if>
<if test="request.endTime!=null"> AND o.CLOSE_TIME <=#{ request.endTime }</if>
</sql>
<sql id="whereForFindDetailList">
<if test="request.closeTime!=null"> AND DATE_ID = #{ request.closeTime}</if>
<if test="request.id !=null"> AND m.id = #{ request.id }</if>
</sql>
<select id="find" resultMap="channelFeePO">
select DATE_FORMAT(o.CLOSE_TIME,'%Y-%m-%d') as closeTime ,m.id,m.`NAME`,m.TYPE,pl.PAY_TYPE,SUM(pl.CHANNEL_FEE) as total
from marketplace.ec_order_head o
left join marketplace.ec_payment_head ph on o.id = ph.ORDER_HEAD_ID
left join marketplace.ec_payment_line pl on ph.ID = pl.PAYMENT_HEAD_ID
left join membership.mem_member m on m.id = o.member_id
WHERE
o.`IS_DELETED`=0
AND o.MEMBER_ID IS NOT NULL
AND m.id IS NOT NULL
<include refid="whereForFindList" />
group by o.CLOSE_DATE_ID,MEMBER_ID,pl.PAY_TYPE
<if test="request.pageSize !=0">
LIMIT #{ request.beginItemIndex }, #{ request.pageSize }
</if>
</select>
<select id="findCount" resultType="java.lang.Long">
SELECT
COUNT(*)
from ( select DATE_FORMAT(o.CLOSE_TIME,'%Y-%m-%d') as closeTime ,m.id,m.`NAME`,m.TYPE,pl.PAY_TYPE,SUM(pl.CHANNEL_FEE) as total
from marketplace.ec_order_head o
left join marketplace.ec_payment_head ph on o.id = ph.ORDER_HEAD_ID
left join marketplace.ec_payment_line pl on ph.ID = pl.PAYMENT_HEAD_ID
left join membership.mem_member m on m.id = o.member_id
WHERE
o.`IS_DELETED`=0
AND o.MEMBER_ID IS NOT NULL
AND m.id IS NOT NULL
<include refid="whereForFindList" />
group by o.CLOSE_DATE_ID,MEMBER_ID,pl.PAY_TYPE) as temp
</select>
<select id="findDetail" resultMap="channelFeeDetailPO">
select ou.`NAME` as name,st.`NAME` as storeName,m.id as id,m.`NAME`as memberName,m.TYPE as memberType,DATE_ID as dateId,
o.SOURCE_NUMBER as sourceNumber,o.TOTAL_AMOUNT as totalAmount,o.REVENUE_AMOUNT as revenueAmount,pl.PAY_TYPE as payType,pl.CHANNEL_FEE as channelFee
from marketplace.ec_order_head o
left join marketplace.ec_payment_head ph on o.id = ph.ORDER_HEAD_ID
left join marketplace.ec_payment_line pl on ph.ID = pl.PAYMENT_HEAD_ID
left join membership.mem_member m on m.id = o.member_id
left join backend.hr_operating_unit ou on ou.ID = o.OPERATING_UNIT_ID
left join backend.md_store st on st.id = o.STORE_ID
WHERE
o.`IS_DELETED`=0
<include refid="whereForFindDetailList" />
<if test="request.pageSize !=0">
LIMIT #{ request.beginItemIndex }, #{ request.pageSize }
</if>
</select>
<select id="findDetailCount" resultType="java.lang.Long">
SELECT
COUNT(*)
from ( select ou.`NAME` as name,st.`NAME` as storeName,m.id as id,m.`NAME`as memberName,m.TYPE as memberType,DATE_ID as dateId,
o.SOURCE_NUMBER as sourceNumber,o.TOTAL_AMOUNT as totalAmount,o.REVENUE_AMOUNT as revenueAmount,pl.PAY_TYPE as payType,pl.CHANNEL_FEE as channelFee
from marketplace.ec_order_head o
left join marketplace.ec_payment_head ph on o.id = ph.ORDER_HEAD_ID
left join marketplace.ec_payment_line pl on ph.ID = pl.PAYMENT_HEAD_ID
left join membership.mem_member m on m.id = o.member_id
left join backend.hr_operating_unit ou on ou.ID = o.OPERATING_UNIT_ID
left join backend.md_store st on st.id = o.STORE_ID
WHERE
o.`IS_DELETED`=0
<include refid="whereForFindDetailList" />) as temp
</select>
</mapper>