From 6fe3cad50de41d90aa1f28ce9e44a54f4c690e7c Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Sat, 20 Feb 2021 17:54:00 +0800 Subject: [PATCH] fix --- src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java | 95 ++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 89 insertions(+), 6 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 6b9f140..f9bc1ca 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,12 +1,16 @@ 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; @@ -15,20 +19,23 @@ 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.FollowFollowerProfitEntity; import com.xcong.excoin.modules.documentary.entity.FollowTraderInfoEntity; +import com.xcong.excoin.modules.documentary.entity.FollowTraderLabelEntity; import com.xcong.excoin.modules.documentary.entity.FollowTraderProfitInfoEntity; +import com.xcong.excoin.modules.documentary.mapper.FollowFollowerProfitMapper; import com.xcong.excoin.modules.documentary.mapper.FollowTraderInfoMapper; +import com.xcong.excoin.modules.documentary.mapper.FollowTraderLabelMapper; 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; import com.xcong.excoin.modules.member.mapper.MemberAuthenticationMapper; import com.xcong.excoin.modules.member.mapper.MemberMapper; -import com.xcong.excoin.modules.member.vo.MemberAuthenticationVo; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -39,11 +46,17 @@ private final FollowTraderInfoMapper followTraderInfoMapper; + private final FollowFollowerProfitMapper followFollowerProfitMapper; + + private final FollowTraderLabelMapper followTraderLabelMapper; + private final MemberAuthenticationMapper memberAuthenticationMapper; private final MemberMapper memberMapper; private final FollowTraderProfitInfoMapper followTraderProfitInfoMapper; + + private final RedisUtils redisUtils; @Override public IPage<FollowTraderInfoEntity> findTraderListInPage(FollowTraderInfoEntity followTraderInfoEntity, @@ -108,13 +121,13 @@ @Override @Transactional - public FebsResponse traderConfirm(@Valid FollowTraderInfoEntity followTraderInfoEntity) { - Long id = followTraderInfoEntity.getId(); + 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 = followTraderInfoEntity.getIsok(); + String isok = followTraderInfoDto.getIsok(); if("1".equals(isok)) { //更新【会员信息表】数据 Long memberId = selectById.getMemberId(); @@ -129,6 +142,10 @@ 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); @@ -137,7 +154,10 @@ followTraderProfitInfoEntity.setWinRate(BigDecimal.ZERO); followTraderProfitInfoEntity.setTotalFollowerCnt(BigDecimal.ZERO); followTraderProfitInfoEntity.setTotalOrderCnt(BigDecimal.ZERO); - followTraderProfitInfoMapper.updateById(followTraderProfitInfoEntity); + followTraderProfitInfoMapper.insert(followTraderProfitInfoEntity); + + String token = redisUtils.getString("app_" + memberEntity.getId()); + redisUtils.set("app_" + token, JSONObject.toJSONString(memberEntity), 36000); }else { //更新【交易员信息表】数据 selectById.setVerifyStatus(FollowTraderInfoEntity.VERIFYSTATUS_N); @@ -146,4 +166,67 @@ return new FebsResponse().success(); } + @Override + @Transactional + 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(); + + Map<String, Object> columnMap = new HashMap<>(); + columnMap.put("trade_member_id", memberId); + List<FollowFollowerProfitEntity> selectByMap = followFollowerProfitMapper.selectByMap(columnMap); + if(CollUtil.isNotEmpty(selectByMap)) { + for(FollowFollowerProfitEntity FollowFollowerProfitEntity : selectByMap ) { + FollowFollowerProfitEntity.setIsFollow(FollowFollowerProfitEntity.IS_FOLLOW_N); + followFollowerProfitMapper.updateById(FollowFollowerProfitEntity); + } + } + followTraderInfoEntity.setVerifyStatus(FollowTraderInfoEntity.VERIFYSTATUS_N); + followTraderInfoMapper.updateById(followTraderInfoEntity); + 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(); + } + + @Override + public IPage<FollowTraderLabelEntity> traderLabelList(FollowTraderLabelEntity followTraderLabelEntity, + QueryRequest request) { + Page<FollowTraderLabelEntity> page = new Page<>(request.getPageNum(), request.getPageSize()); + IPage<FollowTraderLabelEntity> followTraderLabelEntitys = followTraderLabelMapper.findFollowTraderLabelEntitysInPage(page, followTraderLabelEntity); + return followTraderLabelEntitys; + } + + @Override + public FebsResponse traderLabelDelete(@NotNull(message = "{required}") Long id) { + followTraderLabelMapper.deleteById(id); + return new FebsResponse().success(); + } + + @Override + public void followLabelSetAdd(@Valid FollowTraderLabelEntity followTraderLabelEntity) { + + followTraderLabelMapper.insert(followTraderLabelEntity); + } + + @Override + public void followLabelSetUpdate(@Valid FollowTraderLabelEntity followTraderLabelEntity) { + followTraderLabelMapper.updateById(followTraderLabelEntity); + } + } -- Gitblit v1.9.1