From ad3e1aee8d80d7534ad777a16255fed922fc5dde Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 05 Jun 2023 14:39:39 +0800
Subject: [PATCH] twoCoin项目修改

---
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java |  131 +++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 124 insertions(+), 7 deletions(-)

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 bb23b90..1227838 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
@@ -12,6 +12,8 @@
 import cc.mrbird.febs.dapp.dto.*;
 import cc.mrbird.febs.dapp.entity.*;
 import cc.mrbird.febs.dapp.enumerate.DataDictionaryEnum;
+import cc.mrbird.febs.dapp.enumerate.FundFlowEnum;
+import cc.mrbird.febs.dapp.enumerate.MemberLevelEnum;
 import cc.mrbird.febs.dapp.enumerate.PoolEnum;
 import cc.mrbird.febs.dapp.mapper.*;
 import cc.mrbird.febs.dapp.service.DappMemberService;
@@ -195,9 +197,6 @@
         }
 
         return 3;
-    }
-
-    public static void main(String[] args) {
     }
 
     @Override
@@ -516,6 +515,14 @@
     public FebsResponse getMemberInfo() {
         DappMemberEntity member = LoginUserUtil.getAppUser();
         DappMemberInfoVo dappMemberInfoVo = dappMemberDao.selectByMemberId(member.getId());
+        if(StrUtil.isNotEmpty(dappMemberInfoVo.getAccountType())){
+            String levelDescription = MemberLevelEnum.MEMBER.getLevelDescription(dappMemberInfoVo.getAccountType());
+            dappMemberInfoVo.setAccountType(levelDescription);
+        }
+
+        BigDecimal amountPerkTotal = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(member.getId(),
+                FundFlowEnum.MEMBER_AMOUNT_PERK_TOTAL.getCode(), 2);
+        dappMemberInfoVo.setAmountPerkTotal(amountPerkTotal);
 
         DataDictionaryCustom ausdPercentDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                 PoolEnum.TRANSFER_A_AUSD_PERCENT.getType(),
@@ -553,8 +560,16 @@
                 PoolEnum.COIN_A_PRICE.getType(),
                 PoolEnum.COIN_A_PRICE.getCode()
         );
-        dappMemberInfoVo.setCoinAPrice(ObjectUtil.isEmpty(coinAPriceDic) ? new BigDecimal("1") : new BigDecimal(coinAPriceDic.getValue()));
+        dappMemberInfoVo.setCoinAPrice((ObjectUtil.isEmpty(coinAPriceDic) ? new BigDecimal("1") : new BigDecimal(coinAPriceDic.getValue()))
+                .setScale(12,BigDecimal.ROUND_DOWN));
         return new FebsResponse().success().data(dappMemberInfoVo);
+    }
+
+    public static void main(String[] args) {
+
+        BigDecimal bigDecimal = new BigDecimal(1).setScale(10, BigDecimal.ROUND_DOWN);
+        System.out.println(bigDecimal);
+
     }
 
     @Override
@@ -576,7 +591,7 @@
         }else if(4 == type){
             redisKey = AppContants.K_LINE_MONTH;
         }else{
-            redisKey = AppContants.K_LINE_HOUR;
+            redisKey = AppContants.K_LINE_NOW;
         }
         Object o = redisUtils.get(redisKey);
         if(ObjectUtil.isNotEmpty(o)){
@@ -602,7 +617,7 @@
         myInviteInfoVo.setMemberAchieve(dappUsdtPerkEntity.getAchieveAmount());
         String refererId = dappMemberEntity.getRefererId();
         DappMemberEntity parentMember = dappMemberDao.selectMemberInfoByInviteId(refererId);
-        myInviteInfoVo.setReferenceAddress(parentMember.getAddress());
+        myInviteInfoVo.setReferenceAddress(ObjectUtil.isEmpty(parentMember) ? "-" : parentMember.getAddress());
         HashMap<String, BigDecimal> maxMinAchieve = getMaxMinAchieve(memberId);
         myInviteInfoVo.setMaxAchieve(maxMinAchieve.get(AppContants.MAXACHIEVE));
         myInviteInfoVo.setMinAchieve(maxMinAchieve.get(AppContants.MINACHIEVE));
@@ -620,7 +635,7 @@
                     dappUsdtPerkEntity.setMemberId(child.getId());
                     dappUsdtPerkEntityMapper.insert(dappUsdtPerkEntity);
                 }
-                myInviteChildInfoVo.setMemberAchieve(childUsdtPerkEntity.getAchieveAmount());
+                myInviteChildInfoVo.setMemberAchieve(ObjectUtil.isEmpty(childUsdtPerkEntity.getAchieveAmount()) ? BigDecimal.ZERO : childUsdtPerkEntity.getAchieveAmount());
                 HashMap<String, BigDecimal> childMaxMinAchieve = getMaxMinAchieve(child.getId());
                 myInviteChildInfoVo.setMaxAchieve(childMaxMinAchieve.get(AppContants.MAXACHIEVE));
                 myInviteChildInfoVo.setMinAchieve(childMaxMinAchieve.get(AppContants.MINACHIEVE));
@@ -632,6 +647,108 @@
         return myInviteInfoVo;
     }
 
+    @Override
+    public FebsResponse getFundFlowInfo() {
+        DappMemberEntity member = LoginUserUtil.getAppUser();
+        Long memberId = member.getId();
+        FundFlowInfoVo fundFlowInfoVo = new FundFlowInfoVo();
+        BigDecimal myDonateCnt = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(member.getId(),
+                FundFlowEnum.BUY_A_COIN.getCode(), 2);
+        fundFlowInfoVo.setMyDonateCnt(myDonateCnt.abs());
+        fundFlowInfoVo.setMyDonateCntNum(FundFlowEnum.BUY_A_COIN.getCode());
+
+        BigDecimal amountPerkTotal = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(member.getId(),
+                FundFlowEnum.MEMBER_AMOUNT_PERK_TOTAL.getCode(), 2);
+        fundFlowInfoVo.setAmountPerkTotal(amountPerkTotal.abs());
+        fundFlowInfoVo.setAmountPerkTotalNum(FundFlowEnum.MEMBER_AMOUNT_PERK_TOTAL.getCode());
+
+        DappUsdtPerkEntity dappUsdtPerkEntity = dappUsdtPerkEntityMapper.selectByMemberId(memberId);
+        fundFlowInfoVo.setAmountPerkAva(ObjectUtil.isEmpty(dappUsdtPerkEntity) ? BigDecimal.ZERO : dappUsdtPerkEntity.getAmount());
+
+        BigDecimal directAmount = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(memberId,
+                FundFlowEnum.DIRECT_A_PERCENT.getCode(), 2);
+        fundFlowInfoVo.setDirectAmount(directAmount);
+        fundFlowInfoVo.setDirectAmountNum(FundFlowEnum.DIRECT_A_PERCENT.getCode());
+
+        BigDecimal staticAmount = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(memberId,
+                FundFlowEnum.POOL_MEMBER_A_CNT.getCode(), 2);
+        fundFlowInfoVo.setStaticAmount(staticAmount);
+        fundFlowInfoVo.setStaticAmountNum(FundFlowEnum.POOL_MEMBER_A_CNT.getCode());
+
+        BigDecimal nodeAmount = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(memberId,
+                FundFlowEnum.NODE_A_PERCENT_TO_MEMBER.getCode(), 2);
+        fundFlowInfoVo.setNodeAmount(nodeAmount);
+        fundFlowInfoVo.setNodeAmountNum(FundFlowEnum.NODE_A_PERCENT_TO_MEMBER.getCode());
+
+        BigDecimal levelEqualAmount = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(memberId,
+                FundFlowEnum.DAO_5_NODE_EQUALS_PERK.getCode(), 2);
+        fundFlowInfoVo.setLevelEqualAmount(levelEqualAmount);
+        fundFlowInfoVo.setLevelEqualAmountNum(FundFlowEnum.DAO_5_NODE_EQUALS_PERK.getCode());
+
+        BigDecimal levelAmount = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(memberId,
+                FundFlowEnum.LEVEL_A_PERCENT_CNT_MEMBER.getCode(), 2);
+        fundFlowInfoVo.setLevelAmount(levelAmount);
+        fundFlowInfoVo.setLevelAmountNum(FundFlowEnum.LEVEL_A_PERCENT_CNT_MEMBER.getCode());
+
+        BigDecimal daoThreeAmount = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(memberId,
+                FundFlowEnum.DAO_3_NODE_PERK.getCode(), 2);
+        fundFlowInfoVo.setDaoThreeAmount(daoThreeAmount);
+        fundFlowInfoVo.setDaoThreeAmountNum(FundFlowEnum.DAO_3_NODE_PERK.getCode());
+
+        BigDecimal daoFourAmount = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(memberId,
+                FundFlowEnum.DAO_4_NODE_PERK.getCode(), 2);
+        fundFlowInfoVo.setDaoFourAmount(daoFourAmount);
+        fundFlowInfoVo.setDaoFourAmountNum(FundFlowEnum.DAO_4_NODE_PERK.getCode());
+
+        BigDecimal daoFiveAmount = dappFundFlowDao.selectSumAmountByMemberIdAndTypeAndStatus(memberId,
+                FundFlowEnum.DAO_5_NODE_PERK.getCode(), 2);
+        fundFlowInfoVo.setDaoFiveAmount(daoFiveAmount);
+        fundFlowInfoVo.setDaoFiveAmountNum(FundFlowEnum.DAO_5_NODE_PERK.getCode());
+
+        return new FebsResponse().success().data(fundFlowInfoVo);
+    }
+
+    @Override
+    public FebsResponse insideWithYes(Long id) {
+        DappMemberEntity dappMemberEntity = dappMemberDao.selectById(id);
+        if(ObjectUtil.isEmpty(dappMemberEntity)) {
+            return new FebsResponse().fail().message("会员信息不存在");
+        }
+        dappMemberEntity.setNodeType(1);
+        dappMemberEntity.setAccountType(MemberLevelEnum.NODE_5.getType());
+        dappMemberDao.updateById(dappMemberEntity);
+        return new FebsResponse().success();
+    }
+
+    @Override
+    public FebsResponse insideWithNo(Long id) {
+        DappMemberEntity dappMemberEntity = dappMemberDao.selectById(id);
+        if(ObjectUtil.isEmpty(dappMemberEntity)) {
+            return new FebsResponse().fail().message("会员信息不存在");
+        }
+        dappMemberEntity.setNodeType(2);
+        dappMemberEntity.setAccountType(MemberLevelEnum.MEMBER.getType());
+        dappMemberDao.updateById(dappMemberEntity);
+        return new FebsResponse().success();
+    }
+
+    @Override
+    public List<AdminAgentLevelOptionTreeVo> getAgentLevelOption() {
+        return dataDictionaryCustomMapper.getAgentLevelOption();
+    }
+
+    @Override
+    public FebsResponse agentLevelSetUpdate(AgentLevelSetUpdateDto agentLevelSetUpdateDto) {
+        Long memberId = agentLevelSetUpdateDto.getId();
+        DappMemberEntity dappMemberEntity = dappMemberDao.selectById(memberId);
+        if(ObjectUtil.isEmpty(dappMemberEntity)){
+            return new FebsResponse().fail().message("系统繁忙,请刷新页面重试");
+        }
+        dappMemberEntity.setAccountType(agentLevelSetUpdateDto.getLevelCode());
+        dappMemberDao.updateById(dappMemberEntity);
+        return new FebsResponse().success();
+    }
+
     /**
      * 获取用户的大小区业绩
      * @param memberId

--
Gitblit v1.9.1