From b4dff0461d20fe6890eae72b454068c08d38ea02 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 17 Jun 2022 16:58:42 +0800
Subject: [PATCH] 20220528

---
 src/main/java/cc/mrbird/febs/mall/entity/MallMemberWithdraw.java                  |    2 
 src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberWithdrawServiceImpl.java |   16 ++++++--
 src/main/resources/templates/febs/views/modules/mallMember/chargeFlowList.html    |    2 +
 src/main/java/cc/mrbird/febs/mall/vo/AdminMoneyChargeListVo.java                  |   10 +---
 src/main/resources/mapper/modules/MallMoneyFlowMapper.xml                         |   10 +++-
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java    |   33 ++++++++++++----
 6 files changed, 50 insertions(+), 23 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/entity/MallMemberWithdraw.java b/src/main/java/cc/mrbird/febs/mall/entity/MallMemberWithdraw.java
index a6280d6..70a2624 100644
--- a/src/main/java/cc/mrbird/febs/mall/entity/MallMemberWithdraw.java
+++ b/src/main/java/cc/mrbird/febs/mall/entity/MallMemberWithdraw.java
@@ -23,7 +23,7 @@
      */
     private Integer status;
 
-    private String account;
+    private BigDecimal amountFee;
 
     private String name;
 
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
index 2db036f..9bb293c 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -58,6 +58,7 @@
     private final IApiMallMemberWalletService iApiMallMemberWalletService;
 
     private final AppVersionMapper appVersionMapper;
+    private final MallMemberWithdrawMapper mallMemberWithdrawMapper;
 
     private final MallNewsInfoMapper mallNewsInfoMapper;
     private final MallShopApplyMapper mallShopApplyMapper;
@@ -143,28 +144,44 @@
     @Override
     @Transactional
     public FebsResponse chargeAgree(Long id) {
-        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectById(id);
-        if(ObjectUtil.isEmpty(mallMoneyFlow)){
+
+        MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(id);
+        if(ObjectUtil.isEmpty(mallMemberWithdraw)){
             return new FebsResponse().fail().message("系统繁忙,请刷新后重试");
         }
-        if(1 != mallMoneyFlow.getStatus()){
+        if(1 != mallMemberWithdraw.getStatus()){
             return new FebsResponse().fail().message("当前状态不是提现中");
         }
+        mallMemberWithdraw.setStatus(2);
+        mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
+
+        QueryWrapper<MallMoneyFlow> objectQueryWrapper = new QueryWrapper<>();
+        objectQueryWrapper.eq("order_no",mallMemberWithdraw.getWithdrawNo());
+        objectQueryWrapper.eq("type",MoneyFlowTypeEnum.WITHDRAWAL.getValue());
+        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOne(objectQueryWrapper);
         mallMoneyFlow.setStatus(2);
         mallMoneyFlowMapper.updateById(mallMoneyFlow);
+
         return new FebsResponse().success();
     }
 
     @Override
     @Transactional
     public FebsResponse chargeDisagree(Long id) {
-        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectById(id);
-        if(ObjectUtil.isEmpty(mallMoneyFlow)){
+        MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(id);
+        if(ObjectUtil.isEmpty(mallMemberWithdraw)){
             return new FebsResponse().fail().message("系统繁忙,请刷新后重试");
         }
-        if(1 != mallMoneyFlow.getStatus()){
+        if(1 != mallMemberWithdraw.getStatus()){
             return new FebsResponse().fail().message("当前状态不是提现中");
         }
+        mallMemberWithdraw.setStatus(3);
+        mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
+
+        QueryWrapper<MallMoneyFlow> objectQueryWrapper = new QueryWrapper<>();
+        objectQueryWrapper.eq("order_no",mallMemberWithdraw.getWithdrawNo());
+        objectQueryWrapper.eq("type",MoneyFlowTypeEnum.WITHDRAWAL.getValue());
+        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOne(objectQueryWrapper);
         mallMoneyFlow.setStatus(3);
         mallMoneyFlowMapper.updateById(mallMoneyFlow);
 
@@ -176,8 +193,8 @@
     @Override
     public AdminMallMemberPaymentVo getMallMemberPaymentInfoByFlowId(long id) {
         AdminMallMemberPaymentVo adminMallMemberPaymentVo = new AdminMallMemberPaymentVo();
-        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectById(id);
-        AdminMallMemberPaymentVo adminMallMemberPaymentVoa = mallMemberPaymentMapper.getMallMemberPaymentInfoByMemberId(mallMoneyFlow.getMemberId());
+        MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(id);
+        AdminMallMemberPaymentVo adminMallMemberPaymentVoa = mallMemberPaymentMapper.getMallMemberPaymentInfoByMemberId(mallMemberWithdraw.getMemberId());
         if(ObjectUtil.isNotEmpty(adminMallMemberPaymentVoa)){
             adminMallMemberPaymentVo = adminMallMemberPaymentVoa;
         }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberWithdrawServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberWithdrawServiceImpl.java
index 23c5dfc..8ed0b3d 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberWithdrawServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberWithdrawServiceImpl.java
@@ -1,22 +1,22 @@
 package cc.mrbird.febs.mall.service.impl;
 
+import cc.mrbird.febs.common.enumerates.DataDictionaryEnum;
 import cc.mrbird.febs.common.enumerates.FlowTypeEnum;
 import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
 import cc.mrbird.febs.common.exception.FebsException;
 import cc.mrbird.febs.common.utils.LoginUserUtil;
 import cc.mrbird.febs.common.utils.MallUtils;
 import cc.mrbird.febs.mall.dto.WithdrawalDto;
-import cc.mrbird.febs.mall.entity.MallMember;
-import cc.mrbird.febs.mall.entity.MallMemberPayment;
-import cc.mrbird.febs.mall.entity.MallMemberWallet;
-import cc.mrbird.febs.mall.entity.MallMemberWithdraw;
+import cc.mrbird.febs.mall.entity.*;
 import cc.mrbird.febs.mall.mapper.*;
 import cc.mrbird.febs.mall.service.IApiMallMemberService;
 import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
 import cc.mrbird.febs.mall.service.IMallMemberWithdrawService;
 import cc.mrbird.febs.mall.service.MallMemberService;
+import cc.mrbird.febs.mall.vo.CashOutSettingVo;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.crypto.SecureUtil;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
@@ -38,6 +38,7 @@
     private final MallMemberWalletMapper mallMemberWalletMapper;
     private final IApiMallMemberWalletService walletService;
     private final MallMemberPaymentMapper mallMemberPaymentMapper;
+    private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
 
     @Override
     public void withdrawal(WithdrawalDto withdrawalDto) {
@@ -71,6 +72,12 @@
             }
         }
 
+        CashOutSettingVo cashOutSettingVo = new CashOutSettingVo();
+        DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.CASHOUT_SETTING.getType(), DataDictionaryEnum.CASHOUT_SETTING.getCode());
+        if (dic != null) {
+            cashOutSettingVo = JSONObject.parseObject(dic.getValue(), CashOutSettingVo.class);
+        }
+
         walletService.reduce(withdrawalDto.getAmount(), memberId, "commission");
         String orderNo = MallUtils.getOrderNum("W");
 
@@ -79,6 +86,7 @@
         withdraw.setMemberId(memberId);
         withdraw.setAmount(withdrawalDto.getAmount());
         withdraw.setStatus(1);
+        withdraw.setAmountFee(cashOutSettingVo.getServiceFee().multiply(withdrawalDto.getAmount()));
         this.baseMapper.insert(withdraw);
 
         mallMemberService.addMoneyFlow(memberId, withdrawalDto.getAmount().negate(), MoneyFlowTypeEnum.WITHDRAWAL.getValue(), orderNo, null, null, null, 1, FlowTypeEnum.COMMISSION.getValue());
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/AdminMoneyChargeListVo.java b/src/main/java/cc/mrbird/febs/mall/vo/AdminMoneyChargeListVo.java
index 3b5663a..05f261f 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/AdminMoneyChargeListVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/AdminMoneyChargeListVo.java
@@ -18,19 +18,15 @@
 
     private BigDecimal amount;
 
-    private Integer type;
+    private BigDecimal amountFee;
 
-    private String orderNo;
+    private String withdrawNo;
 
-    private String description;
-
-    private String remark;
+    private Integer status;
 
     private String name;
 
     private String phone;
 
     private String bindPhone;
-
-    private Integer status;
 }
diff --git a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
index 2efb9bc..203a726 100644
--- a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
+++ b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
@@ -68,14 +68,18 @@
 
     <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.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},'%')
diff --git a/src/main/resources/templates/febs/views/modules/mallMember/chargeFlowList.html b/src/main/resources/templates/febs/views/modules/mallMember/chargeFlowList.html
index 4f60714..5d6e645 100644
--- a/src/main/resources/templates/febs/views/modules/mallMember/chargeFlowList.html
+++ b/src/main/resources/templates/febs/views/modules/mallMember/chargeFlowList.html
@@ -119,10 +119,12 @@
                 id: 'moneyFlowChargeTable',
                 url: ctx + 'admin/mallMember/getMoneyChargeList',
                 cols: [[
+                    {field: 'withdrawNo', title: '编号', minWidth: 100,align:'left'},
                     {field: 'name', title: '名称', minWidth: 100,align:'left'},
                     {field: 'phone', title: '账号', minWidth: 150,align:'left'},
                     {field: 'bindPhone', title: '手机号', minWidth: 150,align:'left'},
                     {field: 'amount', title: '金额', minWidth: 150,align:'left'},
+                    {field: 'amountFee', title: '手续费', minWidth: 150,align:'left'},
                     {field: 'status', title: '状态',
                         templet: function (d) {
                             if (d.status === 1) {

--
Gitblit v1.9.1