From ad22a1e5595b76436d005ba9f1f928ea094fe5c0 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 22 Sep 2022 17:52:42 +0800
Subject: [PATCH] fix

---
 src/main/resources/mapper/modules/MallMoneyFlowMapper.xml |  141 +++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 137 insertions(+), 4 deletions(-)

diff --git a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
index f5e1eb1..bb1a982 100644
--- a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
+++ b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
@@ -10,19 +10,152 @@
     <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 on a.rt_member_id=b.member_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 == 2">
+            <if test="record.inOrOut == 3">
                 and a.amount > 0
             </if>
-            <if test="record.type == 3">
+            <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
+    </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 test="record.flowType!=null and record.flowType!=''">
+                    and a.flow_type like concat('%',  #{record.flowType},'%')
+                </if>
+            </if>
+        </where>
+        order by a.created_time desc
+    </select>
+
+    <select id="getMoneyChargeListInPage" resultType="cc.mrbird.febs.mall.vo.AdminMoneyChargeListVo">
+        select
+        a.id id,
+        a.created_time createdTime,
+        a.amount amount,
+        a.amount_fee amountFee,
+        a.withdraw_no withdrawNo,
+        a.status status,
+        b.name,
+        b.bind_phone bindPhone,
+        b.phone
+        from mall_member_withdraw a
+        inner join mall_member b on a.member_id=b.id
+        <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.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 =4 and type in (1,2,3,4,5,6,7,15,16,17) and member_id=#{memberId}
+        <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>
+
+    <select id="selectOneByOrderNoAndMemberId" resultType="cc.mrbird.febs.mall.entity.MallMoneyFlow">
+        select a.* from mall_money_flow a
+        where a.order_no = #{rechargeNo} and a.member_id = #{memberId}
+    </select>
+
+    <select id="selectAmountByFlowtypeAndType" resultType="java.math.BigDecimal">
+        select ifnull(sum(a.amount),0) from mall_money_flow a
+        <where>
+            a.member_id = #{memberId}
+            <if test="flowType!=null and flowType!=''">
+                and  a.flow_type = #{flowType}
+            </if>
+            <if test="type!=null and type!=''">
+                and  a.type = #{type}
+            </if>
+            <if test="status!=null and status!=''">
+                and  a.status = #{status}
+            </if>
+            <if test="dateDay!=null">
+                and date_format(a.created_time, '%Y-%m-%d') = date_format(#{dateDay}, '%Y-%m-%d')
+            </if>
+            <if test="dateMonth!=null">
+                and date_format(a.created_time, '%Y-%m') = date_format(#{dateMonth}, '%Y-%m')
+            </if>
         </where>
     </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1