From a312eefe49dd7850a86fb1954beac22a5c42d59c Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 28 Aug 2020 19:05:09 +0800
Subject: [PATCH] modify

---
 src/main/java/com/xcong/excoin/utils/CalculateUtil.java |   17 +++++++++--------
 1 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/utils/CalculateUtil.java b/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
index 55c9d91..4aa9299 100644
--- a/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
+++ b/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
@@ -105,26 +105,27 @@
             int type = 1;
             BigDecimal feeAmount = BigDecimal.ZERO;
             BigDecimal sku = BigDecimal.ZERO;
-            boolean flag = false;
 
             for (ContractHoldOrderEntity holdOrderEntity : holdOrderEntities) {
-                if (holdOrderEntity.getSymbolCntSale() == maxCnt) {
-                    flag = true;
-                    return;
+                if (maxCnt == 0) {
+                    maxCnt = holdOrderEntity.getSymbolCntSale();
+                    subCnt = holdOrderEntity.getSymbolCntSale();
+                    type = holdOrderEntity.getOpeningType();
+                    openPrice = holdOrderEntity.getOpeningPrice();
                 }
 
-                if (holdOrderEntity.getSymbolCntSale() > maxCnt) {
+                if (holdOrderEntity.getSymbolCntSale() >= maxCnt) {
+                    int temp = maxCnt;
                     maxCnt = holdOrderEntity.getSymbolCntSale();
-                    subCnt = holdOrderEntity.getSymbolCntSale() - maxCnt;
+                    subCnt = holdOrderEntity.getSymbolCntSale() - temp;
                     openPrice = holdOrderEntity.getOpeningPrice();
                     type = holdOrderEntity.getOpeningType();
                 }
-
                 feeAmount = feeAmount.add(holdOrderEntity.getOpeningFeeAmount());
                 sku = holdOrderEntity.getSymbolSku();
             }
             BigDecimal forceSetPrice = BigDecimal.ZERO;
-            if (!flag) {
+            if (subCnt != 0) {
                 log.info("{}, {}, {}, {}, {}", openPrice, subCnt, sku, type, maxCnt);
                 forceSetPrice = getForceSetPrice(walletContract.getTotalBalance().subtract(feeAmount), openPrice, subCnt, sku, type, memberEntity);
             }

--
Gitblit v1.9.1