From 7c8869bb01261a5321a6ac624e575fe83bc869a6 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Fri, 05 Mar 2021 10:28:00 +0800 Subject: [PATCH] Merge branch 'whole_new' of http://120.27.238.55:7000/r/exchange into whole_new --- src/main/java/com/xcong/excoin/modules/documentary/service/impl/FollowOrderOperationServiceImpl.java | 28 ++++++++++++++++++---------- 1 files changed, 18 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/documentary/service/impl/FollowOrderOperationServiceImpl.java b/src/main/java/com/xcong/excoin/modules/documentary/service/impl/FollowOrderOperationServiceImpl.java index 5f5d248..e0f411b 100644 --- a/src/main/java/com/xcong/excoin/modules/documentary/service/impl/FollowOrderOperationServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/documentary/service/impl/FollowOrderOperationServiceImpl.java @@ -34,12 +34,14 @@ import com.xcong.excoin.modules.member.entity.*; import com.xcong.excoin.modules.platform.entity.PlatformTradeSettingEntity; import com.xcong.excoin.rabbit.pricequeue.OrderModel; +import com.xcong.excoin.rabbit.producer.FollowProducer; import com.xcong.excoin.rabbit.producer.OrderProducer; import com.xcong.excoin.utils.CacheSettingUtils; import com.xcong.excoin.utils.CalculateUtil; import com.xcong.excoin.utils.LogRecordUtils; import com.xcong.excoin.utils.ThreadPoolUtils; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -84,6 +86,9 @@ @Resource private MemberSettingDao memberSettingDao; + @Autowired + private FollowProducer followProducer; + @Override @Transactional(rollbackFor = Exception.class) @@ -92,11 +97,12 @@ // 查询交易员订单 ContractHoldOrderEntity holdOrderEntity = contractHoldOrderDao.selectById(id); - while (holdOrderEntity == null) { + if (holdOrderEntity == null) { try { - log.info("等待事务提交"); - Thread.sleep(500); - holdOrderEntity = contractHoldOrderDao.selectById(id); + log.info("等待事务提交:{}", id); + Thread.sleep(200); + followProducer.sendAddFollowOrder(id); + return; } catch (InterruptedException e) { e.printStackTrace(); } @@ -117,6 +123,14 @@ if (CollUtil.isNotEmpty(followerSettings)) { for (FollowFollowerSettingEntity followerSetting : followerSettings) { + //更新更新消息提醒的状态 + MemberSettingEntity memberSettingEntity = memberSettingDao.selectMemberSettingByMemberId(followerSetting.getId()); + if(ObjectUtil.isNotEmpty(memberSettingEntity)){ + Long memberId = memberSettingEntity.getMemberId(); + log.info("更新更新消息提醒的状态"); + memberSettingDao.updateMessageReminderByMemberId(memberId); + } + if (!followerSetting.getSymbols().contains(holdOrderEntity.getSymbol().replace("/USDT", ""))) { log.info("不在跟单币种内,不跟单:{},{}", followerSetting.getSymbols(), holdOrderEntity.getSymbol()); continue; @@ -226,12 +240,6 @@ } else { LogRecordUtils.insertMemberAccountFlow(memberEntity.getId(), prePaymentAmount, walletContract.getAvailableBalance().subtract(prePaymentAmount), holdOrderEntity.getSymbol(), "买跌持仓", "买跌:" + holdOrderEntity.getSymbol()); LogRecordUtils.insertFollowerNotice(memberEntity.getId(), NoticeConstant.OPEN_ORDER_TITLE, StrUtil.format(NoticeConstant.OPEN_ORDER_CONTENT, holdOrderEntity.getSymbol() + "开空", openPrice, followTraderInfoEntity.getNickname())); - } - //更新更新消息提醒的状态 - MemberSettingEntity memberSettingEntity = memberSettingDao.selectMemberSettingByMemberId(memberEntity.getId()); - if(ObjectUtil.isNotEmpty(memberSettingEntity)){ - memberSettingEntity.setMessageReminder(1); - memberSettingDao.updateById(memberSettingEntity); } } } -- Gitblit v1.9.1