xiaoyong931011
2020-07-07 0f326acd413279d2c3fccb27ee1a5723e1387bcf
src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
@@ -7,6 +7,7 @@
import com.xcong.excoin.common.entity.FebsResponse;
import com.xcong.excoin.common.entity.QueryRequest;
import com.xcong.excoin.modules.member.dto.MemberDetailConfirmDto;
import com.xcong.excoin.modules.member.entity.AgentFriendRelationEntity;
import com.xcong.excoin.modules.member.entity.MemberAccountMoneyChangeEntity;
import com.xcong.excoin.modules.member.entity.MemberCoinAddressEntity;
import com.xcong.excoin.modules.member.entity.MemberCoinChargeEntity;
@@ -14,6 +15,7 @@
import com.xcong.excoin.modules.member.entity.MemberEntity;
import com.xcong.excoin.modules.member.entity.MemberQuickBuySaleEntity;
import com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity;
import com.xcong.excoin.modules.member.mapper.AgentFriendRelationMapper;
import com.xcong.excoin.modules.member.mapper.MemberAccountMoneyChangeMapper;
import com.xcong.excoin.modules.member.mapper.MemberAuthenticationMapper;
import com.xcong.excoin.modules.member.mapper.MemberCoinAddressMapper;
@@ -32,10 +34,13 @@
import lombok.RequiredArgsConstructor;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
@@ -66,6 +71,71 @@
   
   private final MemberAuthenticationMapper memberAuthenticationMapper;
   
   private final AgentFriendRelationMapper agentFriendRelationMapper;
   @Override
   public IPage<AgentFriendRelationEntity> findAgentInfoListInPage(AgentFriendRelationEntity agentFriendRelationEntity,
         QueryRequest request) {
      Page<AgentFriendRelationEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
      IPage<AgentFriendRelationEntity> findmemberQuickBuySaleListInPage = agentFriendRelationMapper.findAgentFriendRelationListInPage(page, agentFriendRelationEntity);
      List<AgentFriendRelationEntity> records = findmemberQuickBuySaleListInPage.getRecords();
      if(records != null && records.size() > 0) {
         for(AgentFriendRelationEntity agentFriendRelation : records) {
            List<String> arrayList = new ArrayList<>();
            String inviteId = agentFriendRelation.getInviteId();
            String inviteIdCZ = null;
            String inviteIdTX = null;
            String inviteIdSY = null;
            // 当前邀请码下的所有代理MemberID
            List<AgentFriendRelationEntity> lowLevelList = agentFriendRelationMapper.selectAgentFriendRelationByMap(inviteId);
            List<String> memberLevel = memberMapper.selectMemberBylowLevelInviteId(inviteId);
            arrayList.addAll(memberLevel);
            if(lowLevelList != null && lowLevelList.size() > 0) {
               for(AgentFriendRelationEntity lowLevelMemberId : lowLevelList) {
                  Long memberId = lowLevelMemberId.getMemberId();
                  arrayList.add(memberId.toString());
                  List<String> memberlowLevel = memberMapper.selectMemberBylowLevelInviteId(lowLevelMemberId.getInviteId());
                  arrayList.addAll(memberlowLevel);
               }
               Set<String> set = new HashSet<>();
               List<String> newList = new ArrayList<>();
                set.addAll(arrayList);
                newList.addAll(set);
               //获取对应的充值提现
               double czNumber = 0;
               double txNumber = 0;
               if(newList != null && newList.size() > 0) {
                  agentFriendRelation.setPromotionNumber(newList.size());
                  for(String memberId : newList) {
                     //充币
                     String selectCBByMemberId = memberCoinChargeMapper.selectCBByMemberId(memberId);
                     //充值
                     String selectCZByMemberI = memberQuickBuySaleMapper.selectCZByMemberId(memberId);
                     //提币
                     String selectTBByMemberId = memberCoinWithdrawMapper.selectTBByMemberId(memberId);
                     //提现
                     String selectTXByMemberId = memberQuickBuySaleMapper.selectTXByMemberId(memberId);
                      czNumber = czNumber + (selectCBByMemberId == null ? 0 : Double.parseDouble(selectCBByMemberId));
                      czNumber = czNumber + (selectCZByMemberI == null ? 0 : Double.parseDouble(selectCZByMemberI));
                      txNumber = txNumber + (selectTBByMemberId == null ? 0 : Double.parseDouble(selectTBByMemberId));
                      txNumber = txNumber + (selectTXByMemberId == null ? 0 : Double.parseDouble(selectTXByMemberId));
                  }
               }
               inviteIdCZ = czNumber+"";
               inviteIdTX = txNumber+"";
               inviteIdSY = (czNumber-txNumber)+"";
            }
            agentFriendRelation.setTotalRecharge(inviteIdCZ == null ? "0.0" : inviteIdCZ);
            agentFriendRelation.setTotalWithdrawal(inviteIdTX == null ? "0.0" : inviteIdTX);
            agentFriendRelation.setTotalPerformance(inviteIdSY == null ? "0.0" : inviteIdSY);
         }
      }
        return findmemberQuickBuySaleListInPage;
   }
    @Override
    public IPage<MemberEntity> findMemberListInPage(MemberEntity memberEntity, QueryRequest request) {