From f6a912c1a6a26c809568f964941fb4ad4483274e Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Mon, 31 May 2021 11:19:40 +0800
Subject: [PATCH] modify
---
src/main/java/com/xcong/excoin/rabbit/pricequeue/WebsocketPriceService.java | 26 +++++++++++++++-----------
1 files changed, 15 insertions(+), 11 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 34d0534..d31f6f0 100644
--- a/src/main/java/com/xcong/excoin/rabbit/pricequeue/WebsocketPriceService.java
+++ b/src/main/java/com/xcong/excoin/rabbit/pricequeue/WebsocketPriceService.java
@@ -287,8 +287,8 @@
}
}
- @Transactional(rollbackFor = Exception.class)
- public synchronized void wholeBomb() {
+ public void wholeBomb() {
+ redisUtils.set("whole_bomb_execute", 1, 30);
Map<String, WholePriceDataModel> dataModelMap = WholeDataQueue.MAP;
if (CollUtil.isEmpty(dataModelMap)) {
return;
@@ -339,15 +339,19 @@
continue;
}
- 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));
+ log.info("过来过来");
+ synchronized(this) {
+ log.info("爆仓啥的:{}", entry.getKey());
+ boolean b = redisUtils.setNotExist(AppContants.WHOLE_BOMB_PREFIX + entry.getKey(), 1, 5);
+ if (b) {
+ 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