From 3409aa6a1bbe29933c5f9e45982223aa6b62eb35 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 03 Sep 2020 21:22:37 +0800
Subject: [PATCH] modify

---
 src/main/resources/mapper/contract/ContractHoldOrderDao.xml                   |    6 ++++++
 src/main/java/com/xcong/excoin/modules/contract/dao/ContractHoldOrderDao.java |    3 +++
 src/main/java/com/xcong/excoin/utils/CalculateUtil.java                       |    3 ++-
 3 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/contract/dao/ContractHoldOrderDao.java b/src/main/java/com/xcong/excoin/modules/contract/dao/ContractHoldOrderDao.java
index aea43ac..d55bed5 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/dao/ContractHoldOrderDao.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/dao/ContractHoldOrderDao.java
@@ -6,6 +6,7 @@
 import org.apache.ibatis.annotations.Param;
 import org.web3j.abi.datatypes.Int;
 
+import java.math.BigDecimal;
 import java.util.HashMap;
 import java.util.List;
 
@@ -56,4 +57,6 @@
 
     public List<String> selectWholeHoldOrderSymbolsByMemberId(@Param("memberId") Long memberId);
 
+    public int updateForcePriceBySymbolAndMemberId(@Param("forcePrice") BigDecimal forcePrice, @Param("memberId") Long memberId, @Param("symbol") String symbol);
+
 }
diff --git a/src/main/java/com/xcong/excoin/utils/CalculateUtil.java b/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
index d687981..b02146a 100644
--- a/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
+++ b/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
@@ -128,7 +128,7 @@
                     profitOrLoss = profitOrLoss.add(calProfitOrLoss(holdOrderEntity, memberEntity));
                 }
 
-                log.info("{}, {}, {}, {}, {}, {}", totalBondAmount, symbolFeeAmount, symbolFeeAmount, openPrice, profitOrLoss, leverRatio);
+                log.info("{}, {}, {}, {}, {}, {}", totalBondAmount, symbolBondAmount, symbolFeeAmount, openPrice, profitOrLoss, leverRatio);
                 BigDecimal sub = walletContract.getTotalBalance().add(profitOrLoss).subtract(symbolFeeAmount).subtract(totalBondAmount);
                 log.info("sub -- {}", sub);
                 BigDecimal divide = sub.divide(symbolBondAmount, 8, BigDecimal.ROUND_DOWN);
@@ -138,6 +138,7 @@
 
                 BigDecimal forcePrice = openPrice.subtract(divide.multiply(divide2));
                 log.info("forcePrice -- {}", forcePrice);
+                holdOrderDao.updateForcePriceBySymbolAndMemberId(forcePrice, memberId, symbol);
             }
         }
     }
diff --git a/src/main/resources/mapper/contract/ContractHoldOrderDao.xml b/src/main/resources/mapper/contract/ContractHoldOrderDao.xml
index c5f1cd0..1884085 100644
--- a/src/main/resources/mapper/contract/ContractHoldOrderDao.xml
+++ b/src/main/resources/mapper/contract/ContractHoldOrderDao.xml
@@ -82,4 +82,10 @@
         from contract_hold_order
         where position_type=2 and member_id=#{memberId}
     </select>
+
+    <update id="updateForcePriceBySymbolAndMemberId">
+        update contract_hold_order
+        set force_closing_price=#{forcePrice}, is_can_closing=1
+        where member_id=#{memberId} and symbol=#{symbol}
+    </update>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1