From 87c7037e167ba94e858c4ae7a1d1870c4128b775 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Tue, 06 Apr 2021 16:12:33 +0800 Subject: [PATCH] Merge branch 'activity' of http://120.27.238.55:7000/r/exchange into activity --- src/main/java/com/xcong/excoin/rabbit/producer/FollowProducer.java | 9 +++------ src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java | 2 +- src/main/java/com/xcong/excoin/modules/documentary/service/impl/FollowOrderOperationServiceImpl.java | 7 +++++-- src/main/java/com/xcong/excoin/rabbit/consumer/FollowConsumer.java | 10 ++++------ 4 files changed, 13 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java index 1c3431f..a87efc9 100644 --- a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java @@ -853,7 +853,7 @@ sendOrderBombMsg(holdOrderEntity.getId(), holdOrderEntity.getOpeningType(), forceClosingPrice, holdOrderEntity.getSymbol(), holdOrderEntity.getOperateNo(), holdOrderEntity.getMemberId()); if (ContractOrderEntity.CONTRACTTYPE_DOCUMENTARY == holdOrderEntity.getContractType()) { - followProducer.sendChangeFollowOrderBond(holdOrderEntity.getId(), changeBondDto.getAmount(), changeBondDto.getType()); + followProducer.sendChangeFollowOrderBond(changeBondDto); } return Result.ok("调整成功"); } 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 eae5138..96d06e3 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 @@ -387,6 +387,9 @@ List<FollowFollowerOrderRelationEntity> relations = followFollowerOrderRelationDao.selectFollowHoldOrderByTradeOrderNo(contractHoldOrderEntity.getOrderNo()); if (CollUtil.isNotEmpty(relations)) { for (FollowFollowerOrderRelationEntity relation : relations) { + if (contractHoldOrderEntity.getId().equals(relation.getOrderId())) { + continue; + } ContractHoldOrderEntity followHoldOrder = contractHoldOrderDao.selectById(relation.getOrderId()); MemberEntity memberEntity = memberDao.selectById(relation.getMemberId()); MemberWalletContractEntity wallet = memberWalletContractDao.findWalletContractByMemberIdAndSymbol(memberEntity.getId(), CoinTypeEnum.USDT.name()); @@ -405,7 +408,7 @@ } else { if (followHoldOrder.getBondAmount().subtract(followHoldOrder.getPrePaymentAmount()).subtract(bond).compareTo(BigDecimal.ZERO) < 0) { log.info("超出保证金最大减少金额-1"); - LogRecordUtils.insertFollowerNotice(memberEntity.getId(), NoticeConstant.CHANGE_BOND_TITLE, NoticeConstant.CHANGE_BOND_ADD_CONTENT_FAIL); + LogRecordUtils.insertFollowerNotice(memberEntity.getId(), NoticeConstant.CHANGE_BOND_TITLE, NoticeConstant.CHANGE_BOND_REDUCE_CONTENT_FAIL); continue; } @@ -414,7 +417,7 @@ BigDecimal canReduceMax = followHoldOrder.getBondAmount().subtract(followHoldOrder.getPrePaymentAmount()).add(profitOrLoss); if (canReduceMax.subtract(bond).compareTo(BigDecimal.ZERO) < 0) { log.info("超出保证金最大减少金额-2"); - LogRecordUtils.insertFollowerNotice(memberEntity.getId(), NoticeConstant.CHANGE_BOND_TITLE, NoticeConstant.CHANGE_BOND_ADD_CONTENT_FAIL); + LogRecordUtils.insertFollowerNotice(memberEntity.getId(), NoticeConstant.CHANGE_BOND_TITLE, NoticeConstant.CHANGE_BOND_REDUCE_CONTENT_FAIL); continue; } } diff --git a/src/main/java/com/xcong/excoin/rabbit/consumer/FollowConsumer.java b/src/main/java/com/xcong/excoin/rabbit/consumer/FollowConsumer.java index d206b1b..e7fc215 100644 --- a/src/main/java/com/xcong/excoin/rabbit/consumer/FollowConsumer.java +++ b/src/main/java/com/xcong/excoin/rabbit/consumer/FollowConsumer.java @@ -3,6 +3,7 @@ import com.alibaba.fastjson.JSONObject; import com.rabbitmq.client.Channel; import com.xcong.excoin.configurations.RabbitMqConfig; +import com.xcong.excoin.modules.contract.parameter.dto.ChangeBondDto; import com.xcong.excoin.modules.documentary.service.FollowOrderOperationService; import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.core.Message; @@ -35,14 +36,11 @@ followOrderOperationService.addFollowerOrder(Long.parseLong(content)); } -// @RabbitListener(queues = RabbitMqConfig.QUEUE_FOLLOW_CHANGE_BOND) + @RabbitListener(queues = RabbitMqConfig.QUEUE_FOLLOW_CHANGE_BOND) public void changeFollowOrderBond(Message message, Channel channel) { String content = new String(message.getBody()); log.info("==收到跟单保证金调整消息 : {}", content); - Map map = JSONObject.parseObject(content, Map.class); - Integer id = (Integer) map.get("id"); - BigDecimal bond = (BigDecimal) map.get("bond"); - Integer type = (Integer) map.get("type"); - followOrderOperationService.changeFollowOrdersBond(id.longValue(), bond, type); + ChangeBondDto changeBondDto = JSONObject.parseObject(content, ChangeBondDto.class); + followOrderOperationService.changeFollowOrdersBond(changeBondDto.getId(), changeBondDto.getAmount(), changeBondDto.getType()); } } diff --git a/src/main/java/com/xcong/excoin/rabbit/producer/FollowProducer.java b/src/main/java/com/xcong/excoin/rabbit/producer/FollowProducer.java index 1c5e466..a29ab8f 100644 --- a/src/main/java/com/xcong/excoin/rabbit/producer/FollowProducer.java +++ b/src/main/java/com/xcong/excoin/rabbit/producer/FollowProducer.java @@ -3,6 +3,7 @@ import com.alibaba.fastjson.JSONObject; import com.xcong.excoin.configurations.RabbitMqConfig; +import com.xcong.excoin.modules.contract.parameter.dto.ChangeBondDto; import lombok.extern.slf4j.Slf4j; import net.sf.json.JSON; import org.springframework.amqp.rabbit.connection.CorrelationData; @@ -53,13 +54,9 @@ * * @param id */ - public void sendChangeFollowOrderBond(Long id, BigDecimal changeBond, Integer type) { + public void sendChangeFollowOrderBond(ChangeBondDto changeBondDto) { CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString()); - Map<String, Object> map = new HashMap<>(); - map.put("id", id); - map.put("bond", changeBond); - map.put("type", type); - String msg = JSONObject.toJSONString(map); + String msg = JSONObject.toJSONString(changeBondDto); log.info("发送跟单保证金调整消息: {}, {}", msg, correlationData.getId()); rabbitTemplate.convertAndSend(RabbitMqConfig.EXCHANGE_A, RabbitMqConfig.ROUTINGKEY_FOLLOW_CHANGE_BOND, msg, correlationData); } -- Gitblit v1.9.1