From 6113e3d0e87f6dddb943f1a405128805fbebc089 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 08 Jan 2021 11:30:50 +0800
Subject: [PATCH] 20210108
---
src/main/resources/i18n/messages_zh_CN.properties | 3 +++
src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java | 15 +++++++++++++++
src/main/resources/mapper/documentary/FollowFollowerProfitDao.xml | 11 +++++++++++
src/main/java/com/xcong/excoin/modules/documentary/dto/UpdateTradeSetInfoDto.java | 4 ++--
src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java | 21 +++++++++++++++++++++
src/main/resources/i18n/messages_en_US.properties | 3 +++
src/main/java/com/xcong/excoin/modules/documentary/dao/FollowFollowerProfitDao.java | 2 ++
7 files changed, 57 insertions(+), 2 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 497edff..c0f0234 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
@@ -24,8 +24,10 @@
import com.xcong.excoin.modules.contract.parameter.vo.*;
import com.xcong.excoin.modules.contract.service.ContractHoldOrderService;
import com.xcong.excoin.modules.documentary.dao.FollowFollowerOrderRelationDao;
+import com.xcong.excoin.modules.documentary.dao.FollowFollowerProfitDao;
import com.xcong.excoin.modules.documentary.dao.FollowTraderInfoDao;
import com.xcong.excoin.modules.documentary.entity.FollowFollowerOrderRelationEntity;
+import com.xcong.excoin.modules.documentary.entity.FollowFollowerProfitEntity;
import com.xcong.excoin.modules.documentary.entity.FollowTraderInfoEntity;
import com.xcong.excoin.modules.member.dao.MemberDao;
import com.xcong.excoin.modules.member.dao.MemberLevelRateDao;
@@ -86,8 +88,12 @@
@Resource
private MemberDao memberDao;
+
@Resource
private MemberSettingDao memberSettingDao;
+
+ @Resource
+ private FollowFollowerProfitDao followFollowerProfitDao;
@Resource
private FollowTraderInfoDao followTraderInfoDao;
@@ -970,6 +976,15 @@
if (CollUtil.isNotEmpty(list) || CollUtil.isNotEmpty(entrustList)) {
return Result.fail("存在持仓/委托, 无法更改");
}
+
+ /**
+ * 验证用户是否存在跟随交易员
+ * 是:不允许切换成全仓模式
+ */
+ List<FollowFollowerProfitEntity> followFollowerProfitEntitys = followFollowerProfitDao.selectByMemberIdandIsFollow(member.getId(),FollowFollowerProfitEntity.IS_FOLLOW_Y);
+ if(CollUtil.isNotEmpty(followFollowerProfitEntitys)) {
+ return Result.fail(MessageSourceUtils.getString("documentary_service_0018"));
+ }
Integer positionType = member.getContractPositionType() == ContractEntrustOrderEntity.POSITION_TYPE_ADD ? ContractEntrustOrderEntity.POSITION_TYPE_ALL : ContractEntrustOrderEntity.POSITION_TYPE_ADD;
MemberEntity updateEntity = new MemberEntity();
diff --git a/src/main/java/com/xcong/excoin/modules/documentary/dao/FollowFollowerProfitDao.java b/src/main/java/com/xcong/excoin/modules/documentary/dao/FollowFollowerProfitDao.java
index eca6dc4..928dc29 100644
--- a/src/main/java/com/xcong/excoin/modules/documentary/dao/FollowFollowerProfitDao.java
+++ b/src/main/java/com/xcong/excoin/modules/documentary/dao/FollowFollowerProfitDao.java
@@ -43,4 +43,6 @@
BigDecimal selectAllFollowerProfit(@Param("tradeMemberId") Long tradeMemberId);
+ List<FollowFollowerProfitEntity> selectByMemberIdandIsFollow(@Param("id") Long id, @Param("isFollowY") Integer isFollowY);
+
}
diff --git a/src/main/java/com/xcong/excoin/modules/documentary/dto/UpdateTradeSetInfoDto.java b/src/main/java/com/xcong/excoin/modules/documentary/dto/UpdateTradeSetInfoDto.java
index 01b80cf..6112e6b 100644
--- a/src/main/java/com/xcong/excoin/modules/documentary/dto/UpdateTradeSetInfoDto.java
+++ b/src/main/java/com/xcong/excoin/modules/documentary/dto/UpdateTradeSetInfoDto.java
@@ -9,16 +9,16 @@
@Data
@ApiModel(value = "UpdateTradeSetInfoDto", description = "参数接受类")
public class UpdateTradeSetInfoDto {
- @NotNull
@ApiModelProperty("头像")
private String avatar;
@NotNull
+ @NotNull(message = "名称不能为空")
@ApiModelProperty("名称")
private String nickname;
@NotNull
@ApiModelProperty("是否开启带单 1是2否")
private int isOpen;
- @NotNull
+ @NotNull(message = "宣言不能为空")
@ApiModelProperty("宣言")
private String declaration;
diff --git a/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java b/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java
index 933c8e5..cb4d891 100644
--- a/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java
@@ -24,6 +24,7 @@
import com.xcong.excoin.modules.coin.parameter.dto.RecordsPageDto;
import com.xcong.excoin.modules.contract.dao.ContractHoldOrderDao;
import com.xcong.excoin.modules.contract.dao.ContractOrderDao;
+import com.xcong.excoin.modules.contract.entity.ContractEntrustOrderEntity;
import com.xcong.excoin.modules.contract.entity.ContractHoldOrderEntity;
import com.xcong.excoin.modules.contract.entity.ContractOrderEntity;
import com.xcong.excoin.modules.documentary.dao.FollowFollowerNoticeDao;
@@ -458,6 +459,20 @@
if (traderInfoEntity != null) {
return Result.fail(MessageSourceUtils.getString("documentary_service_0014"));
}
+
+ //判断当前用户是否是逐仓模式
+ MemberEntity selectById2 = memberDao.selectById(memberId);
+ Integer contractPositionType = selectById2.getContractPositionType();
+ if(ContractEntrustOrderEntity.POSITION_TYPE_ADD != contractPositionType) {
+ return Result.fail(MessageSourceUtils.getString("documentary_service_0017"));
+ }
+
+ //判断交易员是否开启了跟单
+ FollowTraderInfoEntity selectById = followTraderInfoDao.selectById(traderId);
+ Integer isOpen = selectById.getIsOpen();
+ if(FollowTraderInfoEntity.ISOPEN_Y != isOpen) {
+ return Result.fail(MessageSourceUtils.getString("documentary_service_0016"));
+ }
FollowFollowerSettingEntity isExistSetting = followFollowerSettingDao.selectOneBymemberIdAndTradeId(memberId, traderId);
if (isExistSetting == null) {
@@ -719,6 +734,8 @@
FollowTraderInfoEntity followTraderInfoEntity = followTraderInfoDao.selectTraderInfoByMemberId(memberId);
TradeSetInfoVo tradeSetInfoVo = new TradeSetInfoVo();
+ Long id = followTraderInfoEntity.getId();
+ tradeSetInfoVo.setTradeId(id);
String avatar = followTraderInfoEntity.getAvatar();
tradeSetInfoVo.setAvatar(avatar);
String nickname = followTraderInfoEntity.getNickname();
@@ -735,6 +752,10 @@
//获取用户ID
Long memberId = LoginUserUtils.getAppLoginUser().getId();
FollowTraderInfoEntity followTraderInfoEntity = followTraderInfoDao.selectTraderInfoByMemberId(memberId);
+ /**
+ * todo
+ * 当前交易员有合约多单,是否可以直接调整【是否带单】,是否需要在调整前【判断是否已经有带单的合约单】
+ */
String avatar = updateTradeSetInfoDto.getAvatar();
String nickname = updateTradeSetInfoDto.getNickname();
String declaration = updateTradeSetInfoDto.getDeclaration();
diff --git a/src/main/resources/i18n/messages_en_US.properties b/src/main/resources/i18n/messages_en_US.properties
index 300eeb3..add0045 100644
--- a/src/main/resources/i18n/messages_en_US.properties
+++ b/src/main/resources/i18n/messages_en_US.properties
@@ -227,6 +227,9 @@
documentary_service_0013=Please close the position after applying
documentary_service_0014=The current status cannot be followed
documentary_service_0015=Please cancel and apply again
+documentary_service_0016=The trader has been set not to follow orders
+documentary_service_0017=Please change the contract to separate margin mode
+documentary_service_0018=In documentary, cannot adjust to full position margin mode
uploadFile_controller_0001=Upload failed
diff --git a/src/main/resources/i18n/messages_zh_CN.properties b/src/main/resources/i18n/messages_zh_CN.properties
index 335a593..8fddc1f 100644
--- a/src/main/resources/i18n/messages_zh_CN.properties
+++ b/src/main/resources/i18n/messages_zh_CN.properties
@@ -227,6 +227,9 @@
documentary_service_0013=请平仓后,在申请
documentary_service_0014=当前状态不能进行跟单
documentary_service_0015=当前有跟单,请取消再申请
+documentary_service_0016=该交易员已设置不能跟单
+documentary_service_0017=请将合约修改为分仓保证金模式
+documentary_service_0018=正在跟单中,无法调整为全仓保证金模式
uploadFile_controller_0001=上传失败
diff --git a/src/main/resources/mapper/documentary/FollowFollowerProfitDao.xml b/src/main/resources/mapper/documentary/FollowFollowerProfitDao.xml
index 9978af7..545682b 100644
--- a/src/main/resources/mapper/documentary/FollowFollowerProfitDao.xml
+++ b/src/main/resources/mapper/documentary/FollowFollowerProfitDao.xml
@@ -1,6 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xcong.excoin.modules.documentary.dao.FollowFollowerProfitDao">
+
+ <select id="selectByMemberIdandIsFollow" resultType="com.xcong.excoin.modules.documentary.entity.FollowFollowerProfitEntity">
+ SELECT
+ *
+ FROM
+ follow_follower_profit
+ WHERE
+ member_id = #{id}
+ and is_follow = #{isFollowY}
+ order by create_time desc
+ </select>
<select id="selectFollowRecords" resultType="com.xcong.excoin.modules.documentary.vo.FollowRecordsVo">
SELECT
--
Gitblit v1.9.1