From cf200a1f92c01ba22c326c49391f748ffb006910 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 05 Jul 2021 17:28:35 +0800
Subject: [PATCH] 20210617 开售开关
---
src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java | 45 ++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 44 insertions(+), 1 deletions(-)
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 8767b38..5872b91 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
@@ -6,6 +6,8 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
@@ -70,6 +72,11 @@
List<FollowTraderInfoEntity> records = followTraderInfoEntitys.getRecords();
if(CollUtil.isNotEmpty(records)) {
for(FollowTraderInfoEntity followTraderInfo : records) {
+ //获取当前跟单人数
+ Long traderId = followTraderInfo.getId();
+ String followNowNumString = followTraderInfoMapper.selectFollowNowBytraderId(traderId);
+ followTraderInfo.setFollowNumNow(followNowNumString);
+
Long memberId = followTraderInfo.getMemberId();
Map<String, Object> columnMap = new HashMap<>();
columnMap.put("member_id", memberId);
@@ -151,6 +158,7 @@
memberMapper.updateById(memberEntity);
//更新【交易员信息表】数据
selectById.setProfitRatio(profitRatio);
+ selectById.setEntryTime(new Date());
selectById.setVerifyStatus(FollowTraderInfoEntity.VERIFYSTATUS_Y);
followTraderInfoMapper.updateById(selectById);
//新增【交易员收益信息 】数据
@@ -173,6 +181,7 @@
redisUtils.set("app_" + token, JSONObject.toJSONString(memberEntity), 36000);
}else {
//更新【交易员信息表】数据
+ selectById.setEntryTime(new Date());
selectById.setVerifyStatus(FollowTraderInfoEntity.VERIFYSTATUS_N);
followTraderInfoMapper.updateById(selectById);
}
@@ -258,12 +267,46 @@
if(profitRatio.compareTo(BigDecimal.ZERO) < 0 || profitRatio.compareTo(BigDecimal.ONE) >= 0){
return new FebsResponse().fail().message("利润率设置规则:只允许0到1之间的小数");
}
+ //最大跟随人数
+ boolean matches = isMatches(modifyProfitRatioDto.getFollowNum());
+ if(!matches) {
+ return new FebsResponse().fail().message("最大跟随人数只能输入正整数");
+ }
+ Integer followNum = Integer.parseInt(modifyProfitRatioDto.getFollowNum());
+ if(ObjectUtil.isEmpty(followNum) || followNum == 0) {
+ return new FebsResponse().fail().message("最大跟随人数不能为0");
+ }
+
+ String followNumNow = followTraderInfoMapper.selectFollowNowBytraderId(id);
+ int parseInt = Integer.parseInt(followNumNow);
+ if(parseInt > followNum){
+ return new FebsResponse().fail().message("请填写大于当前跟随人数"+parseInt+"的整数");
+ }
//更新【交易员信息表】数据
selectById.setProfitRatio(profitRatio);
- selectById.setVerifyStatus(FollowTraderInfoEntity.VERIFYSTATUS_Y);
+ selectById.setFollowNum(followNum);
followTraderInfoMapper.updateById(selectById);
return new FebsResponse().success();
}
+
+ public boolean isMatches(String bot){
+ boolean flag=false;
+ try{
+ String regex="^[1-9]+[0-9]*$";
+ //^[1-9]+\\d*$
+ Pattern p=Pattern.compile(regex);
+ Matcher m=p.matcher(bot);
+ if(m.find()){
+ System.out.println("successss");
+ return true;
+ }else{
+ System.out.println("falsss");
+ }
+ }catch(Exception e){
+ e.printStackTrace();
+ }
+ return flag;
+ }
@Override
public FebsResponse traderGetOn(@NotNull(message = "{required}") Long id) {
--
Gitblit v1.9.1