From 7db3689070adf273d1d23487eeccb327c33b1ab8 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Sun, 31 May 2020 19:23:39 +0800
Subject: [PATCH] modify

---
 src/main/java/com/xcong/excoin/common/system/controller/CommonController.java |    2 +-
 src/main/java/com/xcong/excoin/utils/CalculateUtil.java                       |   48 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 49 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java b/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java
index ad88fe5..690549b 100644
--- a/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java
+++ b/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java
@@ -93,7 +93,7 @@
     }
 
     @ApiOperation(value = "文件上次接口", notes = "文件上传")
-    @GetMapping(value = "/uploadFile")
+    @GetMapping(value = "/uploadFileBase64")
     public Result uploadFileBase64(@RequestBody @Validated Base64UploadDto uploadDto) {
         String imageName = "uploadeFile/image/" + System.currentTimeMillis() + IdUtil.simpleUUID() + AppContants.UPLOAD_IMAGE_SUFFIX;
 
diff --git a/src/main/java/com/xcong/excoin/utils/CalculateUtil.java b/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
new file mode 100644
index 0000000..0551a28
--- /dev/null
+++ b/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
@@ -0,0 +1,48 @@
+package com.kebex.common;
+
+import java.math.BigDecimal;
+
+import com.kebex.app.entity.member.Member;
+import com.kebex.app.entity.trade.TradeSetting;
+import com.kebex.common.cache.TradeSettingCache;
+
+public class CaculateUtil {
+	
+	/**
+	 * 计算预估强平价
+	 * 
+	 * @param prePrice        保证金
+	 * @param openPrice       开仓价
+	 * @param symbolSkuNumber 张数
+	 * @param lotNumber       规格
+	 * @param type            1:买多2:卖空
+	 * @return
+	 */
+	public static BigDecimal getForceSetPrice(Double prePrice, Double openPrice, Long symbolSkuNumber, BigDecimal lotNumber,
+			int type,Member member) {
+		TradeSettingCache tradeSettingCache = WebUtil.getApplicationContext().getBean(TradeSettingCache.class);
+		BigDecimal forcePrice = BigDecimal.ZERO;
+		if (type == 2) {//卖空
+			forcePrice = new BigDecimal(prePrice)
+					.divide(new BigDecimal(symbolSkuNumber).multiply(lotNumber),8,BigDecimal.ROUND_DOWN)
+					.add(new BigDecimal(openPrice));
+			if(member.getIsProfit() == 1) {
+				TradeSetting tradeSetting = tradeSettingCache.getTradeSetting();
+				//预估强平价 = 预估强平价-预估强平价*系数
+				forcePrice = forcePrice.subtract(forcePrice.multiply(new BigDecimal(tradeSetting.getForceParam())));
+			}
+		} else {//开多
+			forcePrice = new BigDecimal(openPrice).subtract(new BigDecimal(prePrice)
+					.divide(new BigDecimal(symbolSkuNumber).multiply(lotNumber),8,BigDecimal.ROUND_DOWN));
+			if(member.getIsProfit() == 1) {
+				TradeSetting tradeSetting = tradeSettingCache.getTradeSetting();
+				//预估强平价 = 预估强平价-预估强平价*系数
+				forcePrice = forcePrice.add(forcePrice.multiply(new BigDecimal(tradeSetting.getForceParam())));
+			}
+		}
+		if(forcePrice.compareTo(BigDecimal.ZERO)<0) {
+			forcePrice = BigDecimal.ZERO;
+		}
+		return forcePrice;
+	}
+}

--
Gitblit v1.9.1