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); } 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()))); 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>