From f214809a43aa8c1d1c2a6b65942be623aefb720b Mon Sep 17 00:00:00 2001
From: zainali5120 <512061637@qq.com>
Date: Thu, 08 Oct 2020 13:59:46 +0800
Subject: [PATCH] ROC提币
---
src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java | 86 +++++++++++++++++++++++++++++++++++++++++-
1 files changed, 83 insertions(+), 3 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 7558ac8..f11773c 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
@@ -1,20 +1,29 @@
package com.xcong.excoin.modules.documentary.service.impl;
+import java.math.BigDecimal;
+import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.validation.Valid;
+import javax.validation.constraints.NotNull;
+import com.alibaba.fastjson.JSONObject;
+import com.xcong.excoin.common.utils.RedisUtils;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xcong.excoin.common.entity.FebsResponse;
import com.xcong.excoin.common.entity.QueryRequest;
+import com.xcong.excoin.modules.documentary.dto.FollowTraderInfoDto;
import com.xcong.excoin.modules.documentary.entity.FollowTraderInfoEntity;
+import com.xcong.excoin.modules.documentary.entity.FollowTraderProfitInfoEntity;
import com.xcong.excoin.modules.documentary.mapper.FollowTraderInfoMapper;
+import com.xcong.excoin.modules.documentary.mapper.FollowTraderProfitInfoMapper;
import com.xcong.excoin.modules.documentary.service.DocumentaryService;
import com.xcong.excoin.modules.member.entity.MemberAuthenticationEntity;
import com.xcong.excoin.modules.member.entity.MemberEntity;
@@ -22,6 +31,7 @@
import com.xcong.excoin.modules.member.mapper.MemberMapper;
import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ObjectUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -35,6 +45,10 @@
private final MemberAuthenticationMapper memberAuthenticationMapper;
private final MemberMapper memberMapper;
+
+ private final FollowTraderProfitInfoMapper followTraderProfitInfoMapper;
+
+ private final RedisUtils redisUtils;
@Override
public IPage<FollowTraderInfoEntity> findTraderListInPage(FollowTraderInfoEntity followTraderInfoEntity,
@@ -98,9 +112,75 @@
}
@Override
- public FebsResponse traderConfirm(@Valid FollowTraderInfoEntity followTraderInfoEntity) {
- // TODO Auto-generated method stub
- return null;
+ @Transactional
+ public FebsResponse traderConfirm(@Valid FollowTraderInfoDto followTraderInfoDto) {
+ Long id = followTraderInfoDto.getId();
+ FollowTraderInfoEntity selectById = followTraderInfoMapper.selectById(id);
+ if(ObjectUtil.isEmpty(selectById)) {
+ return new FebsResponse().fail().message("交易员信息不存在");
+ }
+ String isok = followTraderInfoDto.getIsok();
+ if("1".equals(isok)) {
+ //更新【会员信息表】数据
+ Long memberId = selectById.getMemberId();
+ MemberEntity memberEntity = memberMapper.selectById(memberId);
+ if(ObjectUtil.isEmpty(memberEntity)) {
+ return new FebsResponse().fail().message("会员信息不存在");
+ }
+ memberEntity.setIsTrader(1);
+ memberMapper.updateById(memberEntity);
+ //更新【交易员信息表】数据
+ selectById.setVerifyStatus(FollowTraderInfoEntity.VERIFYSTATUS_Y);
+ followTraderInfoMapper.updateById(selectById);
+ //新增【交易员收益信息 】数据
+ FollowTraderProfitInfoEntity followTraderProfitInfoEntity = new FollowTraderProfitInfoEntity();
+ followTraderProfitInfoEntity.setCreateBy("system");
+ followTraderProfitInfoEntity.setCreateTime(new Date());
+ followTraderProfitInfoEntity.setUpdateBy("system");
+ followTraderProfitInfoEntity.setUpdateTime(new Date());
+ followTraderProfitInfoEntity.setMemberId(memberId);
+ followTraderProfitInfoEntity.setTraderId(selectById.getId());
+ followTraderProfitInfoEntity.setTotalProfitRatio(BigDecimal.ZERO);
+ followTraderProfitInfoEntity.setTotalProfit(BigDecimal.ZERO);
+ followTraderProfitInfoEntity.setFollowerTotalProfit(BigDecimal.ZERO);
+ followTraderProfitInfoEntity.setWinRate(BigDecimal.ZERO);
+ followTraderProfitInfoEntity.setTotalFollowerCnt(BigDecimal.ZERO);
+ followTraderProfitInfoEntity.setTotalOrderCnt(BigDecimal.ZERO);
+ followTraderProfitInfoMapper.insert(followTraderProfitInfoEntity);
+
+ String token = redisUtils.getString("app_" + memberEntity.getId());
+ redisUtils.set("app_" + token, JSONObject.toJSONString(memberEntity), 36000);
+ }else {
+ //更新【交易员信息表】数据
+ selectById.setVerifyStatus(FollowTraderInfoEntity.VERIFYSTATUS_N);
+ followTraderInfoMapper.updateById(selectById);
+ }
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse traderGetOut(@NotNull(message = "{required}") Long id) {
+ FollowTraderInfoEntity followTraderInfoEntity = followTraderInfoMapper.selectById(id);
+ if(ObjectUtil.isEmpty(followTraderInfoEntity)) {
+ return new FebsResponse().fail().message("交易员信息不存在");
+ }
+ Long memberId = followTraderInfoEntity.getMemberId();
+ MemberEntity memberEntity = memberMapper.selectById(memberId);
+ memberEntity.setIsTrader(2);
+ memberMapper.updateById(memberEntity);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ @Transactional
+ public FebsResponse traderGetFull(@NotNull(message = "{required}") Long id) {
+ FollowTraderInfoEntity followTraderInfoEntity = followTraderInfoMapper.selectById(id);
+ if(ObjectUtil.isEmpty(followTraderInfoEntity)) {
+ return new FebsResponse().fail().message("交易员信息不存在");
+ }
+ followTraderInfoEntity.setIsAll(1);
+ followTraderInfoMapper.updateById(followTraderInfoEntity);
+ return new FebsResponse().success();
}
}
--
Gitblit v1.9.1