package com.xcong.excoin.modules.yunding.service.impl;
|
|
import cn.hutool.core.collection.CollUtil;
|
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.QueryRequest;
|
import com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity;
|
import com.xcong.excoin.modules.member.mapper.MemberWalletCoinMapper;
|
import com.xcong.excoin.modules.yunding.entity.BasicSettingEntity;
|
import com.xcong.excoin.modules.yunding.entity.YdOrderEntity;
|
import com.xcong.excoin.modules.yunding.entity.YdProductEntity;
|
import com.xcong.excoin.modules.yunding.mapper.BasicSettingMapper;
|
import com.xcong.excoin.modules.yunding.service.IBasicSettingService;
|
import com.xcong.excoin.modules.yunding.vo.YdMemberVo;
|
import lombok.RequiredArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.math.BigDecimal;
|
import java.util.List;
|
|
@Slf4j
|
@Service
|
@RequiredArgsConstructor
|
public class BasicSettingServiceImpl extends ServiceImpl<BasicSettingMapper, BasicSettingEntity> implements IBasicSettingService {
|
|
@Resource
|
private BasicSettingMapper basicSettingMapper;
|
@Resource
|
private MemberWalletCoinMapper memberWalletCoinMapper;
|
|
@Override
|
public IPage<YdOrderEntity> getOrderList(YdOrderEntity ydOrderEntity, QueryRequest request) {
|
log.info("订单列表");
|
Page<YdOrderEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
|
IPage<YdOrderEntity> ydOrderEntitys = basicSettingMapper.getOrderList(page, ydOrderEntity);
|
return ydOrderEntitys;
|
}
|
|
@Override
|
public IPage<YdProductEntity> getYdProductList(YdProductEntity ydProductEntity, QueryRequest request) {
|
log.info("产品列表");
|
Page<YdProductEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
|
IPage<YdProductEntity> ydProductEntitys = basicSettingMapper.getYdProductList(page, ydProductEntity);
|
return ydProductEntitys;
|
}
|
|
@Override
|
public IPage<YdMemberVo> getYdMemberList(YdOrderEntity ydOrderEntity, QueryRequest request) {
|
log.info("会员算力查询");
|
Page<YdMemberVo> page = new Page<>(request.getPageNum(), request.getPageSize());
|
IPage<YdMemberVo> ydMemberVos = basicSettingMapper.getYdMemberList(page, ydOrderEntity);
|
List<YdMemberVo> records = ydMemberVos.getRecords();
|
if(CollUtil.isNotEmpty(records)){
|
for(YdMemberVo ydMemberVo : records){
|
long memberId = ydMemberVo.getId();
|
int quantityReady = basicSettingMapper.selectPowerByMemberIdAndState(memberId,YdOrderEntity.ORDER_STATE_READY);
|
ydMemberVo.setQuantityReady(quantityReady);
|
int quantityWork = basicSettingMapper.selectPowerByMemberIdAndState(memberId,YdOrderEntity.ORDER_STATE_WORK);
|
ydMemberVo.setQuantityWork(quantityWork);
|
int quantityEnd = basicSettingMapper.selectPowerByMemberIdAndState(memberId,YdOrderEntity.ORDER_STATE_END);
|
ydMemberVo.setQuantityEnd(quantityEnd);
|
BigDecimal totalUsed = basicSettingMapper.selectAmountByMemberId(memberId);
|
ydMemberVo.setTotalUsed(totalUsed);
|
MemberWalletCoinEntity memberWalletCoinEntity = memberWalletCoinMapper.findWalletCoinByMemberIdAndWalletCode(memberId, "USDT");
|
ydMemberVo.setAvailableBalance(memberWalletCoinEntity.getAvailableBalance());
|
BigDecimal inBalance = basicSettingMapper.selectChargeAmountByMemberIdAndStatus(memberId,1);
|
ydMemberVo.setInBalance(inBalance);
|
BigDecimal outBalance = basicSettingMapper.selectWithdrawAmountByMemberIdAndStatusAndIsInside(memberId,2,"N");
|
ydMemberVo.setOutBalance(outBalance);
|
}
|
}
|
return ydMemberVos;
|
}
|
}
|