From 0cec061f29cfde646793054ca158b5664b54409f Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Fri, 16 Apr 2021 16:45:05 +0800 Subject: [PATCH] modify --- src/test/java/com/xcong/excoin/MemberTest.java | 134 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 134 insertions(+), 0 deletions(-) diff --git a/src/test/java/com/xcong/excoin/MemberTest.java b/src/test/java/com/xcong/excoin/MemberTest.java new file mode 100644 index 0000000..da4f357 --- /dev/null +++ b/src/test/java/com/xcong/excoin/MemberTest.java @@ -0,0 +1,134 @@ +package com.xcong.excoin; + +import cn.hutool.core.collection.CollUtil; +import com.xcong.excoin.common.system.dto.RegisterDto; +import com.xcong.excoin.modules.documentary.dao.FollowFollowerProfitDao; +import com.xcong.excoin.modules.documentary.dao.FollowFollowerSettingDao; +import com.xcong.excoin.modules.documentary.dao.FollowTraderInfoDao; +import com.xcong.excoin.modules.documentary.dto.DocumentaryOrderSetDto; +import com.xcong.excoin.modules.documentary.entity.FollowFollowerProfitEntity; +import com.xcong.excoin.modules.documentary.entity.FollowFollowerSettingEntity; +import com.xcong.excoin.modules.documentary.entity.FollowTraderInfoEntity; +import com.xcong.excoin.modules.member.service.MemberService; +import lombok.extern.slf4j.Slf4j; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +import java.math.BigDecimal; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @author wzy + * @date 2021-04-16 + **/ +@Slf4j +@SpringBootTest +public class MemberTest { + + @Autowired + private MemberService memberService; + + @Test + public void baseInsert() { + for(int i = 0; i < 100; i++) { + String phonePrefix = "199999999"; + if (i < 10) { + phonePrefix = phonePrefix + "0" + i; + } else { + phonePrefix = phonePrefix + i; + } + + RegisterDto registerDto = new RegisterDto(); + registerDto.setAccount(phonePrefix); + registerDto.setType(1); + registerDto.setCode("a123456"); + registerDto.setRefererId("49027637"); + memberService.register(registerDto); + } + } + + @Autowired + private FollowFollowerSettingDao followFollowerSettingDao; + @Autowired + private FollowTraderInfoDao followTraderInfoDao; + @Autowired + private FollowFollowerProfitDao followFollowerProfitDao; + + @Test + public void followTrader() { + DocumentaryOrderSetDto documentaryOrderSetDto = new DocumentaryOrderSetDto(); + documentaryOrderSetDto.setTraderId(1L); + documentaryOrderSetDto.setFollowCnt(1); + documentaryOrderSetDto.setFollowType(1); + documentaryOrderSetDto.setSymbols("BTC,ETH,LTC,BCH,EOS,XRP,ETC"); + + Long traderId = documentaryOrderSetDto.getTraderId(); + Long memberId = 1L; + + FollowFollowerSettingEntity isExistSetting = followFollowerSettingDao.selectOneBymemberIdAndTradeId(memberId, traderId); + if (isExistSetting == null) { + //新增【跟随者设置】数据 + FollowFollowerSettingEntity followFollowerSettingEntity = new FollowFollowerSettingEntity(); + followFollowerSettingEntity.setMemberId(memberId); + followFollowerSettingEntity.setTraderId(traderId); + FollowTraderInfoEntity followTraderInfoEntity = followTraderInfoDao.selectById(traderId); + Long traderMemberId = followTraderInfoEntity.getMemberId(); + followFollowerSettingEntity.setTraderMemberId(traderMemberId); + followFollowerSettingEntity.setSymbols(documentaryOrderSetDto.getSymbols()); + followFollowerSettingEntity.setFollowType(documentaryOrderSetDto.getFollowType()); + followFollowerSettingEntity.setFollowCnt(documentaryOrderSetDto.getFollowCnt()); + followFollowerSettingEntity.setMaxFollowCnt(documentaryOrderSetDto.getMaxFollowCnt()); + followFollowerSettingDao.insert(followFollowerSettingEntity); + //更新【跟随者收益】数据 + Map<String, Object> columnMap = new HashMap<>(); + columnMap.put("member_id", memberId); + columnMap.put("trade_id", traderId); + List<FollowFollowerProfitEntity> selectByMap = followFollowerProfitDao.selectByMap(columnMap); + if (CollUtil.isNotEmpty(selectByMap)) { + FollowFollowerProfitEntity followFollowerProfitEntity = selectByMap.get(0); + followFollowerProfitEntity.setIsFollow(FollowFollowerProfitEntity.IS_FOLLOW_Y); + followFollowerProfitDao.updateById(followFollowerProfitEntity); + } else { + FollowFollowerProfitEntity followFollowerProfitEntity = new FollowFollowerProfitEntity(); + followFollowerProfitEntity.setMemberId(memberId); + followFollowerProfitEntity.setTradeId(traderId); + followFollowerProfitEntity.setTradeMemberId(traderMemberId); + followFollowerProfitEntity.setTotalPrincipal(BigDecimal.ZERO); + followFollowerProfitEntity.setTotalProfit(BigDecimal.ZERO); + followFollowerProfitEntity.setIsFollow(FollowFollowerProfitEntity.IS_FOLLOW_Y); + followFollowerProfitDao.insert(followFollowerProfitEntity); + } + } else { + //更新【跟随者收益】数据 + Map<String, Object> columnMap = new HashMap<>(); + columnMap.put("member_id", memberId); + columnMap.put("trade_id", traderId); + List<FollowFollowerProfitEntity> selectByMap = followFollowerProfitDao.selectByMap(columnMap); + if (CollUtil.isNotEmpty(selectByMap)) { + FollowFollowerProfitEntity followFollowerProfitEntity = selectByMap.get(0); + followFollowerProfitEntity.setIsFollow(FollowFollowerProfitEntity.IS_FOLLOW_Y); + followFollowerProfitDao.updateById(followFollowerProfitEntity); + }else { + FollowFollowerProfitEntity followFollowerProfitEntity = new FollowFollowerProfitEntity(); + followFollowerProfitEntity.setMemberId(memberId); + followFollowerProfitEntity.setTradeId(traderId); + FollowTraderInfoEntity followTraderInfoEntity = followTraderInfoDao.selectById(traderId); + Long traderMemberId = followTraderInfoEntity.getMemberId(); + followFollowerProfitEntity.setTradeMemberId(traderMemberId); + followFollowerProfitEntity.setTotalPrincipal(BigDecimal.ZERO); + followFollowerProfitEntity.setTotalProfit(BigDecimal.ZERO); + followFollowerProfitEntity.setIsFollow(FollowFollowerProfitEntity.IS_FOLLOW_Y); + followFollowerProfitDao.insert(followFollowerProfitEntity); + } + + isExistSetting.setSymbols(documentaryOrderSetDto.getSymbols()); + isExistSetting.setFollowType(documentaryOrderSetDto.getFollowType()); + isExistSetting.setFollowCnt(documentaryOrderSetDto.getFollowCnt()); + isExistSetting.setMaxFollowCnt(documentaryOrderSetDto.getMaxFollowCnt()); + followFollowerSettingDao.updateById(isExistSetting); + } + } +} -- Gitblit v1.9.1