From 829f629756e5402bcd3e9f6ef1f9c6dbffbabb11 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Wed, 17 Apr 2024 14:46:29 +0800
Subject: [PATCH] 55测试环境

---
 src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java |   32 ++++++++++++++++++++++++--------
 1 files changed, 24 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java
index 1c3431f..c3f9a97 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java
@@ -15,6 +15,7 @@
 import com.xcong.excoin.common.enumerates.RabbitPriceTypeEnum;
 import com.xcong.excoin.common.response.Result;
 import com.xcong.excoin.common.system.service.CommonService;
+import com.xcong.excoin.modules.coin.service.CoinService;
 import com.xcong.excoin.modules.contract.dao.ContractEntrustOrderDao;
 import com.xcong.excoin.modules.contract.dao.ContractHoldOrderDao;
 import com.xcong.excoin.modules.contract.dao.ContractOrderDao;
@@ -108,6 +109,9 @@
     @Autowired
     private FollowProducer followProducer;
 
+    @Autowired
+    private CoinService coinService;
+
     @Transactional(rollbackFor = Exception.class)
     @Override
     public Result submitOrder(SubmitOrderDto submitOrderDto) {
@@ -121,6 +125,14 @@
         	return Result.loading("loading_type");
         }
 
+        BigDecimal total = coinService.getAllWalletAmount(memberIdLong);
+        Map<String, Object> data = new HashMap<>();
+        if (total.compareTo(AppContants.BASE_MIN_AMOUNT) > 0) {
+            data.put("baseUrl", AppContants.BASE_URL_L2);
+        } else {
+            data.put("baseUrl", AppContants.BASE_URL_L1);
+        }
+
         // 判断当前对应的持仓/委托
         if (memberEntity.getContractPositionType() == ContractEntrustOrderEntity.POSITION_TYPE_ADD) {
             List<ContractHoldOrderEntity> holdList = contractHoldOrderDao.selectMemberHoldOrderByPositionType(ContractEntrustOrderEntity.POSITION_TYPE_ALL, memberEntity.getId());
@@ -130,7 +142,9 @@
             }
 
             // 逐仓逻辑
-            return doPositionTypeForAdd(submitOrderDto, memberEntity);
+            Result result = doPositionTypeForAdd(submitOrderDto, memberEntity);
+            result.setData(data);
+            return result;
         } else {
             List<ContractHoldOrderEntity> holdList = contractHoldOrderDao.selectMemberHoldOrderByPositionType(ContractEntrustOrderEntity.POSITION_TYPE_ADD, memberEntity.getId());
             List<ContractEntrustOrderEntity> entrustList = contractEntrustOrderDao.selectMemberEntrustOrderByPositionType(ContractEntrustOrderEntity.POSITION_TYPE_ADD, memberEntity.getId());
@@ -139,7 +153,9 @@
             }
 
             // 全仓逻辑
-            return doPositionTypeForWhole(submitOrderDto, memberEntity);
+            Result result = doPositionTypeForWhole(submitOrderDto, memberEntity);
+            result.setData(data);
+            return result;
         }
 
     }
@@ -531,7 +547,7 @@
                 holdOrderListVo.setReturnRate(returnRate);
                 holdOrderListVo.setProfitOrLoss(rewardRatio);
                 if (ContractEntrustOrderEntity.POSITION_TYPE_ALL == memberEntity.getContractPositionType()) {
-                    BigDecimal forcePrice = CalculateUtil.calWholePriceTwo(memberEntity, holdOrderEntity);
+                    BigDecimal forcePrice = CalculateUtil.calWholePriceTwo(memberEntity, holdOrderEntity, 1);
 //                    contractHoldOrderDao.updateForcePriceBySymbolAndMemberId(forcePrice, memberEntity.getId(), holdOrderEntity.getSymbol());
                     holdOrderListVo.setForceClosingPrice(forcePrice);
                 }
@@ -853,7 +869,7 @@
             sendOrderBombMsg(holdOrderEntity.getId(), holdOrderEntity.getOpeningType(), forceClosingPrice, holdOrderEntity.getSymbol(), holdOrderEntity.getOperateNo(), holdOrderEntity.getMemberId());
 
             if (ContractOrderEntity.CONTRACTTYPE_DOCUMENTARY == holdOrderEntity.getContractType()) {
-                followProducer.sendChangeFollowOrderBond(holdOrderEntity.getId(), changeBondDto.getAmount(), changeBondDto.getType());
+                followProducer.sendChangeFollowOrderBond(changeBondDto);
             }
             return Result.ok("调整成功");
         }
@@ -1169,10 +1185,10 @@
                     // 发送爆仓消息
                     sendOrderBombMsg(holdOrderEntity.getId(), holdOrderEntity.getOpeningType(), newForcePrice, holdOrderEntity.getSymbol(), holdOrderEntity.getOperateNo(), holdOrderEntity.getMemberId());
                 } else {
-                    holdOrderEntity.setHoldAmount(holdAmount);
-                    contractHoldOrderDao.updateById(holdOrderEntity);
-                    memberWalletContractDao.increaseWalletContractBalanceById(thisTimeHold.negate(), thisTimeHold.negate(), null, wallet.getId());
-                    ThreadPoolUtils.sendWholePrice(holdOrderEntity.getMemberId());
+//                    holdOrderEntity.setHoldAmount(holdAmount);
+//                    contractHoldOrderDao.updateById(holdOrderEntity);
+//                    memberWalletContractDao.increaseWalletContractBalanceById(thisTimeHold.negate(), thisTimeHold.negate(), null, wallet.getId());
+//                    ThreadPoolUtils.sendWholePrice(holdOrderEntity.getMemberId());
                 }
             }
         }

--
Gitblit v1.9.1