xiaoyong931011
2021-03-22 50b2901ecf5aa6ec3823265a51397a37ade2f0d7
src/main/java/com/xcong/excoin/modules/trademanage/service/impl/TradeManageServiceImpl.java
@@ -6,11 +6,17 @@
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Service;
import javax.validation.constraints.NotNull;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
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.common.utils.CoinTypeConvert;
import com.xcong.excoin.common.utils.RedisUtils;
@@ -30,9 +36,11 @@
import com.xcong.excoin.modules.trademanage.mapper.MemberWalletAgentMapper;
import com.xcong.excoin.modules.trademanage.service.TradeManageService;
import com.xcong.excoin.modules.trademanage.vo.MemberAccountInfoVo;
import com.xcong.excoin.modules.trademanage.vo.PositionSettingVo;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import lombok.RequiredArgsConstructor;
@Service
@@ -1162,6 +1170,49 @@
      }
      return findMemberAccountInfoListInPage;
   }
   @Override
   public IPage<PositionSettingVo> getPositionSettingList(MemberEntity memberEntity, QueryRequest request) {
      Page<PositionSettingVo> page = new Page<>(request.getPageNum(), request.getPageSize());
      IPage<PositionSettingVo> positionSettingVoIPage = contractHoldOrderMapper.getPositionSettingList(page, memberEntity);
      if(StrUtil.isNotEmpty(memberEntity.getAccounts())) {
         positionSettingVoIPage = contractHoldOrderMapper.getPositionSettingsList(page, memberEntity);
      }
      List<PositionSettingVo> records = positionSettingVoIPage.getRecords();
      if(records != null && records.size() > 0) {
         for(PositionSettingVo positionSettingVo : records) {
            Long memberId = positionSettingVo.getId();
            //当前持仓总盈亏
            BigDecimal sumRewardAmount = contractHoldOrderMapper.selectRewardAmountBymemberId(memberId);
            positionSettingVo.setSumRewardAmount(sumRewardAmount);
         }
      }
      return positionSettingVoIPage;
   }
   @Override
   @Transactional
   public FebsResponse disagreePositionSetting(@NotNull(message = "{required}") Long id) {
      MemberEntity memberEntity = memberMapper.selectById(id);
      if(ObjectUtil.isEmpty(memberEntity)) {
         return new FebsResponse().fail().message("会员信息不存在");
      }
      memberEntity.setPcState(MemberEntity.PCSTATE_N);
      memberMapper.updateById(memberEntity);
      return new FebsResponse().success();
   }
   @Override
   public FebsResponse agreePositionSetting(@NotNull(message = "{required}") Long id) {
      MemberEntity memberEntity = memberMapper.selectById(id);
      if(ObjectUtil.isEmpty(memberEntity)) {
         return new FebsResponse().fail().message("会员信息不存在");
      }
      memberEntity.setPcState(MemberEntity.PCSTATE_Y);
      memberMapper.updateById(memberEntity);
      return new FebsResponse().success();
   }