From 0002f4d59b5a40457258291ef95b6bddd7fc2153 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 03 Feb 2021 11:32:32 +0800
Subject: [PATCH] modify

---
 src/main/java/com/xcong/excoin/rabbit/pricequeue/WebsocketPriceService.java |   18 +++++++++++-------
 1 files changed, 11 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/rabbit/pricequeue/WebsocketPriceService.java b/src/main/java/com/xcong/excoin/rabbit/pricequeue/WebsocketPriceService.java
index 1f4adb0..34d0534 100644
--- a/src/main/java/com/xcong/excoin/rabbit/pricequeue/WebsocketPriceService.java
+++ b/src/main/java/com/xcong/excoin/rabbit/pricequeue/WebsocketPriceService.java
@@ -288,7 +288,7 @@
     }
 
     @Transactional(rollbackFor = Exception.class)
-    public void wholeBomb() {
+    public synchronized void wholeBomb() {
         Map<String, WholePriceDataModel> dataModelMap = WholeDataQueue.MAP;
         if (CollUtil.isEmpty(dataModelMap)) {
             return;
@@ -339,12 +339,16 @@
                     continue;
                 }
 
-                dataModelMap.remove(entry.getKey());
-                redisUtils.set(AppContants.WHOLE_BOMB_MAP, JSONObject.toJSONString(dataModelMap));
-                log.info("全仓爆仓触发:{}", JSONObject.toJSONString(wholePriceData));
-                wholePriceData.setPrices(prices);
-                contractHoldOrderDao.updateMemberAllHoldOrderClosingStatus(wholePriceData.getMemberId());
-                orderProducer.sendWholeBomb(JSONObject.toJSONString(wholePriceData));
+                log.info("爆仓啥的:{}", entry.getKey());
+                if (entry.getKey() != null) {
+                    dataModelMap.remove(entry.getKey());
+                    wholePriceData.setEquity(wholePriceData.getBalance().add(totalProfitOrLoss));
+                    redisUtils.set(AppContants.WHOLE_BOMB_MAP, JSONObject.toJSONString(dataModelMap));
+                    log.info("全仓爆仓触发:{}", JSONObject.toJSONString(wholePriceData));
+                    wholePriceData.setPrices(prices);
+                    contractHoldOrderDao.updateMemberAllHoldOrderClosingStatus(wholePriceData.getMemberId());
+                    orderProducer.sendWholeBomb(JSONObject.toJSONString(wholePriceData));
+                }
             }
         }
     }

--
Gitblit v1.9.1