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