From f21b1c12248daaac71491aaf2e46908fadc63377 Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Sun, 11 Jun 2023 11:34:21 +0800
Subject: [PATCH] fix
---
src/main/resources/mapper/modules/MallMoneyFlowMapper.xml | 219 +++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 207 insertions(+), 12 deletions(-)
diff --git a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
index b9be8d9..dcfaea2 100644
--- a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
+++ b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
@@ -3,25 +3,40 @@
<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}
+ select
+ a.*,
+ b.name fromMemberName
+ from mall_money_flow a
+ left join mall_member b on a.rt_member_id = b.id
+ 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.*,
- b.phone
+ 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
- inner join mall_member b on a.member_id=b.id
+ 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">
+ <if test="record.inOrOut == 3">
and a.amount > 0
</if>
- <if test="record.type == 2">
+ <if test="record.inOrOut == 2">
and 0 > a.amount
</if>
<if test="record.memberId != null">
and a.member_id=#{record.memberId}
+ </if>
+ <if test="record.flowType != null and record.flowType != ''">
+ and a.flow_type=#{record.flowType}
+ </if>
+ <if test="record.type != null and record.type != ''">
+ and a.type=#{record.type}
</if>
</where>
order by a.created_time desc
@@ -31,13 +46,15 @@
select
a.*,
b.name,
+ b.bind_phone bindPhone,
c.pay_method payMethod,
- b.phone
+ b.phone,
+ d.name fromMemberName
from mall_money_flow a
- inner join mall_member b on a.member_id=b.id
+ left join mall_member b on a.member_id=b.id
left join mall_order_info c on a.order_no = c.order_no
+ left join mall_member d on d.id = a.rt_member_id
<where>
- a.type != 6
<if test="record != null" >
<if test="record.name!=null and record.name!=''">
and b.name like concat('%', #{record.name},'%')
@@ -46,7 +63,10 @@
and b.phone like concat('%', #{record.phone},'%')
</if>
<if test="record.type!=null and record.type!=''">
- and a.type like concat('%', #{record.type},'%')
+ and a.type = #{record.type}
+ </if>
+ <if test="record.flowType!=null and record.flowType!=''">
+ and a.flow_type like concat('%', #{record.flowType},'%')
</if>
</if>
</where>
@@ -55,13 +75,188 @@
<select id="getMoneyChargeListInPage" resultType="cc.mrbird.febs.mall.vo.AdminMoneyChargeListVo">
select
- a.*,
+ a.id id,
+ a.created_time createdTime,
+ a.amount amount,
+ a.amount_fee amountFee,
+ a.withdraw_no withdrawNo,
+ a.remark remark,
+ a.status status,
b.name,
+ b.bind_phone bindPhone,
b.phone
- from mall_money_flow a
+ from mall_member_withdraw 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 ifnull(sum(a.amount),0) from mall_money_flow a
+ where member_id=#{memberId} and flow_type=4 and date_format(a.CREATED_TIME, '%Y-%m-%d') = date_format(now(), '%Y-%m-%d') and amount > 0
+ </select>
+
+ <select id="selectCommissionIncome" resultType="java.math.BigDecimal">
+ select ifnull(sum(amount),0) from mall_money_flow
+ where flow_type = 1 and type in (1,2,3,4,5,7,17) and member_id=#{memberId} and amount > 0
+ <if test="type == 1">
+ and date_format(created_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d')
+ </if>
+ <if test="type == 2">
+ and date_format(created_time, '%Y-%m') = date_format(#{date}, '%Y-%m')
+ </if>
+ </select>
+
+ <select id="selectThankfulCommission" resultType="java.math.BigDecimal">
+ select ifnull(sum(amount),0) from mall_money_flow
+ where flow_type=4 and amount > 0
+ and member_id=#{memberId}
+ and date_format(created_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d')
+ and type in (2,3,4)
+ </select>
+
+ <insert id="insertMoneyFlow" parameterType="cc.mrbird.febs.mall.entity.MallMoneyFlow">
+ insert into mall_money_flow(
+ REVISION,
+ CREATED_BY,
+ CREATED_TIME,
+ UPDATED_BY,
+ UPDATED_TIME,
+ member_id,
+ amount,
+ type,
+ order_no,
+ rt_member_id,
+ status,
+ remark,
+ flow_type) VALUES
+ (
+ #{revision},
+ #{createdBy},
+ #{createdTime},
+ #{updatedBy},
+ #{updatedTime},
+ #{memberId},
+ #{amount},
+ #{type},
+ #{orderNo},
+ #{rtMemberId},
+ #{status},
+ #{remark},
+ #{flowType}
+ )
+ </insert>
+
+ <select id="selectTeamEqualsMemberByDate" resultType="cc.mrbird.febs.mall.vo.AdminTeamEqualsPerkVo">
+ select
+ a.member_id memberId,
+ sum(a.amount) sumAmount,
+ c.id rtMemberId
+ from mall_money_flow a
+ inner join mall_member b on b.id = a.member_id
+ inner join mall_member c on c.invite_id = b.referrer_id and c.level = b.level
+ where
+ a.type IN (19, 20, 21, 22, 23, 24, 27)
+ and date_format(a.created_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d')
+ group by a.member_id;
+ </select>
+
+ <select id="selectOrderMoneyFlowInPage" resultType="cc.mrbird.febs.mall.vo.AdminMallMoneyFlowVo">
+ select
+ a.*,
+ b.name fromMemberName
+ from mall_money_flow a
+ left join mall_member b on a.member_id = b.id
+ where a.order_no = #{record.orderNo}
+ order by a.CREATED_TIME desc
+ </select>
+
+ <select id="selectMoneyFlowByMemberIdAndIsRetrun" resultType="cc.mrbird.febs.mall.entity.MallMoneyFlow">
+ SELECT
+ *
+ FROM
+ mall_money_flow a
+ WHERE
+ a.type = 26
+ AND a.flow_type = 6
+ AND a.is_return = #{isReturn}
+ AND a.member_id = #{memberId}
+ ORDER BY
+ a.created_time ASC
+ </select>
+
+ <update id="updateRemarkById">
+ update mall_money_flow
+ <set>
+ remark = #{remark}
+ </set>
+ WHERE id = #{id}
+ </update>
+
+ <update id="updateRemarkAndIsReturnById">
+ update mall_money_flow
+ <set>
+ remark = #{remark},
+ is_return = 1
+ </set>
+ WHERE id = #{id}
+ </update>
+
+ <select id="selectByOrderNoAndMemberId" resultType="cc.mrbird.febs.mall.entity.MallMoneyFlow">
+ SELECT
+ *
+ FROM
+ mall_money_flow a
+ WHERE
+ a.type = 25
+ AND a.flow_type = 5
+ AND a.is_return = #{isReturn}
+ AND a.member_id = #{memberId}
+ AND a.order_no = #{orderNo}
+ ORDER BY
+ a.created_time ASC
+ </select>
+
+ <select id="selectChargeListForExcel" resultType="cc.mrbird.febs.mall.vo.ChargeListExportVo">
+ select
+ b.name memberName
+ ,b.phone phone
+ ,a.amount
+ ,c.CREATED_TIME createTime
+ ,c.bank_name bankName
+ ,c.bank_no bankNo
+ ,c.name cardName
+ ,c.subbranch_name subbranchName
+ ,c.phone bankPhone
+ from mall_member_withdraw a
+ inner join mall_member b on a.member_id=b.id
+ inner join mall_member_bank c on b.id=c.member_id
+ <where>
<if test="record != null" >
<if test="record.name!=null and record.name!=''">
and b.name like concat('%', #{record.name},'%')
--
Gitblit v1.9.1