From 85e7a8b06e921c81b0ed17ec8f181cfb16e298fb Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 29 Jan 2021 11:21:28 +0800
Subject: [PATCH] modify

---
 src/main/java/com/xcong/excoin/utils/ThreadPoolUtils.java |   21 +++++++++++++++++++--
 1 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/utils/ThreadPoolUtils.java b/src/main/java/com/xcong/excoin/utils/ThreadPoolUtils.java
index 9dda87b..de3abb7 100644
--- a/src/main/java/com/xcong/excoin/utils/ThreadPoolUtils.java
+++ b/src/main/java/com/xcong/excoin/utils/ThreadPoolUtils.java
@@ -2,16 +2,21 @@
 
 import cn.hutool.core.collection.CollUtil;
 import com.alibaba.fastjson.JSONObject;
+import com.xcong.excoin.common.contants.AppContants;
 import com.xcong.excoin.common.enumerates.CoinTypeEnum;
+import com.xcong.excoin.modules.contract.dao.ContractEntrustOrderDao;
 import com.xcong.excoin.modules.contract.dao.ContractHoldOrderDao;
 import com.xcong.excoin.modules.contract.dao.ContractOrderDao;
+import com.xcong.excoin.modules.contract.entity.ContractEntrustOrderEntity;
 import com.xcong.excoin.modules.contract.entity.ContractHoldOrderEntity;
 import com.xcong.excoin.modules.contract.entity.ContractOrderEntity;
+import com.xcong.excoin.modules.contract.mapper.ContractHoldOrderEntityMapper;
 import com.xcong.excoin.modules.contract.service.impl.OrderWebsocketServiceImpl;
 import com.xcong.excoin.modules.documentary.service.FollowOrderOperationService;
 import com.xcong.excoin.modules.member.dao.MemberWalletContractDao;
 import com.xcong.excoin.modules.member.entity.MemberEntity;
 import com.xcong.excoin.modules.member.entity.MemberWalletContractEntity;
+import com.xcong.excoin.rabbit.pricequeue.whole.HoldOrderDataModel;
 import com.xcong.excoin.rabbit.pricequeue.whole.WholePriceDataModel;
 import com.xcong.excoin.rabbit.producer.OrderProducer;
 import com.xcong.excoin.utils.dingtalk.DingTalkUtils;
@@ -108,6 +113,8 @@
             public void run() {
                 log.info("全仓操作价格");
                 ContractHoldOrderDao contractHoldOrderDao = SpringContextHolder.getBean(ContractHoldOrderDao.class);
+                ContractEntrustOrderDao contractEntrustOrderDao = SpringContextHolder.getBean(ContractEntrustOrderDao.class);
+                RedisUtils redisUtils = SpringContextHolder.getBean(RedisUtils.class);
                 MemberWalletContractDao memberWalletContractDao = SpringContextHolder.getBean(MemberWalletContractDao.class);
 
                 List<ContractHoldOrderEntity> holdOrders = contractHoldOrderDao.selectHoldOrderListByMemberId(memberId);
@@ -117,7 +124,8 @@
                 MemberWalletContractEntity wallet = memberWalletContractDao.findWalletContractByMemberIdAndSymbol(memberId, CoinTypeEnum.USDT.name());
 
                 WholePriceDataModel wholePriceData = new WholePriceDataModel();
-                wholePriceData.setList(holdOrders);
+                List<HoldOrderDataModel> holdOrderDataModels = ContractHoldOrderEntityMapper.INSTANCE.entitiesToDataModels(holdOrders);
+                wholePriceData.setList(holdOrderDataModels);
 
                 BigDecimal totalHoldBond = BigDecimal.ZERO;
                 for (ContractHoldOrderEntity holdOrder : holdOrders) {
@@ -125,7 +133,16 @@
                 }
 
                 wholePriceData.setHoldBond(totalHoldBond);
-                wholePriceData.setBalance(wallet.getTotalBalance());
+
+                List<ContractEntrustOrderEntity> entrustOrder = contractEntrustOrderDao.selectEntrustOrderListByMemberId(wholePriceData.getMemberId());
+                BigDecimal totalAmount = BigDecimal.ZERO;
+                if (CollUtil.isNotEmpty(entrustOrder)) {
+                    for (ContractEntrustOrderEntity contractEntrustOrderEntity : entrustOrder) {
+                        totalAmount.add(contractEntrustOrderEntity.getEntrustAmount());
+                    }
+                }
+
+                wholePriceData.setBalance(wallet.getTotalBalance().subtract(totalAmount));
                 wholePriceData.setMemberId(memberId);
 
                 OrderProducer orderProducer = SpringContextHolder.getBean(OrderProducer.class);

--
Gitblit v1.9.1