From 0e4e3172a8379381edf2f8047243a3a75214e09d Mon Sep 17 00:00:00 2001
From: wzy <wzy19931122ai@163.com>
Date: Sat, 27 Aug 2022 01:10:58 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java |    3 +
 src/main/resources/mapper/dapp/DappFundFlowDao.xml                        |    7 +++
 src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java |    4 +-
 src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java             |    2 +
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java |    4 +-
 src/main/java/cc/mrbird/febs/rabbit/QueueConstants.java                   |    1 
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java |    3 +
 src/main/java/cc/mrbird/febs/dapp/entity/DappFundFlowEntity.java          |    2 
 src/main/java/cc/mrbird/febs/rabbit/producer/ChainProducer.java           |    9 ++++
 src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java              |   18 +++++++++
 src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java            |    6 +++
 src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java          |    2 
 src/main/resources/mapper/dapp/DappAchieveMemberTreeDao.xml               |    2 
 src/main/java/cc/mrbird/febs/rabbit/QueueEnum.java                        |    3 +
 src/main/java/cc/mrbird/febs/dapp/dto/RecordInPageDto.java                |    2 
 15 files changed, 56 insertions(+), 12 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java b/src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java
index 29fc571..cea576a 100644
--- a/src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java
+++ b/src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java
@@ -84,8 +84,8 @@
             @ApiResponse(code = 200, message = "success", response = TeamListVo.class)
     })
     @PostMapping(value = "/team")
-    public FebsResponse team(@RequestBody TeamListDto teamListDto) {
-        return new FebsResponse().success().data(dappMemberService.findTeamList(teamListDto));
+    public FebsResponse team() {
+        return new FebsResponse().success().data(dappMemberService.findTeamList());
     }
 
     @PostMapping(value = "/logout")
diff --git a/src/main/java/cc/mrbird/febs/dapp/dto/RecordInPageDto.java b/src/main/java/cc/mrbird/febs/dapp/dto/RecordInPageDto.java
index fb614b1..74f2dcd 100644
--- a/src/main/java/cc/mrbird/febs/dapp/dto/RecordInPageDto.java
+++ b/src/main/java/cc/mrbird/febs/dapp/dto/RecordInPageDto.java
@@ -18,6 +18,6 @@
     @ApiModelProperty(value = "每页数量")
     private Integer pageSize = 10;
 
-    @ApiModelProperty(value = "类型", example = "1-认购 2-提现 3-矩阵收益 4-直推收益")
+    @ApiModelProperty(value = "类型", example = "1-买入 2-矩阵收益 3-直推收益 4-保险池 5-提现")
     private Integer type;
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/entity/DappFundFlowEntity.java b/src/main/java/cc/mrbird/febs/dapp/entity/DappFundFlowEntity.java
index f98420a..0251663 100644
--- a/src/main/java/cc/mrbird/febs/dapp/entity/DappFundFlowEntity.java
+++ b/src/main/java/cc/mrbird/febs/dapp/entity/DappFundFlowEntity.java
@@ -47,7 +47,7 @@
     private BigDecimal amount;
 
     /**
-     * 类型 1-买入 2-矩阵收益 3-直推收益 4-保险池
+     * 类型 1-买入 2-矩阵收益 3-直推收益 4-保险池 5-提现
      */
     private Integer type;
 
diff --git a/src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java b/src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java
index 0182806..d92f73f 100644
--- a/src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java
+++ b/src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java
@@ -6,6 +6,7 @@
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
+import org.web3j.abi.datatypes.Int;
 
 import java.math.BigDecimal;
 
@@ -77,4 +78,9 @@
      * 1-是 2-否
      */
     private Integer makerType;
+
+    /**
+     * 出局次数
+     */
+    private Integer outCnt;
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java b/src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java
index 5ad72cf..512f9c2 100644
--- a/src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java
+++ b/src/main/java/cc/mrbird/febs/dapp/mapper/DappFundFlowDao.java
@@ -22,4 +22,6 @@
     List<DappFundFlowEntity> selectFundFlowListByAddress(@Param("address") String address, @Param("status") Integer status);
 
     Map<String, BigDecimal> selectAmountTotalByType(@Param("memberId") Long memberId);
+
+    BigDecimal selectProfitAmountByMemberId(@Param("memberId") Long memberId);
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java b/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
index c33f9e8..5195a68 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
@@ -42,5 +42,5 @@
 
     DappMemberEntity insertMember(String address, String refererId, String chainType, String accountType);
 
-    TeamListVo findTeamList(TeamListDto teamListDto);
+    TeamListVo findTeamList();
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
index 2511380..d10d5ee 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -331,7 +331,7 @@
     }
 
     @Override
-    public TeamListVo findTeamList(TeamListDto teamListDto) {
+    public TeamListVo findTeamList() {
         DappMemberEntity member = LoginUserUtil.getAppUser();
 
         DappAchieveMemberTreeEntity topNode = dappAchieveMemberTreeDao.selectNodeByDeep(member.getId(), 1);
@@ -353,6 +353,7 @@
         for (DappAchieveMemberTreeEntity childNode : childNodes) {
             list.add(buildTeamMatrix(childNode));
         }
+        teamListVo.setChildren(list);
         return teamListVo;
     }
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
index 19e4a35..b3c5f88 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
@@ -753,6 +753,9 @@
         DappMemberEntity member = dappMemberDao.selectById(memberId);
         DappMemberEntity parent = dappMemberDao.selectMemberInfoByInviteId(member.getRefererId());
 
+        member.setOutCnt(member.getOutCnt() + 1);
+        dappMemberDao.updateById(member);
+
         if (parent != null) {
             BigDecimal directProfit = new BigDecimal("100").multiply(new BigDecimal("0.15"));
             dappWalletService.updateWalletCoinWithLock(directProfit, parent.getId());
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
index 0c487d5..89f2928 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -69,8 +69,8 @@
         walletInfo.setInviteId(member.getInviteId());
         walletInfo.setBalance(walletCoin.getAvailableAmount());
         walletInfo.setHasBuy(memberInfo.getActiveStatus());
-        walletInfo.setOutCnt(1);
-        walletInfo.setProfit(BigDecimal.TEN);
+        walletInfo.setOutCnt(memberInfo.getOutCnt());
+        walletInfo.setProfit(dappFundFlowDao.selectProfitAmountByMemberId(member.getId()));
         return walletInfo;
     }
 
diff --git a/src/main/java/cc/mrbird/febs/rabbit/QueueConstants.java b/src/main/java/cc/mrbird/febs/rabbit/QueueConstants.java
index 087e911..fbddd0c 100644
--- a/src/main/java/cc/mrbird/febs/rabbit/QueueConstants.java
+++ b/src/main/java/cc/mrbird/febs/rabbit/QueueConstants.java
@@ -5,7 +5,6 @@
  * @date 2022-05-31
  **/
 public class QueueConstants {
-
     public static final String ONLINE_TRANSFER = "queue_sdm_online_transfer";
     public static final String DISTRIB_PROFIT = "queue_sdm_distrib_profit";
     public static final String USER_BUY_REWARD = "queue_sdm_user_buy_reward";
diff --git a/src/main/java/cc/mrbird/febs/rabbit/QueueEnum.java b/src/main/java/cc/mrbird/febs/rabbit/QueueEnum.java
index c4a20cc..f155ab8 100644
--- a/src/main/java/cc/mrbird/febs/rabbit/QueueEnum.java
+++ b/src/main/java/cc/mrbird/febs/rabbit/QueueEnum.java
@@ -10,7 +10,8 @@
     DISTRIB_PROFIT("exchange_sdm_distrib_profit", "route_key_sdm_distrib_profit", "queue_sdm_distrib_profit"),
     USER_BUY_REWARD("exchange_sdm_user_buy_reward", "route_key_sdm_user_buy_reward", "queue_sdm_user_buy_reward"),
     NFT_BOX("exchange_sdm_nft_box", "route_key_sdm_nft_box", "queue_sdm_nft_box"),
-    ACHIEVE_TREE("exchange_sdm_achieve_tree", "route_key_sdm_achieve_tree", "queue_sdm_achieve_tree");
+    ACHIEVE_TREE("exchange_sdm_achieve_tree", "route_key_sdm_achieve_tree", "queue_sdm_achieve_tree"),
+    WITHDRAW_FEE("exchange_withdraw_fee", "route_key_withdraw_fee", "queue_withdraw_fee");
 
     private String exchange;
 
diff --git a/src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java b/src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java
index 95cd88d..f3a3461 100644
--- a/src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java
+++ b/src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java
@@ -111,4 +111,22 @@
         return BindingBuilder.bind(achieveTreeQueue()).to(achieveTreeExchange()).with(QueueEnum.ACHIEVE_TREE.getRoute());
     }
     // === 业绩树 end ===
+
+
+    // === 提现手续费 start ===
+    @Bean
+    public DirectExchange withdrawFeeExchange() {
+        return new DirectExchange(QueueEnum.WITHDRAW_FEE.getExchange());
+    }
+
+    @Bean
+    public Queue withdrawFeeQueue() {
+        return new Queue(QueueEnum.WITHDRAW_FEE.getQueue());
+    }
+
+    @Bean
+    public Binding withdrawFeeBind() {
+        return BindingBuilder.bind(withdrawFeeQueue()).to(withdrawFeeExchange()).with(QueueEnum.WITHDRAW_FEE.getRoute());
+    }
+    // === 提现手续费 end ===
 }
diff --git a/src/main/java/cc/mrbird/febs/rabbit/producer/ChainProducer.java b/src/main/java/cc/mrbird/febs/rabbit/producer/ChainProducer.java
index 748b28d..5ebb1c5 100644
--- a/src/main/java/cc/mrbird/febs/rabbit/producer/ChainProducer.java
+++ b/src/main/java/cc/mrbird/febs/rabbit/producer/ChainProducer.java
@@ -63,4 +63,13 @@
         CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString());
         rabbitTemplate.convertAndSend(QueueEnum.ACHIEVE_TREE.getExchange(), QueueEnum.ACHIEVE_TREE.getRoute(), id, correlationData);
     }
+
+    /**
+     * 消费者在tfc应用
+     *
+     * @param data
+     */
+    public void sendTfcFee(String data) {
+        log.info("发送提现手续费消息:{}", data);
+    }
 }
diff --git a/src/main/resources/mapper/dapp/DappAchieveMemberTreeDao.xml b/src/main/resources/mapper/dapp/DappAchieveMemberTreeDao.xml
index 2f3a29a..eed99ef 100644
--- a/src/main/resources/mapper/dapp/DappAchieveMemberTreeDao.xml
+++ b/src/main/resources/mapper/dapp/DappAchieveMemberTreeDao.xml
@@ -21,7 +21,7 @@
     </select>
 
     <select id="selectMatrixChildNode" resultType="cc.mrbird.febs.dapp.entity.DappAchieveMemberTreeEntity">
-        select a.*, b.invite_id, b.address from dapp_achieve_member_tree a, , dapp_member b
+        select a.*, b.invite_id, b.address from dapp_achieve_member_tree a, dapp_member b
         where a.top_node=#{topNode} and a.parent_node=#{parentNode} and a.tree_node=b.id
     </select>
 
diff --git a/src/main/resources/mapper/dapp/DappFundFlowDao.xml b/src/main/resources/mapper/dapp/DappFundFlowDao.xml
index 39fe65b..73b9373 100644
--- a/src/main/resources/mapper/dapp/DappFundFlowDao.xml
+++ b/src/main/resources/mapper/dapp/DappFundFlowDao.xml
@@ -22,7 +22,7 @@
                 and a.member_id=#{record.memberId}
             </if>
         </where>
-        order by a.create_time desc
+        order by a.create_time desc, a.id desc
     </select>
 
     <select id="selectListForMemberAndDay" resultType="cc.mrbird.febs.dapp.entity.DappFundFlowEntity">
@@ -63,4 +63,9 @@
                  group by type
             ) a
     </select>
+
+    <select id="selectProfitAmountByMemberId" resultType="java.math.BigDecimal">
+        select ifnull(sum(amount), 0) from dapp_fund_flow
+        where member_id=#{memberId} and type in (2,3)
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1