From 0ac5d713b3838c5147516a6949d506d002305a98 Mon Sep 17 00:00:00 2001
From: zainali5120 <512061637@qq.com>
Date: Sat, 17 Oct 2020 13:37:14 +0800
Subject: [PATCH] 最高最低价修复

---
 src/main/java/com/xcong/excoin/modules/coin/service/impl/OrderCoinServiceImpl.java |   22 +++++++++++++---------
 1 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/coin/service/impl/OrderCoinServiceImpl.java b/src/main/java/com/xcong/excoin/modules/coin/service/impl/OrderCoinServiceImpl.java
index 64d5d27..b52f93c 100644
--- a/src/main/java/com/xcong/excoin/modules/coin/service/impl/OrderCoinServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/coin/service/impl/OrderCoinServiceImpl.java
@@ -12,6 +12,7 @@
 import com.xcong.excoin.common.enumerates.CoinTypeEnum;
 import com.xcong.excoin.modules.blackchain.service.RocService;
 import com.xcong.excoin.modules.coin.mapper.OrderCoinsDealMapper;
+import com.xcong.excoin.modules.coin.service.CoinService;
 import com.xcong.excoin.modules.member.dao.MemberDao;
 import com.xcong.excoin.modules.member.entity.MemberEntity;
 import com.xcong.excoin.modules.platform.entity.PlatformCnyUsdtExchangeEntity;
@@ -96,6 +97,9 @@
 
     @Resource
     private OrderSubmitProducer orderSubmitProducer;
+
+    @Resource
+    private CoinService coinService;
 
 
     @Override
@@ -498,10 +502,10 @@
         //冻结相应的资产
         if (OrderCoinsEntity.ORDERTYPE_BUY.equals(type)) {
             //如果是买入,所对应的币种增加,USDT账户减少金额
-            memberWalletCoinDao.updateWalletBalance(walletCoinUsdt.getId(), totalPayPrice.negate(), totalPayPrice.negate(), entrustAmount);
+            coinService.updateWalletBalance(walletCoinUsdt.getId(), totalPayPrice.negate(), totalPayPrice.negate(), entrustAmount);
         } else {
             //如果是卖出,币种减少,USDT增加
-            memberWalletCoinDao.updateWalletBalance(walletCoin.getId(), amount.negate(), amount.negate(), amount);
+            coinService.updateWalletBalance(walletCoin.getId(), amount.negate(), amount.negate(), amount);
         }
         // 加入到撮合
         order.setSymbol(symbol);
@@ -704,7 +708,7 @@
                         returnFee = orderCoinsEntity.getFeeAmount().subtract(needFee);
                     }
                     BigDecimal avi = returnBalance.add(returnFee);
-                    memberWalletCoinDao.updateWalletBalance(walletCoin.getId(), avi, null, returnBalance.negate());
+                    coinService.updateWalletBalance(walletCoin.getId(), avi, null, returnBalance.negate());
                     walletCoin.setAvailableBalance(walletCoin.getAvailableBalance().add(returnBalance).add(returnFee));
                     walletCoin.setFrozenBalance(walletCoin.getFrozenBalance().subtract(returnBalance));
                     //memberWalletCoinDao.updateById(walletCoin);
@@ -728,7 +732,7 @@
                     walletCoin.setAvailableBalance(walletCoin.getAvailableBalance().add(returnBalance));
                     walletCoin.setFrozenBalance(walletCoin.getFrozenBalance().subtract(returnBalance));
                     //memberWalletCoinDao.updateById(walletCoin);
-                    memberWalletCoinDao.updateWalletBalance(walletCoin.getId(), returnBalance, null, returnBalance.negate());
+                    coinService.updateWalletBalance(walletCoin.getId(), returnBalance, null, returnBalance.negate());
                     // 流水记录
                     MemberAccountFlowEntity record = new MemberAccountFlowEntity();
                     record.setSource(MemberAccountFlowEntity.SOURCE_CANCEL);
@@ -1018,12 +1022,12 @@
                 MemberWalletCoinEntity usdtWallet = memberWalletCoinDao.selectWalletCoinBymIdAndCode(buyOrderCoinsEntity.getMemberId(), MemberWalletCoinEnum.WALLETCOINCODE.getValue());
                 if (usdtWallet != null) {
                     // 减少usdt冻结
-                    memberWalletCoinDao.updateWalletBalance(usdtWallet.getId(), null, null, buyTurnover.negate());
+                    coinService.updateWalletBalance(usdtWallet.getId(), null, null, buyTurnover.negate());
                 }
                 // 增加买的币
                 MemberWalletCoinEntity buySymbolWallet = memberWalletCoinDao.selectWalletCoinBymIdAndCode(buyOrderCoinsEntity.getMemberId(), buyOrderCoinsEntity.getSymbol());
                 if (buySymbolWallet != null) {
-                    memberWalletCoinDao.updateWalletBalance(buySymbolWallet.getId(), amount, amount, null);
+                    coinService.updateWalletBalance(buySymbolWallet.getId(), amount, amount, null);
                 }
                 // 流水记录
                 MemberAccountFlowEntity record = new MemberAccountFlowEntity();
@@ -1062,12 +1066,12 @@
                 MemberWalletCoinEntity memberWalletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(sellOrderCoinsEntity.getMemberId(), sellOrderCoinsEntity.getSymbol());
                 if (memberWalletCoinEntity != null) {
                     // 更新卖币减少的币种
-                    memberWalletCoinDao.updateWalletBalance(memberWalletCoinEntity.getId(), null, null, amount.negate());
+                    coinService.updateWalletBalance(memberWalletCoinEntity.getId(), null, null, amount.negate());
                 }
                 // 更新卖币得到的usdt
                 MemberWalletCoinEntity sellWalletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(sellOrderCoinsEntity.getMemberId(), MemberWalletCoinEnum.WALLETCOINCODE.getValue());
                 if (sellOrderCoinsEntity != null) {
-                    memberWalletCoinDao.updateWalletBalance(sellWalletCoinEntity.getId(), buyTurnover, buyTurnover, null);
+                    coinService.updateWalletBalance(sellWalletCoinEntity.getId(), buyTurnover, buyTurnover, null);
                 }
                 // 流水记录
                 MemberAccountFlowEntity recordSell = new MemberAccountFlowEntity();
@@ -1099,7 +1103,7 @@
                             BigDecimal subtract = trade.getEntrustAmount().subtract(trade.getDealAmount());
                             MemberWalletCoinEntity memberWalletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(trade.getMemberId(), CoinTypeEnum.USDT.name());
                             if(memberWalletCoinEntity!=null){
-                                memberWalletCoinDao.updateWalletBalance(memberWalletCoinEntity.getId(),subtract,null,subtract.negate());
+                                coinService.updateWalletBalance(memberWalletCoinEntity.getId(),subtract,null,subtract.negate());
                             }
                         }
                     }

--
Gitblit v1.9.1