From ff945f560a581fbe562be320f2a10880164dd2e8 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Thu, 06 Aug 2020 16:08:19 +0800 Subject: [PATCH] 20200806 代码提交 --- src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java | 39 ++++++++++++++++++++++++++++++++++++--- 1 files changed, 36 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java b/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java index d82c262..84e9ac9 100644 --- a/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java @@ -23,6 +23,7 @@ import com.xcong.excoin.modules.coin.dao.OrderCoinsDao; import com.xcong.excoin.modules.coin.parameter.dto.RecordsPageDto; import com.xcong.excoin.modules.contract.dao.ContractHoldOrderDao; +import com.xcong.excoin.modules.contract.dao.ContractOrderDao; import com.xcong.excoin.modules.contract.entity.ContractHoldOrderEntity; import com.xcong.excoin.modules.contract.entity.ContractOrderEntity; import com.xcong.excoin.modules.documentary.dao.FollowFollowerNoticeDao; @@ -102,6 +103,8 @@ @Resource private ContractHoldOrderDao contractHoldOrderDao; @Resource + private ContractOrderDao contractOrderDao; + @Resource private MemberLevelRateDao memberLevelRateDao; @Resource private MemberWalletContractDao memberWalletContractDao; @@ -109,7 +112,7 @@ private FollowFollowerSettingDao followFollowerSettingDao; @Resource private FollowFollowerOrderRelationDao followFollowerOrderRelationDao; - + @Resource private FollowFollowerNoticeDao followFollowerNoticeDao; @@ -857,11 +860,41 @@ if(CollUtil.isNotEmpty(records)) { for(ContractOrderEntity contractOrderEntity : records) { TradeHistoryOrderInfoVo myFollowOrderVo = new TradeHistoryOrderInfoVo(); + //获取【跟随者-订单关联表】中的累计数据 + BigDecimal allRewardAmount = BigDecimal.ZERO; + BigDecimal allRewardRatio = BigDecimal.ZERO; + + Long orderId = contractOrderEntity.getId(); + Map<String, Object> columnMapRelation = new HashMap<>(); + columnMapRelation.put("trade_order_no", orderId); + columnMapRelation.put("trade_member_id", memberId); + columnMapRelation.put("order_type", 2); + columnMapRelation.put("is_show", 1); + List<FollowFollowerOrderRelationEntity> followFollowerOrderRelations = followFollowerOrderRelationDao.selectByMap(columnMapRelation); + if(CollUtil.isNotEmpty(followFollowerOrderRelations)) { + int size = followFollowerOrderRelations.size() - 1; + myFollowOrderVo.setFollowerNumber(size); + for(FollowFollowerOrderRelationEntity followFollowerOrderRelation : followFollowerOrderRelations) { + Long followerMemberId = followFollowerOrderRelation.getMemberId(); + if(!memberId.equals(followerMemberId)) { + Long followerOrderId = followFollowerOrderRelation.getOrderId(); + ContractOrderEntity orderEntity = contractOrderDao.selectById(followerOrderId); + BigDecimal rewardAmount = orderEntity.getRewardAmount(); + allRewardAmount = allRewardAmount.add(rewardAmount); + BigDecimal rewardRatio = orderEntity.getRewardRatio(); + allRewardRatio = allRewardRatio.add(rewardRatio); + } + } + }else { + myFollowOrderVo.setFollowerNumber(0); + } + myFollowOrderVo.setFollowerRewardAmount(allRewardAmount); + myFollowOrderVo.setFollowerRewardRatio(allRewardRatio); + //获取交易员信息 FollowTraderInfoEntity followTraderInfoEntity = followTraderInfoDao.selectTraderInfoByMemberId(memberId); String nickname = followTraderInfoEntity.getNickname(); myFollowOrderVo.setNickname(nickname); - Long orderId = contractOrderEntity.getId(); myFollowOrderVo.setOrderId(orderId); String symbol = contractOrderEntity.getSymbol(); myFollowOrderVo.setSymbol(symbol); @@ -871,7 +904,7 @@ myFollowOrderVo.setLeverRatio(leverRatio); BigDecimal rewardAmount = contractOrderEntity.getRewardAmount().setScale(2, BigDecimal.ROUND_DOWN); myFollowOrderVo.setRewardAmount(rewardAmount); - BigDecimal rewardRatio = contractOrderEntity.getRewardRatio().setScale(4, BigDecimal.ROUND_DOWN); + BigDecimal rewardRatio = contractOrderEntity.getRewardRatio().setScale(2, BigDecimal.ROUND_DOWN); myFollowOrderVo.setRewardRatio(rewardRatio); int symbolCnt = contractOrderEntity.getSymbolCnt(); myFollowOrderVo.setSymbolCnt(symbolCnt); -- Gitblit v1.9.1