From cc6d44ddf61b67225461b159f0eccdf597982c10 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 18 Mar 2021 18:14:52 +0800
Subject: [PATCH] modify

---
 src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

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 4bdd613..40c89d7 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
@@ -302,6 +302,7 @@
             }
             log.info("profitOrLoss:{}", profitOrLoss);
 
+            BigDecimal rewardRatio = profitOrLoss.divide(holdOrderEntity.getBondAmount().subtract(holdOrderEntity.getOpeningFeeAmount()), 4, BigDecimal.ROUND_DOWN);
             // 保证金
             BigDecimal bondAmount = CalculateUtil.getBondAmount(holdOrderEntity.getOpeningPrice(), lotNumber, closeCnt, holdOrderEntity.getLeverRatio());
 
@@ -323,6 +324,7 @@
             contractOrderEntity.setClosingType(closingType);
             contractOrderEntity.setSymbolCnt(closeCnt);
             contractOrderEntity.setRewardAmount(profitOrLoss);
+            contractOrderEntity.setRewardRatio(rewardRatio);
             contractOrderEntity.setBondAmount(bondAmount.add(fee));
             contractOrderEntity.setClosingFeeAmount(fee);
             contractOrderEntity.setClosingTime(new Date());
@@ -439,17 +441,22 @@
             fee = holdOrderEntity.getOpeningFeeAmount();
         }
 
+        BigDecimal rewardRatio = profitOrLoss.divide(bondAmount, 4, BigDecimal.ROUND_DOWN);
+
         log.info("fee:{}", fee);
         ContractOrderEntity contractOrderEntity = ContractHoldOrderEntityMapper.INSTANCE.holdOrderToOrder(holdOrderEntity);
         contractOrderEntity.setId(null);
         contractOrderEntity.setEntrustOpeningPrice(newPrice);
         contractOrderEntity.setEntrustTime(new Date());
         contractOrderEntity.setClosingPrice(newPrice);
-        contractOrderEntity.setOrderType(orderType);
+        contractOrderEntity.setTradeType(ContractOrderEntity.TRADE_TYPE_LIMIT_PRICE);
+        contractOrderEntity.setOrderType(entrustOrder.getEntrustType());
         contractOrderEntity.setClosingType(closingType);
         contractOrderEntity.setSymbolCnt(closeCnt);
         contractOrderEntity.setRewardAmount(profitOrLoss);
+        contractOrderEntity.setRewardRatio(rewardRatio);
         contractOrderEntity.setBondAmount(bondAmount);
+        contractOrderEntity.setClosingTime(new Date());
         contractOrderEntity.setClosingFeeAmount(fee);
         contractOrderDao.insert(contractOrderEntity);
 

--
Gitblit v1.9.1