From ebb754075f9fd70e214b2938d8ef90acf8d6f747 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 26 Aug 2020 15:13:33 +0800
Subject: [PATCH] modify
---
src/main/java/com/xcong/excoin/modules/contract/dao/ContractEntrustOrderDao.java | 2 ++
src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractEntrustOrderServiceImpl.java | 15 +++++++++++++++
src/main/resources/mapper/contract/ContractEntrustOrderDao.xml | 5 +++++
3 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/contract/dao/ContractEntrustOrderDao.java b/src/main/java/com/xcong/excoin/modules/contract/dao/ContractEntrustOrderDao.java
index b342596..fc247b6 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/dao/ContractEntrustOrderDao.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/dao/ContractEntrustOrderDao.java
@@ -22,4 +22,6 @@
public List<ContractEntrustOrderEntity> selectAllEntrustOrder();
public List<ContractEntrustOrderEntity> selectMemberEntrustOrderByPositionType(@Param("positionType") Integer positionType, @Param("memberId") Long memberId);
+
+ public List<ContractEntrustOrderEntity> selectEntrustOrderByOrderNo(@Param("orderNo") String orderNo);
}
diff --git a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractEntrustOrderServiceImpl.java b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractEntrustOrderServiceImpl.java
index 4e673e5..ca87cc2 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractEntrustOrderServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractEntrustOrderServiceImpl.java
@@ -1,5 +1,6 @@
package com.xcong.excoin.modules.contract.service.impl;
+import cn.hutool.core.collection.CollUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xcong.excoin.common.LoginUserUtils;
@@ -293,6 +294,20 @@
return Result.fail("可平张数不足");
}
+ List<ContractEntrustOrderEntity> entrustOrders = contractEntrustOrderDao.selectEntrustOrderByOrderNo(holdOrderEntity.getOrderNo());
+ if (CollUtil.isNotEmpty(entrustOrders)) {
+ int entrustCnt = 0;
+ for (ContractEntrustOrderEntity entrustOrder : entrustOrders) {
+ entrustCnt += entrustOrder.getSymbolCnt();
+ }
+
+
+ if (submitCloseEntrustDto.getSymbolCnt() > holdOrderEntity.getSymbolCntSale() - entrustCnt) {
+ return Result.fail("当前存在多个委托,无法提交该数量委托");
+ }
+ }
+
+
// 获取最新价
BigDecimal newPrice = new BigDecimal(redisUtils.getString(CoinTypeConvert.convertToKey(holdOrderEntity.getSymbol())));
diff --git a/src/main/resources/mapper/contract/ContractEntrustOrderDao.xml b/src/main/resources/mapper/contract/ContractEntrustOrderDao.xml
index c3b3435..5ba66a5 100644
--- a/src/main/resources/mapper/contract/ContractEntrustOrderDao.xml
+++ b/src/main/resources/mapper/contract/ContractEntrustOrderDao.xml
@@ -36,4 +36,9 @@
select * from contract_entrust_order
where position_type=#{positionType} and member_id=#{memberId}
</select>
+
+ <select id="selectEntrustOrderByOrderNo" resultType="com.xcong.excoin.modules.contract.entity.ContractEntrustOrderEntity">
+ select * from contract_entrust_order
+ where order_no=#{orderNo}
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.9.1