From ac33ee978b7f0a9e30ab2499c06207b8d6495915 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Thu, 10 Sep 2020 16:07:08 +0800 Subject: [PATCH] modify --- src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java | 20 ++------------------ src/main/resources/mapper/contract/ContractOrderDao.xml | 7 +++++++ src/main/java/com/xcong/excoin/modules/contract/dao/ContractOrderDao.java | 2 ++ 3 files changed, 11 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/contract/dao/ContractOrderDao.java b/src/main/java/com/xcong/excoin/modules/contract/dao/ContractOrderDao.java index bc69208..54137a2 100644 --- a/src/main/java/com/xcong/excoin/modules/contract/dao/ContractOrderDao.java +++ b/src/main/java/com/xcong/excoin/modules/contract/dao/ContractOrderDao.java @@ -29,4 +29,6 @@ List<ContractOrderEntity> selectWholeOpenOrderByOrderNo(@Param("orderNo") String orderNo); BigDecimal selectWholeFeeAmountByOrderNo(@Param("orderNo") String orderNo); + + int updateOrderProfitOrLessById(@Param("rewardAmount") BigDecimal rewardAmount, @Param("rewardRatio") BigDecimal rewardRatio, @Param("id") Long id); } diff --git a/src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java b/src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java index 3d1476a..3d97b12 100644 --- a/src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java @@ -483,7 +483,7 @@ Map<Object, Object> value = redisUtils.hmget(AppContants.WHOLE_BOMB_PREFIX + memberId); if (CollUtil.isNotEmpty(holdOrderEntities)) { - PlatformTradeSettingEntity tradeSetting = cacheSettingUtils.getTradeSetting(); + for (ContractHoldOrderEntity holdOrderEntity : holdOrderEntities) { // 删除次仓订单 contractHoldOrderDao.deleteById(holdOrderEntity.getId()); @@ -491,23 +491,7 @@ String symbolPrice = (String) value.get(holdOrderEntity.getSymbol()); log.info("symbolPrice : {}, symbol : {}", symbolPrice, holdOrderEntity.getSymbol()); BigDecimal currentPrice = new BigDecimal(symbolPrice); - // 单个订单盈利 -// BigDecimal profitOrLess = BigDecimal.ZERO; -// // 开多 -// if (ContractHoldOrderEntity.OPENING_TYPE_MORE == holdOrderEntity.getOpeningType()) { -// profitOrLess = currentPrice.subtract(holdOrderEntity.getOpeningPrice()).multiply(new BigDecimal(holdOrderEntity.getSymbolCntSale())).multiply(lotNumber); -// // 开空 -// } else { -// profitOrLess = holdOrderEntity.getOpeningPrice().subtract(currentPrice).multiply(new BigDecimal(holdOrderEntity.getSymbolCntSale())).multiply(lotNumber); -// } -// -// if (MemberEntity.IS_PROFIT_Y == memberEntity.getIsProfit()) { -// if (profitOrLess.compareTo(BigDecimal.ZERO) > 0) { -// profitOrLess = profitOrLess.multiply(BigDecimal.ONE.subtract(tradeSetting.getForceParam())); -// } else { -// profitOrLess = profitOrLess.multiply(BigDecimal.ONE.add(tradeSetting.getForceParam())); -// } -// } + BigDecimal profitOrLess = CalculateUtil.calOrderProfitOrLess(holdOrderEntity.getOpeningType(), currentPrice, holdOrderEntity.getOpeningPrice(), lotNumber, holdOrderEntity.getSymbolCntSale(), memberEntity.getIsProfit()); log.info("profitOrLess ---> {}", profitOrLess); ContractOrderEntity contractOrderEntity = ContractHoldOrderEntityMapper.INSTANCE.holdOrderToOrder(holdOrderEntity); diff --git a/src/main/resources/mapper/contract/ContractOrderDao.xml b/src/main/resources/mapper/contract/ContractOrderDao.xml index 473036a..d0441d5 100644 --- a/src/main/resources/mapper/contract/ContractOrderDao.xml +++ b/src/main/resources/mapper/contract/ContractOrderDao.xml @@ -90,4 +90,11 @@ where order_no=#{orderNo} and order_type in (1,2) and order_status=1 </select> + + <update id="updateOrderProfitOrLessById"> + update contract_order + set reward_amount=#{rewardAmount}, + reward_ratio=#{rewardRatio} + where id=#{id} + </update> </mapper> \ No newline at end of file -- Gitblit v1.9.1