From 013641a0b4d052fdb0ea69a891df502498943a0b Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 28 Aug 2020 17:29:26 +0800
Subject: [PATCH] modify

---
 src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java |    2 ++
 src/test/java/com/xcong/excoin/WholeTest.java                                            |   18 ++++++++++++++++++
 src/main/java/com/xcong/excoin/modules/contract/entity/ContractHoldOrderEntity.java      |    2 +-
 3 files changed, 21 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/contract/entity/ContractHoldOrderEntity.java b/src/main/java/com/xcong/excoin/modules/contract/entity/ContractHoldOrderEntity.java
index 99b8919..183d3f8 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/entity/ContractHoldOrderEntity.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/entity/ContractHoldOrderEntity.java
@@ -161,6 +161,6 @@
     /**
      * 已实现盈亏
      */
-    @TableField(exist = false)
+//    @TableField(exist = false)
     private BigDecimal rewardAmount;
 }
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 c52b315..db65c8c 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
@@ -324,6 +324,8 @@
             if (holdOrderEntity.getSymbolCntSale() != 0) {
                 holdOrderEntity.setOpeningFeeAmount(holdOrderEntity.getOpeningFeeAmount().subtract(fee));
                 holdOrderEntity.setBondAmount(holdOrderEntity.getBondAmount().subtract(bondAmount));
+                BigDecimal rewardAmount = holdOrderEntity.getRewardAmount() == null ? BigDecimal.ZERO : holdOrderEntity.getRewardAmount();
+                holdOrderEntity.setRewardAmount(rewardAmount.add(profitOrLoss));
                 contractHoldOrderDao.updateById(holdOrderEntity);
             } else {
                 contractHoldOrderDao.deleteById(holdOrderEntity.getId());
diff --git a/src/test/java/com/xcong/excoin/WholeTest.java b/src/test/java/com/xcong/excoin/WholeTest.java
index 899aaf4..d488385 100644
--- a/src/test/java/com/xcong/excoin/WholeTest.java
+++ b/src/test/java/com/xcong/excoin/WholeTest.java
@@ -100,4 +100,22 @@
         orderProducer.sendLimitClose(JSONObject.toJSONString(list));
     }
 
+
+    // 面值*(多单张数*多单开仓价-空单张数*空单开仓价)-余额-已实现盈亏 / 面值*(多单张数-空单张数)-(维持保证金率+TAKER手续费)*面值*(开多张数+开空张数)
+
+    /*
+    面值 : 0.1000 * 678
+    多单张数 : 300  开仓价 : 11400.53000000   -> 3420159
+    空单张数 : 300  开仓价 : 11398.27000000   -> 3419481
+    余额 : 562.92683993    -495.12
+
+    手续费率 : 0.0460
+
+
+     */
+    @Test
+    public void forceSetPriceTest() {
+
+    }
+
 }

--
Gitblit v1.9.1