From df51a79a9e09e0273cc50d966ad136efe8b99100 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 01 Mar 2022 10:46:32 +0800
Subject: [PATCH] Merge branch 'bea' of http://120.27.238.55:7000/r/exchange into bea

---
 src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java |  285 +++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 198 insertions(+), 87 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
index 795bc5c..301e739 100644
--- a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
@@ -5,6 +5,8 @@
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.crypto.SecureUtil;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.xcong.excoin.common.LoginUserUtils;
 import com.xcong.excoin.common.contants.AppContants;
@@ -14,21 +16,16 @@
 import com.xcong.excoin.common.system.dto.RegisterDto;
 import com.xcong.excoin.common.system.service.CommonService;
 import com.xcong.excoin.modules.coin.dao.MemberAccountMoneyChangeDao;
+import com.xcong.excoin.modules.coin.dao.ZhiYaDao;
+import com.xcong.excoin.modules.coin.dao.ZhiYaRecordDao;
 import com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange;
+import com.xcong.excoin.modules.coin.entity.ZhiYaEntity;
+import com.xcong.excoin.modules.coin.entity.ZhiYaRecordEntity;
+import com.xcong.excoin.modules.coin.entity.ZhiYaTeam;
+import com.xcong.excoin.modules.coin.parameter.vo.ZhiyaInfoVo;
 import com.xcong.excoin.modules.member.dao.*;
 import com.xcong.excoin.modules.member.entity.*;
-import com.xcong.excoin.modules.member.parameter.dto.MemberAddCoinAddressDto;
-import com.xcong.excoin.modules.member.parameter.dto.MemberAuthenticationDto;
-import com.xcong.excoin.modules.member.parameter.dto.MemberBindEmailDto;
-import com.xcong.excoin.modules.member.parameter.dto.MemberBindPhoneDto;
-import com.xcong.excoin.modules.member.parameter.dto.MemberDelCoinAddressDto;
-import com.xcong.excoin.modules.member.parameter.dto.MemberDelPaymethodDto;
-import com.xcong.excoin.modules.member.parameter.dto.MemberForgetPwdDto;
-import com.xcong.excoin.modules.member.parameter.dto.MemberPaymethodDto;
-import com.xcong.excoin.modules.member.parameter.dto.MemberSubmitCoinApplyDto;
-import com.xcong.excoin.modules.member.parameter.dto.MemberUpdatePwdDto;
-import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradePwdDto;
-import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradersPwdTimeDto;
+import com.xcong.excoin.modules.member.parameter.dto.*;
 import com.xcong.excoin.modules.member.parameter.vo.*;
 import com.xcong.excoin.modules.member.service.MemberService;
 import com.xcong.excoin.modules.platform.dao.PlatformFeeSettingDao;
@@ -41,9 +38,11 @@
 import com.xcong.excoin.utils.ThreadPoolUtils;
 import lombok.extern.slf4j.Slf4j;
 
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+import org.web3j.abi.datatypes.Int;
 
 import java.math.BigDecimal;
 import java.util.ArrayList;
@@ -66,6 +65,9 @@
     private MemberDao memberDao;
 
     @Resource
+    private ZhiYaRecordDao zhiYaRecordDao;
+
+    @Resource
     private MemberWalletAgentDao memberWalletAgentDao;
 
     @Resource
@@ -76,6 +78,9 @@
 
     @Resource
     private MemberWalletCoinDao memberWalletCoinDao;
+
+    @Resource
+    private ZhiYaDao zhiYaDao;
 
     @Resource
     private MemberLevelRateDao memberLevelRateDao;
@@ -106,6 +111,8 @@
 
     @Resource
     AppVersionDao appVersionDao;
+    @Resource
+    private MemberSettingDao memberSettingDao;
 
     @Resource
     private MemberWalletContractSimulateDao memberWalletContractSimulateDao;
@@ -142,20 +149,24 @@
 //        }
         if (!AppContants.SYSTEM_REFERER.equals(registerDto.getRefererId())) {
             MemberEntity isExist = memberDao.selectMemberInfoByInviteId(registerDto.getRefererId());
-            if (isExist == null) {
-                return Result.fail("推荐人不存在");
+            if (isExist != null) {
+                member.setRefererId(registerDto.getRefererId());
             }
         }
-
-        member.setRefererId(registerDto.getRefererId());
         member.setAccountStatus(MemberEntity.ACCOUNT_STATUS_ENABLE);
         member.setAccountType(MemberEntity.ACCOUNT_TYPE_NORMAL);
         member.setAgentLevel(MemberEntity.ACCOUNT_AGENT_LEVEL);
         member.setCertifyStatus(MemberEntity.CERTIFY_STATUS_UN_SUBMIT);
-        member.setIsForce(0);
+        member.setIsForce(1);
         member.setIsProfit(0);
-        member.setSpread(BigDecimal.ZERO);
         memberDao.insert(member);
+
+        MemberSettingEntity memberSettingEntity = new MemberSettingEntity();
+        memberSettingEntity.setSpread(BigDecimal.ONE);
+        memberSettingEntity.setClosingSpread(BigDecimal.valueOf(5));
+        memberSettingEntity.setForceParam(BigDecimal.valueOf(0.0030));
+        memberSettingEntity.setMemberId(member.getId());
+        memberSettingDao.insert(memberSettingEntity);
 
         String inviteId = ShareCodeUtil.toSerialCode(member.getId());
         member.setInviteId(inviteId);
@@ -163,13 +174,16 @@
         boolean flag = false;
         String parentId = member.getRefererId();
         String ids = "";
-        while (!flag) {
+        while (!flag && StringUtils.isNotBlank(parentId)) {
             ids += ("," + parentId);
             MemberEntity parentMember = memberDao.selectMemberInfoByInviteId(parentId);
             if (parentMember == null) {
                 break;
             }
             parentId = parentMember.getRefererId();
+            if(StringUtils.isBlank(parentId)){
+                break;
+            }
             if (parentMember.getRefererId().equals(parentMember.getInviteId())) {
                 flag = true;
             }
@@ -208,6 +222,14 @@
             walletCoin.setBorrowedFund(AppContants.INIT_MONEY);
             memberWalletCoinDao.insert(walletCoin);
         }
+
+        //初始化质押
+        ZhiYaEntity zhiYaEntity = new ZhiYaEntity();
+        zhiYaEntity.setMemberId(member.getId());
+        zhiYaEntity.setAvailableBalance(AppContants.INIT_MONEY);
+        zhiYaEntity.setFrozenBalance(AppContants.INIT_MONEY);
+        zhiYaEntity.setTotalBalance(AppContants.INIT_MONEY);
+        zhiYaDao.insert(zhiYaEntity);
 
         // 初始化代理佣金钱包
         MemberWalletAgentEntity walletAgent = new MemberWalletAgentEntity();
@@ -330,12 +352,12 @@
         //获取用户ID
         Long memberId = LoginUserUtils.getAppLoginUser().getId();
         MemberEntity member = memberDao.selectById(memberId);
-		if(MemberEntity.CERTIFY_STATUS_ING.equals(member.getCertifyStatus())) {
-			return Result.fail(MessageSourceUtils.getString("member_service_4000"));
-		}
+        if (MemberEntity.CERTIFY_STATUS_ING.equals(member.getCertifyStatus())) {
+            return Result.fail(MessageSourceUtils.getString("member_service_4000"));
+        }
         if (ObjectUtil.isNotEmpty(member)) {
 
-        	MemberAuthenticationEntity memberAuthenticationEntity = new MemberAuthenticationEntity();
+            MemberAuthenticationEntity memberAuthenticationEntity = new MemberAuthenticationEntity();
 
             if (MemberEntity.CERTIFY_STATUS_Y == member.getCertifyStatus()) {
                 return Result.fail(MessageSourceUtils.getString("member_service_0055"));
@@ -365,13 +387,18 @@
 
             String idCardNo = memberAuthenticationDto.getIdCardNo();
             if (StrUtil.isBlank(idCardNo)) {
-            	return Result.fail(MessageSourceUtils.getString("member_service_0060"));
+                return Result.fail(MessageSourceUtils.getString("member_service_0060"));
             }
             memberAuthenticationEntity.setIdcardNo(idCardNo);
             //同一个身份证号码不能重复实名认证
             int count = memberAuthenticationDao.findMemberbyIdCardNoCount(idCardNo);
             if (count > 0) {
-            	return Result.fail(MessageSourceUtils.getString("member_service_0060"));
+                return Result.fail(MessageSourceUtils.getString("member_service_0060"));
+            }
+            // 同一个人只能认证一次
+            int authenByMemberId = memberAuthenticationDao.findAuthenByMemberId(memberId);
+            if (authenByMemberId > 0) {
+                return Result.fail(MessageSourceUtils.getString("member_service_0055"));
             }
             if (StrUtil.isBlank(memberAuthenticationDto.getIdCardFront())
                     || StrUtil.isBlank(memberAuthenticationDto.getIdCardReverse())
@@ -383,14 +410,14 @@
             memberAuthenticationEntity.setIdcardImageInHand(memberAuthenticationDto.getIdCardImage());
 
             Map<String, Object> columnMap = new HashMap<>();
-        	columnMap.put("member_id", memberId);
-        	List<MemberAuthenticationEntity> selectByMap = memberAuthenticationDao.selectByMap(columnMap);
-        	if(CollUtil.isEmpty(selectByMap)) {
-        		memberAuthenticationDao.insert(memberAuthenticationEntity);
-        	}else {
-        		memberAuthenticationEntity.setId(selectByMap.get(0).getId());
-        		memberAuthenticationDao.updateById(memberAuthenticationEntity);
-        	}
+            columnMap.put("member_id", memberId);
+            List<MemberAuthenticationEntity> selectByMap = memberAuthenticationDao.selectByMap(columnMap);
+            if (CollUtil.isEmpty(selectByMap)) {
+                memberAuthenticationDao.insert(memberAuthenticationEntity);
+            } else {
+                memberAuthenticationEntity.setId(selectByMap.get(0).getId());
+                memberAuthenticationDao.updateById(memberAuthenticationEntity);
+            }
 
             member.setCertifyStatus(MemberEntity.CERTIFY_STATUS_ING);
             member.setIdcardNo(idCardNo);
@@ -454,7 +481,8 @@
     @Transactional
     public Result memberTradersPwd(@Valid MemberForgetPwdDto memberForgetPwdDto) {
         //获取用户ID
-        MemberEntity memberEntity = LoginUserUtils.getAppLoginUser();
+        Long memberId = LoginUserUtils.getAppLoginUser().getId();
+        MemberEntity memberEntity = memberDao.selectById(memberId);
 
         String code = memberForgetPwdDto.getCode();
         String password = memberForgetPwdDto.getPassword();
@@ -487,14 +515,14 @@
 
         Map<String, Object> columnMap = new HashMap<>();
         columnMap.put("member_id", memberId);
-		List<MemberPaymentMethodEntity> selectByMap = memberPaymentMethodDao.selectByMap(columnMap);
-		if(CollUtil.isNotEmpty(selectByMap)) {
-			for(MemberPaymentMethodEntity memberPaymentMethodEntity : selectByMap) {
-				if(memberPaymethodDto.getAccount().equals(memberPaymentMethodEntity.getAccount())) {
-					return Result.fail(MessageSourceUtils.getString("member_service_0097"));
-				}
-			}
-		}
+        List<MemberPaymentMethodEntity> selectByMap = memberPaymentMethodDao.selectByMap(columnMap);
+        if (CollUtil.isNotEmpty(selectByMap)) {
+            for (MemberPaymentMethodEntity memberPaymentMethodEntity : selectByMap) {
+                if (memberPaymethodDto.getAccount().equals(memberPaymentMethodEntity.getAccount())) {
+                    return Result.fail(MessageSourceUtils.getString("member_service_0097"));
+                }
+            }
+        }
         String account = memberPaymethodDto.getAccount();
         String bank = memberPaymethodDto.getBank();
         String name = memberPaymethodDto.getName();
@@ -575,7 +603,7 @@
     @Override
     @Transactional
     public Result memberBindPhone(@Valid MemberBindPhoneDto memberBindPhoneDto) {
-    	//获取用户ID
+        //获取用户ID
         Long memberId = LoginUserUtils.getAppLoginUser().getId();
         String phone = memberBindPhoneDto.getPhone();
         String code = memberBindPhoneDto.getCode();
@@ -583,18 +611,22 @@
         MemberEntity member = memberDao.selectById(memberId);
 
         if (ObjectUtil.isNotEmpty(member)) {
-            if (!commonservice.verifyCode(phone, code)) {
+            if (!commonservice.mutiVerifyCode(member.getEmail(), memberBindPhoneDto.getOtherCode(), phone, code)) {
                 return Result.fail(MessageSourceUtils.getString("member_service_0013"));
             }
+            // 验证邮箱验证码
+//            if (!commonservice.verifyCode(member.getEmail(), memberBindPhoneDto.getOtherCode())) {
+//                return Result.fail("邮箱"+MessageSourceUtils.getString("member_service_0013"));
+//            }
             Map<String, Object> columnMap = new HashMap<>();
             columnMap.put("phone", phone);
-			List<MemberEntity> selectByMap = memberDao.selectByMap(columnMap );
-            if(CollUtil.isEmpty(selectByMap)) {
-            	member.setPhone(phone);
-            	memberDao.updateById(member);
-            	return Result.ok(MessageSourceUtils.getString("member_service_0014"));
-            }else {
-            	return Result.fail(MessageSourceUtils.getString("member_service_1400"));
+            List<MemberEntity> selectByMap = memberDao.selectByMap(columnMap);
+            if (CollUtil.isEmpty(selectByMap)) {
+                member.setPhone(phone);
+                memberDao.updateById(member);
+                return Result.ok(MessageSourceUtils.getString("member_service_0014"));
+            } else {
+                return Result.fail(MessageSourceUtils.getString("member_service_1400"));
             }
         }
 
@@ -605,24 +637,31 @@
     @Transactional
     public Result memberBindEmail(@Valid MemberBindEmailDto memberBindEmailDto) {
 
-    	//获取用户ID
+        //获取用户ID
         Long memberId = LoginUserUtils.getAppLoginUser().getId();
         String email = memberBindEmailDto.getEmail();
         String code = memberBindEmailDto.getCode();
 
         MemberEntity member = memberDao.selectById(memberId);
-        boolean flag = commonservice.verifyCode(email, code);
+        boolean flag = commonservice.mutiVerifyCode(email, code, member.getPhone(), memberBindEmailDto.getOtherCode());
+//        boolean flag2 = commonservice.verifyCode(member.getPhone(), memberBindEmailDto.getOtherCode());
+       if(!flag){
+           return Result.fail(MessageSourceUtils.getString("member_service_0013"));
+       }
+//       if(!flag2){
+//           return Result.fail("手机"+MessageSourceUtils.getString("member_service_0013"));
+//       }
         if (ObjectUtil.isNotEmpty(member)) {
             if (flag) {
-            	Map<String, Object> columnMap = new HashMap<>();
+                Map<String, Object> columnMap = new HashMap<>();
                 columnMap.put("email", email);
-    			List<MemberEntity> selectByMap = memberDao.selectByMap(columnMap );
-                if(CollUtil.isEmpty(selectByMap)) {
-                	member.setEmail(email);
+                List<MemberEntity> selectByMap = memberDao.selectByMap(columnMap);
+                if (CollUtil.isEmpty(selectByMap)) {
+                    member.setEmail(email);
                     memberDao.updateById(member);
                     return Result.ok(MessageSourceUtils.getString("member_service_0018"));
-                }else {
-                	return Result.fail(MessageSourceUtils.getString("member_service_1400"));
+                } else {
+                    return Result.fail(MessageSourceUtils.getString("member_service_1400"));
                 }
             }
         }
@@ -684,7 +723,7 @@
         MemberCoinAddressEntity memberCoinAddressEntity = new MemberCoinAddressEntity();
         memberCoinAddressEntity.setAddress(address);
         memberCoinAddressEntity.setMemberId(memberId);
-        memberCoinAddressEntity.setIsBiyict(isBiyict);
+        memberCoinAddressEntity.setIsBiyict(MemberCoinAddressEntity.IS_BIYICT_NO);
         memberCoinAddressEntity.setSymbolscoinId(symbolscoinId);
         memberCoinAddressEntity.setLabel(remark);
         memberCoinAddressEntity.setSymbol(platformSymbolsCoinEntity.getName());
@@ -758,10 +797,10 @@
         Map<String, Object> columnMap = new HashMap<>();
         columnMap.put("member_id", memberId);
         List<MemberPaymentMethodEntity> selectByMap = memberPaymentMethodDao.selectByMap(columnMap);
-        if(CollUtil.isEmpty(selectByMap)) {
-        	memberPersonCenterInfoVo.setMemberPaymentMethod(0);
-        }else {
-        	memberPersonCenterInfoVo.setMemberPaymentMethod(1);
+        if (CollUtil.isEmpty(selectByMap)) {
+            memberPersonCenterInfoVo.setMemberPaymentMethod(0);
+        } else {
+            memberPersonCenterInfoVo.setMemberPaymentMethod(1);
         }
 
         if (StrUtil.isNotEmpty(member.getPhone())) {
@@ -822,16 +861,16 @@
         List<MemberAvivableCoinInfoVo> arrayList = new ArrayList<>();
 
 
-		List<PlatformFeeSettingEntity> feeSettingByTypeAndSymbolLable = platformFeeSettingDao.getFeeSettingsByTypeAndSymbol(2, symbol);
+        List<PlatformFeeSettingEntity> feeSettingByTypeAndSymbolLable = platformFeeSettingDao.getFeeSettingsByTypeAndSymbol(2, symbol);
         if (CollUtil.isEmpty(feeSettingByTypeAndSymbolLable)) {
             return Result.fail(MessageSourceUtils.getString("member_service_0087"));
         }
-        for(PlatformFeeSettingEntity platformFeeSettingEntity : feeSettingByTypeAndSymbolLable) {
-        	MemberAvivableCoinInfoVo memberAvivableCoinInfoVo = new MemberAvivableCoinInfoVo();
-        	memberAvivableCoinInfoVo.setAvailableBalance(walletCoin.getAvailableBalance());
-        	memberAvivableCoinInfoVo.setFee(platformFeeSettingEntity.getFeePrice());
-        	memberAvivableCoinInfoVo.setLable(platformFeeSettingEntity.getLable());
-        	arrayList.add(memberAvivableCoinInfoVo);
+        for (PlatformFeeSettingEntity platformFeeSettingEntity : feeSettingByTypeAndSymbolLable) {
+            MemberAvivableCoinInfoVo memberAvivableCoinInfoVo = new MemberAvivableCoinInfoVo();
+            memberAvivableCoinInfoVo.setAvailableBalance(walletCoin.getAvailableBalance());
+            memberAvivableCoinInfoVo.setFee(platformFeeSettingEntity.getFeePrice());
+            memberAvivableCoinInfoVo.setLable(platformFeeSettingEntity.getLable());
+            arrayList.add(memberAvivableCoinInfoVo);
         }
 
         return Result.ok(arrayList);
@@ -868,6 +907,14 @@
         //获取用户ID
         Long memberId = LoginUserUtils.getAppLoginUser().getId();
         MemberEntity member = memberDao.selectById(memberId);
+        String golden_limit_transfer = redisUtils.getString("GOLDEN_LIMIT_TRANSFER");
+        // 判断是否限制
+        if(StringUtils.isNotBlank(member.getPhone()) &&StringUtils.isNotBlank(golden_limit_transfer) && golden_limit_transfer.contains(member.getPhone())){
+            return Result.fail("此账号有财务问题,需联系客服");
+        }
+        if(StringUtils.isNotBlank(member.getEmail()) &&StringUtils.isNotBlank(golden_limit_transfer) && golden_limit_transfer.contains(member.getEmail())){
+            return Result.fail("此账号有财务问题,需联系客服");
+        }
         if (member.getCertifyStatus() != MemberEntity.CERTIFY_STATUS_Y) {
             return Result.fail(MessageSourceUtils.getString("member_service_0077"));
         }
@@ -900,6 +947,7 @@
                 Map<String, Object> columnMap = new HashMap<>();
                 columnMap.put("symbol", memberSubmitCoinApplyDto.getSymbol());
                 columnMap.put("address", memberSubmitCoinApplyDto.getAddress());
+                columnMap.put("is_biyict", MemberCoinAddressEntity.IS_BIYICT_YES);
                 List<MemberCoinAddressEntity> selectByMap = memberCoinAddressDao.selectByMap(columnMap);
                 if (CollUtil.isEmpty(selectByMap)) {
                     memberCoinWithdrawEntity.setIsInside(MemberCoinWithdrawEntity.ISINSIDE_NO);
@@ -951,22 +999,85 @@
         return Result.ok("");
     }
 
-	@Override
-	public Result getAppVersionInfo() {
-	Map<String, Object> columnMap = new HashMap<>();
-	List<AppVersionEntity> selectByMap = appVersionDao.selectByMap(columnMap);
-	List<Object> arrayList = new ArrayList<>();
-		if(CollUtil.isNotEmpty(selectByMap)) {
-			for(AppVersionEntity appVersionEntity : selectByMap) {
-					AppVersionVo appVersionVo = new AppVersionVo();
-					appVersionVo.setAddress(appVersionEntity.getAddress());
-					appVersionVo.setType(appVersionEntity.getType());
-					appVersionVo.setVersion(appVersionEntity.getVersion());
-					arrayList.add(appVersionVo);
-				}
-			}
-	return Result.ok(arrayList);
-	}
+    @Override
+    public Result getAppVersionInfo() {
+        Map<String, Object> columnMap = new HashMap<>();
+        List<AppVersionEntity> selectByMap = appVersionDao.selectByMap(columnMap);
+        List<Object> arrayList = new ArrayList<>();
+        if (CollUtil.isNotEmpty(selectByMap)) {
+            for (AppVersionEntity appVersionEntity : selectByMap) {
+                AppVersionVo appVersionVo = new AppVersionVo();
+                appVersionVo.setAddress(appVersionEntity.getAddress());
+                appVersionVo.setType(appVersionEntity.getType());
+                appVersionVo.setVersion(appVersionEntity.getVersion());
+                arrayList.add(appVersionVo);
+            }
+        }
+        return Result.ok(arrayList);
+    }
+
+    @Override
+    public Result getPcVersionInfo() {
+        Map<String, Object> columnMap = new HashMap<>();
+        List<AppVersionEntity> selectByMap = appVersionDao.selectByMap(columnMap);
+        List<Object> arrayList = new ArrayList<>();
+        if (CollUtil.isNotEmpty(selectByMap)) {
+            for (AppVersionEntity appVersionEntity : selectByMap) {
+                AppVersionVo appVersionVo = new AppVersionVo();
+                appVersionVo.setAddress(appVersionEntity.getAddress());
+                appVersionVo.setType(appVersionEntity.getType());
+                appVersionVo.setVersion(appVersionEntity.getVersion());
+                arrayList.add(appVersionVo);
+            }
+        }
+        return Result.ok(arrayList);
+    }
+
+    @Override
+    public Result memberTeam(MemberTeamRecordsPageDto memberTeamRecordsPageDto) {
+        //获取用户ID
+        Long memberId = LoginUserUtils.getAppLoginUser().getId();
+        MemberEntity member = memberDao.selectById(memberId);
+        MemberTeamVo memberTeamVo = memberDao.selectAllTeamByInviteIdInPage(memberId,member.getInviteId());
+        List<TeamVo> teamVos = new ArrayList<>();
+        if(ObjectUtil.isEmpty(memberTeamVo)){
+            MemberTeamVo memberTeamVoNull = new MemberTeamVo();
+            Integer teamCnt = memberDao.selectMemberCountByInvitedId(member.getInviteId());
+            memberTeamVoNull.setTeamCnt(teamCnt);
+            memberTeamVoNull.setZhiyaCnt(BigDecimal.ZERO);
+            memberTeamVoNull.setRewardCnt(BigDecimal.ZERO);
+            memberTeamVoNull.setTeamVo(teamVos);
+            return Result.ok(memberTeamVoNull);
+        }
+        //直属会员
+        List<MemberEntity> memberZhiShu = memberDao.selectMemberInfoByRefererId(member.getInviteId());
+        if(CollUtil.isNotEmpty(memberZhiShu)){
+            for(MemberEntity zhishu : memberZhiShu){
+                Long zhiShuMemberId = zhishu.getId();
+                ZhiYaTeam zhiYaTeam = memberDao.selectZhiYaTeamRecordByMemberId(zhiShuMemberId);
+                TeamVo teamVo = new TeamVo();
+                String phone = zhishu.getPhone();
+                if(StrUtil.isNotEmpty(phone)){
+                    String result = phone.substring(phone.length()-4,phone.length());
+                    teamVo.setAccount(result);
+                }
+                int memberCnt = memberDao.selectMemberCountByInvitedId(zhishu.getInviteId());
+                teamVo.setTeamCnt(memberCnt);
+
+                Long aLong = zhiYaRecordDao.selectSumZhiyaCntByMemberIdAndOrderStatus(zhiShuMemberId, 1);
+                Long rLong = zhiYaRecordDao.selectSumRewardCntByMemberId(zhiShuMemberId);
+                teamVo.setZhiyaCnt(new BigDecimal(aLong));
+                teamVo.setRewardCnt(new BigDecimal(rLong));
+                if(ObjectUtil.isNotEmpty(zhiYaTeam)){
+                    teamVo.setZhiyaCnt((zhiYaTeam.getZhiyaCnt() == null ? BigDecimal.ZERO : zhiYaTeam.getZhiyaCnt()).add(new BigDecimal(aLong)));
+                    teamVo.setRewardCnt(zhiYaTeam.getRewardCnt() == null ?BigDecimal.ZERO : zhiYaTeam.getRewardCnt().add(new BigDecimal(rLong)));
+                }
+                teamVos.add(teamVo);
+            }
+            memberTeamVo.setTeamVo(teamVos);
+        }
+        return Result.ok(memberTeamVo);
+    }
 }
 
 

--
Gitblit v1.9.1