<?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="cc.mrbird.febs.mall.mapper.MallMoneyFlowMapper">
|
|
<select id="selectMoneyFlowInPage" resultType="cc.mrbird.febs.mall.vo.AdminMallMoneyFlowVo">
|
select * from mall_money_flow a where a.member_id = #{record.id}
|
order by a.CREATED_TIME desc
|
</select>
|
|
<select id="selectApiMoneyFlowInPage" resultType="cc.mrbird.febs.mall.vo.MoneyFlowVo">
|
select
|
a.*,
|
case when a.rt_member_id is null then (select n.phone from mall_member n where n.id=a.member_id)
|
when a.rt_member_id is not null then (select m.phone from mall_member m where m.id=a.rt_member_id)
|
end phone,
|
c.description memberLevel
|
from mall_money_flow a
|
left join mall_member b on a.rt_member_id=b.id
|
left join data_dictionary_custom c on b.level = c.code and c.type='AGENT_LEVEL'
|
<where>
|
<if test="record.type == 3">
|
and a.amount > 0
|
</if>
|
<if test="record.type == 2">
|
and 0 > a.amount
|
</if>
|
<if test="record.memberId != null">
|
and a.member_id=#{record.memberId}
|
</if>
|
</where>
|
order by a.created_time desc
|
</select>
|
|
<select id="getMoneyFlowListInPage" resultType="cc.mrbird.febs.mall.vo.AdminMoneyFlowListVo">
|
select
|
a.*,
|
b.name,
|
b.bind_phone bindPhone,
|
c.pay_method payMethod,
|
b.phone
|
from mall_money_flow a
|
inner join mall_member b on a.member_id=b.id
|
left join mall_order_info c on a.order_no = c.order_no
|
<where>
|
<if test="record != null" >
|
<if test="record.name!=null and record.name!=''">
|
and b.name like concat('%', #{record.name},'%')
|
</if>
|
<if test="record.phone!=null and record.phone!=''">
|
and b.phone like concat('%', #{record.phone},'%')
|
</if>
|
<if test="record.type!=null and record.type!=''">
|
and a.type like concat('%', #{record.type},'%')
|
</if>
|
</if>
|
</where>
|
order by a.created_time desc
|
</select>
|
|
<select id="getMoneyChargeListInPage" resultType="cc.mrbird.febs.mall.vo.AdminMoneyChargeListVo">
|
select
|
a.*,
|
b.name,
|
b.bind_phone bindPhone,
|
b.phone
|
from mall_money_flow a
|
inner join mall_member b on a.member_id=b.id
|
<where>
|
a.type = 6
|
<if test="record != null" >
|
<if test="record.name!=null and record.name!=''">
|
and b.name like concat('%', #{record.name},'%')
|
</if>
|
<if test="record.phone!=null and record.phone!=''">
|
and b.phone like concat('%', #{record.phone},'%')
|
</if>
|
<if test="record.status!=null and record.status!=''">
|
and a.status = #{record.status}
|
</if>
|
</if>
|
</where>
|
order by a.created_time desc
|
</select>
|
|
<select id="selectMoneyFlowProfitByDate" resultType="cc.mrbird.febs.mall.entity.MallMoneyFlow">
|
select a.member_id, sum(a.amount) amount from mall_money_flow a
|
where a.type in (1, 2) and date_format(a.created_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d')
|
and is_return is null
|
group by a.member_id;
|
</select>
|
|
<update id="updateIsReturnByMemberId">
|
update mall_money_flow
|
set is_return=#{isReturn}
|
where member_id=#{memberId} and type in (1, 2)
|
</update>
|
|
<select id="selectProfitByDateAndMemberId" resultType="java.math.BigDecimal">
|
select sum(a.amount) from mall_money_flow a where member_id=#{memberId} and type in (1,2) and date_format(a.CREATED_TIME, '%Y-%m-%d') = date_format(now(), '%Y-%m-%d');
|
</select>
|
</mapper>
|