xiaoyong931011
2022-02-25 89b7fb1d316cfce7eb98a27c8d668da493933f7f
20222223
17 files modified
5 files added
730 ■■■■ changed files
src/main/java/com/xcong/excoin/common/enumerates/CoinTypeEnum.java 2 ●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/common/enumerates/SymbolEnum.java 2 ●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/controller/GbzOrderController.java 10 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/controller/ZhiyaController.java 110 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/service/ZhiyaService.java 28 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java 8 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java 11 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/service/impl/OrderCoinServiceImpl.java 2 ●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/coin/service/impl/ZhiyaServiceImpl.java 380 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java 44 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/dao/MemberDao.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberTeamRecordsPageDto.java 25 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberTeamVo.java 21 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/service/MemberService.java 15 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java 29 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/symbols/constants/SymbolsConstats.java 4 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/processor/DefaultCoinProcessor.java 2 ●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/quartz/job/ZhiyarRewardJob.java 6 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/rabbit/consumer/ExchangeConsumer.java 2 ●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/utils/CoinTypeConvert.java 12 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/websocket/TradePlateSendWebSocket.java 4 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/member/MemberDao.xml 8 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/common/enumerates/CoinTypeEnum.java
@@ -7,6 +7,6 @@
 */
public enum CoinTypeEnum {
//    USDT, BTC, ETH, LTC, EOS, XRP, BCH, ETC,BEA,GUSD,GOLDRICE,
    USDT, BTC, ETH, LTC, EOS, XRP, BCH, ETC,GOLDRICE,
    USDT, BTC, ETH, LTC, EOS, XRP, BCH, ETC,GRICE,
//    USDT, BTC, ETH, LTC, EOS, XRP, BCH, ETC,GUSD,GOLDRICE,
}
src/main/java/com/xcong/excoin/common/enumerates/SymbolEnum.java
@@ -9,7 +9,7 @@
public enum SymbolEnum {
//    BEA("BEA", "BEA/USDT")
//    ,GUSD("GUSD", "GUSD/USDT")
    GOLDRICE("GOLDRICE", "GOLDRICE/USDT")
    GRICE("GRICE", "GRICE/USDT")
    ,BTC("BTC", "BTC/USDT")
    ,ETH("ETH", "ETH/USDT")
    ,LTC("LTC", "LTC/USDT")
src/main/java/com/xcong/excoin/modules/coin/controller/GbzOrderController.java
@@ -74,7 +74,7 @@
        }
        if (Integer.parseInt(total) < gbzAddDto.getCount()) {
            return Result.fail("GOLDRICE数量不足");
            return Result.fail("GRICE数量不足");
        }
        GbzOrderEntity gbzOrder = new GbzOrderEntity();
@@ -82,14 +82,14 @@
        gbzOrder.setAmount(amount);
        gbzOrder.setCnt(gbzAddDto.getCount());
        gbzOrder.setMemberId(loginUser.getId());
        gbzOrder.setSymbol(CoinTypeEnum.GOLDRICE.name());
        gbzOrder.setSymbol(CoinTypeEnum.GRICE.name());
        gbzOrder.setStatus(1);
        gbzOrderDao.insert(gbzOrder);
        memberWalletCoinDao.updateBlockBalance(wallet.getId(), amount.negate(), BigDecimal.ZERO, 0);
        redisUtils.set("bea_coin_total", Integer.parseInt(total) - gbzAddDto.getCount());
        LogRecordUtils.insertMemberAccountMoneyChange(loginUser.getId(), "购买GOLDRICE", amount, "USDT", 1, 1);
        LogRecordUtils.insertMemberAccountMoneyChange(loginUser.getId(), "购买GRICE", amount, "USDT", 1, 1);
        return Result.ok("购买成功");
    }
@@ -144,11 +144,11 @@
        }
        MemberWalletCoinEntity wallet = memberWalletCoinDao.selectWalletCoinBymIdAndCode(member.getId(), CoinTypeEnum
                .GOLDRICE.name());
                .GRICE.name());
        memberWalletCoinDao.updateBlockBalance(wallet.getId(), totalAmount, BigDecimal.ZERO, 0);
        gbzOrderDao.updateStatus(member.getId());
        LogRecordUtils.insertMemberAccountMoneyChange(member.getId(), "提取GOLDRICE到资产", totalAmount, "GOLDRICE", 1, 1);
        LogRecordUtils.insertMemberAccountMoneyChange(member.getId(), "提取GRICE到资产", totalAmount, "GRICE", 1, 1);
        return Result.ok("提取成功");
    }
}
src/main/java/com/xcong/excoin/modules/coin/controller/ZhiyaController.java
New file
@@ -0,0 +1,110 @@
package com.xcong.excoin.modules.coin.controller;
import com.xcong.excoin.common.annotations.SubmitRepeat;
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.modules.coin.parameter.dto.*;
import com.xcong.excoin.modules.coin.parameter.vo.MemberGusdInfoVo;
import com.xcong.excoin.modules.coin.parameter.vo.UsdtToGusdVo;
import com.xcong.excoin.modules.coin.parameter.vo.ZhiyaInfoVo;
import com.xcong.excoin.modules.coin.parameter.vo.ZhiyaRewardVo;
import com.xcong.excoin.modules.coin.service.CoinService;
import com.xcong.excoin.modules.coin.service.ZhiyaService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.math.BigDecimal;
@Slf4j
@Api(value = "质押接口", tags = "质押接口")
@RestController
@RequestMapping(value = "/api/zhiya")
public class ZhiyaController {
    @Resource
    private ZhiyaService zhiyaService;
    /**
     * 获取GUSD账户信息
     */
    @ApiOperation(value="获取GUSD账户信息", notes="获取GUSD账户信息")
    @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberGusdInfoVo.class)})
    @GetMapping(value="/findMemberGusdInfo")
    public Result findMemberGusdInfo() {
        return zhiyaService.findMemberGusdInfo();
    }
    /**
     * USDT兌換成GUSD
     * @return
     */
    @ApiOperation(value="USDT兌換成GUSD", notes="USDT兌換成GUSD")
    @PostMapping(value="/usdtToGusd")
    @SubmitRepeat
    public Result  usdtToGusd(@RequestBody @Valid UsdtToGusdDto usdtToGusdDto) {
        BigDecimal balance = usdtToGusdDto.getBalance();
        Integer type = usdtToGusdDto.getType();
        return zhiyaService.usdtToGusd(balance,type);
    }
    /**
     *  获取兌換GUSD记录
     * @return
     */
    @ApiOperation(value="获取兌換GUSD记录", notes="获取兌換GUSD记录")
    @ApiResponses({@ApiResponse( code = 200, message = "success", response = UsdtToGusdVo.class)})
    @PostMapping(value="/getusdtToGusdRecords")
    public Result getusdtToGusdRecords(@RequestBody @Valid RecordsPageDto recordsPageDto) {
        return zhiyaService.getusdtToGusdRecords(recordsPageDto);
    }
    /**
     * 质押GUSD
     */
    @ApiOperation(value="质押GUSD", notes="质押GUSD")
    @PostMapping(value="/zhiYaGusd")
    @SubmitRepeat
    public Result  zhiYaGusd(@RequestBody @Valid ZhiYaGusdDto zhiYaGusdDto) {
        BigDecimal balance = zhiYaGusdDto.getBalance();
        return zhiyaService.zhiYaGusd(balance);
    }
    /**
     *  获取质押GUSD记录
     * @return
     */
    @ApiOperation(value="获取质押GUSD记录", notes="获取质押GUSD记录")
    @ApiResponses({@ApiResponse( code = 200, message = "success", response = ZhiyaInfoVo.class)})
    @PostMapping(value="/getZhiyaRecords")
    public Result  getZhiyaRecords(@RequestBody @Valid RecordsPageDto recordsPageDto) {
        return zhiyaService.getZhiyaRecords(recordsPageDto);
    }
    /**
     * 赎回GUSD
     */
    @ApiOperation(value="赎回GUSD", notes="赎回GUSD")
    @PostMapping(value="/shuhuiGusd")
    @SubmitRepeat
    public Result  shuhuiGusd(@RequestBody @Valid ShuhuiGusdDto shuhuiGusdDto) {
        BigDecimal balance = shuhuiGusdDto.getBalance();
        Long id = shuhuiGusdDto.getId();
        return zhiyaService.shuhuiGusd(balance,id);
    }
    /**
     *  获取质押GUSD奖励记录
     * @return
     */
    @ApiOperation(value="获取质押GUSD奖励记录", notes="获取质押GUSD奖励记录")
    @ApiResponses({@ApiResponse( code = 200, message = "success", response = ZhiyaRewardVo.class)})
    @PostMapping(value="/getZhiyaReward")
    public Result  getZhiyaReward(@RequestBody @Valid ZhiyaRewardRecordsPageDto recordsPageDto) {
        return zhiyaService.getZhiyaReward(recordsPageDto);
    }
}
src/main/java/com/xcong/excoin/modules/coin/service/ZhiyaService.java
New file
@@ -0,0 +1,28 @@
package com.xcong.excoin.modules.coin.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.modules.coin.entity.ZhiYaEntity;
import com.xcong.excoin.modules.coin.parameter.dto.RecordsPageDto;
import com.xcong.excoin.modules.coin.parameter.dto.ZhiyaRewardRecordsPageDto;
import java.math.BigDecimal;
public interface ZhiyaService extends IService<ZhiYaEntity> {
    Result usdtToGusd(BigDecimal balance, Integer type);
    Result zhiYaGusd(BigDecimal balance);
    Result shuhuiGusd(BigDecimal balance,Long id);
    Result findMemberGusdInfo();
    Result getZhiyaRecords(RecordsPageDto recordsPageDto);
    Result getusdtToGusdRecords(RecordsPageDto recordsPageDto);
    void grantZhiyaAmount();
    Result getZhiyaReward(ZhiyaRewardRecordsPageDto recordsPageDto);
}
src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java
@@ -470,7 +470,7 @@
        }
        Long memberId = memberCoinAddress.getMemberId();
        // 查询钱包 并更新
        MemberWalletCoinEntity walletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, CoinTypeEnum.GOLDRICE.name());
        MemberWalletCoinEntity walletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, CoinTypeEnum.GRICE.name());
        if (walletCoinEntity == null) {
            // 创建一个钱包
            // 创建这个钱包
@@ -486,15 +486,15 @@
        memberWalletCoinDao.updateBlockBalance(walletCoinEntity.getId(), balance, BigDecimal.ZERO, 0);
        String orderNo = insertCoinCharge(address, memberId, balance, CoinTypeEnum.GOLDRICE.name(), "", BigDecimal.ZERO, null);
        String orderNo = insertCoinCharge(address, memberId, balance, CoinTypeEnum.GRICE.name(), "", BigDecimal.ZERO, null);
        // 插入财务记录
        LogRecordUtils.insertMemberAccountMoneyChange(memberId, "转入", balance, CoinTypeEnum.GOLDRICE.name(), 1, 1);
        LogRecordUtils.insertMemberAccountMoneyChange(memberId, "转入", balance, CoinTypeEnum.GRICE.name(), 1, 1);
        try {
            ThreadPoolUtils.sendDingTalk(5);
            MemberEntity member = memberDao.selectById(memberId);
            if (StrUtil.isNotBlank(member.getPhone())) {
                String amount = balance.toPlainString() + "GOLDRICE";
                String amount = balance.toPlainString() + "GRICE";
                Sms106Send.sendRechargeMsg(member.getPhone(), DateUtil.format(new Date(), DatePattern.NORM_DATETIME_MINUTE_PATTERN), orderNo);
            } else {
                SubMailSend.sendRechargeMail(member.getEmail(), DateUtil.format(new Date(), DatePattern.NORM_DATETIME_MINUTE_PATTERN), orderNo);
src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java
@@ -150,7 +150,7 @@
            memberWalletCoinlist.add(coin);
//            coin.setWalletCode(CoinTypeEnum.GUSD.toString());
//            memberWalletCoinlist.add(coin);
            coin.setWalletCode(CoinTypeEnum.GOLDRICE.toString());
            coin.setWalletCode(CoinTypeEnum.GRICE.toString());
            memberWalletCoinlist.add(coin);
            MemberWalletCoinVo memberWalletCoinVo = new MemberWalletCoinVo();
@@ -774,6 +774,9 @@
//            zhiYaRecord.setEffectDate(newDate);
//            zhiYaRecordDao.updateById(zhiYaRecord);
//        }
        //更新团队算力表
        //只计算直属团队的算力信息
        return Result.ok(MessageSourceUtils.getString("member_service_0024"));
    }
@@ -864,7 +867,7 @@
    @Override
    @Transactional
    public void grantZhiyaAmount() {
        //获取每日总奖励
        //获取每日总产出
        BigDecimal gusdReward = new BigDecimal(redisUtils.getString("GUSDREWARD"));
        //获取每日质押总数
        Long totalGusd = zhiYaRecordDao.selectTotalGusdByStatueAndTime(1,new Date());
@@ -884,6 +887,10 @@
                    zhiyaRewardEntity.setMemberId(zhiYaRecordEntity.getMemberId());
                    zhiyaRewardEntity.setRewardAmout(divide.multiply(zhiYaRecordEntity.getZhiyaCnt()));
                    zhiyaRewardDao.insert(zhiyaRewardEntity);
                    //给团队上级发送奖励goldrice
                    //给账户的冻结
                }
            }
        }
src/main/java/com/xcong/excoin/modules/coin/service/impl/OrderCoinServiceImpl.java
@@ -809,7 +809,7 @@
    @Override
    public Result findAllWalletCoinOrder() {
        List<OrderCoinsDealEntity> orderCoinsDealEntities = orderCoinDealDao.selectAllCoinDealsOrderBySymbol(CoinTypeEnum.GOLDRICE.toString());
        List<OrderCoinsDealEntity> orderCoinsDealEntities = orderCoinDealDao.selectAllCoinDealsOrderBySymbol(CoinTypeEnum.GRICE.toString());
        return Result.ok(orderCoinsDealEntities);
    }
src/main/java/com/xcong/excoin/modules/coin/service/impl/ZhiyaServiceImpl.java
New file
@@ -0,0 +1,380 @@
package com.xcong.excoin.modules.coin.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.RandomUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.date.DateUtil;
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.LoginUserUtils;
import com.xcong.excoin.common.enumerates.MemberWalletCoinEnum;
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.modules.coin.dao.MemberAccountMoneyChangeDao;
import com.xcong.excoin.modules.coin.dao.ZhiYaDao;
import com.xcong.excoin.modules.coin.dao.ZhiYaRecordDao;
import com.xcong.excoin.modules.coin.dao.ZhiyaRewardDao;
import com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange;
import com.xcong.excoin.modules.coin.entity.ZhiYaEntity;
import com.xcong.excoin.modules.coin.entity.ZhiYaRecordEntity;
import com.xcong.excoin.modules.coin.entity.ZhiyaRewardEntity;
import com.xcong.excoin.modules.coin.parameter.dto.RecordsPageDto;
import com.xcong.excoin.modules.coin.parameter.dto.ZhiyaRewardRecordsPageDto;
import com.xcong.excoin.modules.coin.parameter.vo.MemberGusdInfoVo;
import com.xcong.excoin.modules.coin.parameter.vo.UsdtToGusdVo;
import com.xcong.excoin.modules.coin.parameter.vo.ZhiyaInfoVo;
import com.xcong.excoin.modules.coin.parameter.vo.ZhiyaRewardVo;
import com.xcong.excoin.modules.coin.service.ZhiyaService;
import com.xcong.excoin.modules.member.dao.MemberWalletCoinDao;
import com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity;
import com.xcong.excoin.utils.MessageSourceUtils;
import com.xcong.excoin.utils.RedisUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;
@Service
public class ZhiyaServiceImpl extends ServiceImpl<ZhiYaDao, ZhiYaEntity> implements ZhiyaService {
    @Resource
    MemberWalletCoinDao memberWalletCoinDao;
    @Resource
    MemberAccountMoneyChangeDao memberAccountMoneyChangeDao;
    @Resource
    ZhiYaRecordDao zhiYaRecordDao;
    @Resource
    ZhiyaRewardDao zhiyaRewardDao;
    @Resource
    ZhiYaDao zhiYaDao;
    @Resource
    RedisUtils redisUtils;
    @Override
    @Transactional
    public Result usdtToGusd(BigDecimal balance, Integer type) {
        //获取用户ID
        Long memberId = LoginUserUtils.getAppLoginUser().getId();
        if (balance.compareTo(BigDecimal.ZERO) <= 0) {
            return Result.fail(MessageSourceUtils.getString("member_service_0004"));
        }
        if(1 == type){
            // 扣币
            String walletCode = MemberWalletCoinEnum.WALLETCOINCODE.getValue();
            MemberWalletCoinEntity memberWalletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, walletCode);
            BigDecimal availableBalance = memberWalletCoinEntity.getAvailableBalance();
            BigDecimal totalBalance = memberWalletCoinEntity.getTotalBalance();
            BigDecimal available = availableBalance.subtract(balance);
            if (available.compareTo(BigDecimal.ZERO) < 0) {
                return Result.fail(MessageSourceUtils.getString("member_service_0005"));
            }
            BigDecimal total = totalBalance.subtract(balance);
            if (total.compareTo(BigDecimal.ZERO) < 0) {
                return Result.fail(MessageSourceUtils.getString("member_service_0005"));
            }
            memberWalletCoinEntity.setAvailableBalance(available);
            memberWalletCoinEntity.setTotalBalance(total);
            int i = memberWalletCoinDao.updateById(memberWalletCoinEntity);
            if (i < 1) {
                return Result.fail(MessageSourceUtils.getString("member_service_0096"));
            }
            //添加资金划转历史记录
            MemberAccountMoneyChange memberAccountRecord = new MemberAccountMoneyChange();
            //获取usdt兑换gusd的兑换比例
            BigDecimal usdtToGusd = new BigDecimal(redisUtils.getString("USDTTOGSD"));
            BigDecimal gusdBalance = balance.multiply(usdtToGusd);
            ZhiYaEntity zhiya = zhiYaDao.selectByMemberId(memberId);
            BigDecimal gusdAvailableBalance = zhiya.getAvailableBalance();
            BigDecimal gusdTotalBalance = zhiya.getTotalBalance();
            zhiya.setAvailableBalance(gusdAvailableBalance.add(gusdBalance));
            zhiya.setTotalBalance(gusdTotalBalance.add(gusdBalance));
            int updateById = zhiYaDao.updateById(zhiya);
            if (updateById < 1) {
                return Result.fail(MessageSourceUtils.getString("member_service_0096"));
            }
            //添加资金划转历史记录
            memberAccountRecord.setMemberId(memberId);
            memberAccountRecord.setStatus(MemberAccountMoneyChange.STATUS_SUCCESS_INTEGER);
            memberAccountRecord.setSymbol(walletCode);
            memberAccountRecord.setContent(MemberWalletCoinEnum.ZHIYATOGUSD.getValue());
            memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_COIN);
            memberAccountRecord.setAmount(gusdBalance);
            memberAccountMoneyChangeDao.insert(memberAccountRecord);
        }else if(2 == type){
            // 扣币
            ZhiYaEntity zhiya = zhiYaDao.selectByMemberId(memberId);
            BigDecimal availableBalance = zhiya.getAvailableBalance();
            BigDecimal totalBalance = zhiya.getTotalBalance();
            BigDecimal available = availableBalance.subtract(balance);
            if (available.compareTo(BigDecimal.ZERO) < 0) {
                return Result.fail(MessageSourceUtils.getString("member_service_0005"));
            }
            BigDecimal total = totalBalance.subtract(balance);
            if (total.compareTo(BigDecimal.ZERO) < 0) {
                return Result.fail(MessageSourceUtils.getString("member_service_0005"));
            }
            zhiya.setAvailableBalance(available);
            zhiya.setTotalBalance(total);
            int i = zhiYaDao.updateById(zhiya);
            if (i < 1) {
                return Result.fail(MessageSourceUtils.getString("member_service_0096"));
            }
            //添加资金划转历史记录
            MemberAccountMoneyChange memberAccountRecord = new MemberAccountMoneyChange();
            //获取usdt兑换gusd的兑换比例
            BigDecimal usdtToGusd = new BigDecimal(redisUtils.getString("USDTTOGSD"));
            BigDecimal usdtBalance = balance.divide(usdtToGusd);
            String walletCode = MemberWalletCoinEnum.WALLETCOINCODE.getValue();
            MemberWalletCoinEntity memberWalletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, walletCode);
            BigDecimal gusdAvailableBalance = memberWalletCoinEntity.getAvailableBalance();
            BigDecimal gusdTotalBalance = memberWalletCoinEntity.getTotalBalance();
            memberWalletCoinEntity.setAvailableBalance(gusdAvailableBalance.add(usdtBalance));
            memberWalletCoinEntity.setTotalBalance(gusdTotalBalance.add(usdtBalance));
            int updateById = memberWalletCoinDao.updateById(memberWalletCoinEntity);
            if (updateById < 1) {
                return Result.fail(MessageSourceUtils.getString("member_service_0096"));
            }
            //添加资金划转历史记录
            memberAccountRecord.setMemberId(memberId);
            memberAccountRecord.setStatus(MemberAccountMoneyChange.STATUS_SUCCESS_INTEGER);
            memberAccountRecord.setSymbol(walletCode);
            memberAccountRecord.setContent(MemberWalletCoinEnum.ZHIYATOUSDT.getValue());
            memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_COIN);
            memberAccountRecord.setAmount(usdtBalance);
            memberAccountMoneyChangeDao.insert(memberAccountRecord);
        }else{
            return  Result.fail("member_controller_0005");
        }
        return Result.ok(MessageSourceUtils.getString("member_service_0024"));
    }
        @Override
        @Transactional
        public Result zhiYaGusd(BigDecimal balance) {
            //获取用户ID
            Long memberId = LoginUserUtils.getAppLoginUser().getId();
            if (balance.compareTo(new BigDecimal(100)) < 0) {
                return Result.fail(MessageSourceUtils.getString("zhiya_service_0006"));
            }
            //质押Gusd,质押数量进入冻结余额,
            ZhiYaEntity zhiya = zhiYaDao.selectByMemberId(memberId);
            BigDecimal gusdAvailableBalance = zhiya.getAvailableBalance();
            BigDecimal gusdTotalBalance = zhiya.getTotalBalance();
            BigDecimal gusdfrozenBalance = zhiya.getFrozenBalance();
            BigDecimal available = gusdAvailableBalance.subtract(balance);
            if (available.compareTo(BigDecimal.ZERO) < 0) {
                return Result.fail(MessageSourceUtils.getString("zhiya_service_0005"));
            }
            BigDecimal total = gusdTotalBalance.subtract(balance);
            if (total.compareTo(BigDecimal.ZERO) < 0) {
                return Result.fail(MessageSourceUtils.getString("zhiya_service_0005"));
            }
            zhiya.setFrozenBalance(gusdfrozenBalance.add(balance));
            zhiya.setAvailableBalance(gusdAvailableBalance.subtract(balance));
            int updateById = zhiYaDao.updateById(zhiya);
            if (updateById < 1) {
                return Result.fail(MessageSourceUtils.getString("member_service_0096"));
            }
            //产生质押单,当前有的话,累加质押数量
    //        ZhiYaRecordEntity zhiYaRecord = zhiYaRecordDao.selectByMemberIdAndOrderStatus(memberId,1);
    //        if(ObjectUtil.isEmpty(zhiYaRecord)){
            //产生一条质押记录
            ZhiYaRecordEntity zhiYaRecordEntity = new ZhiYaRecordEntity();
            zhiYaRecordEntity.setMemberId(memberId);
            zhiYaRecordEntity.setOrderNo(generateSimpleSerialno(memberId.toString()));
            zhiYaRecordEntity.setSymbol(MemberWalletCoinEnum.WALLETGUSDCOINCODE.getValue());
            zhiYaRecordEntity.setZhiyaCnt(balance);
            zhiYaRecordEntity.setOrderStatus(1);
            Date date = new Date();
            Date newDate = DateUtil.offsetDay(date, 1);
            zhiYaRecordEntity.setEffectDate(newDate);
            zhiYaRecordDao.insert(zhiYaRecordEntity);
    //        }else{
    //            zhiYaRecord.setZhiyaCnt(zhiYaRecord.getZhiyaCnt().add(balance));
    //            Date date = new Date();
    //            Date newDate = DateUtil.offsetDay(date, 1);
    //            zhiYaRecord.setEffectDate(newDate);
    //            zhiYaRecordDao.updateById(zhiYaRecord);
    //        }
            //更新团队算力表
            //只计算直属团队的算力信息
            return Result.ok(MessageSourceUtils.getString("member_service_0024"));
        }
        @Override
        @Transactional
        public Result shuhuiGusd(BigDecimal balance,Long id) {
            //获取用户ID
            Long memberId = LoginUserUtils.getAppLoginUser().getId();
            if (balance.compareTo(BigDecimal.ZERO) <= 0) {
                return Result.fail(MessageSourceUtils.getString("zhiya_service_0004"));
            }
            //赎回Gusd,获取质押单据,
            ZhiYaRecordEntity zhiYaRecordEntity = zhiYaRecordDao.selectByIdAndMemberId(id,memberId);
            if(ObjectUtil.isEmpty(zhiYaRecordEntity)){
                return Result.fail(MessageSourceUtils.getString("zhiya_service_0002"));
            }
            if(1 != zhiYaRecordEntity.getOrderStatus()){
                return Result.fail(MessageSourceUtils.getString("zhiya_service_0003"));
            }
            BigDecimal zhiyaCnt = zhiYaRecordEntity.getZhiyaCnt();
            if(balance.compareTo(zhiyaCnt) > 0){
                return Result.fail(MessageSourceUtils.getString("zhiya_service_0004"));
            }
    //        zhiYaRecordEntity.setZhiyaCnt(zhiyaCnt.subtract(balance));
            if(zhiyaCnt.compareTo(balance) != 0){
                return Result.fail(MessageSourceUtils.getString("zhiya_service_0001"));
            }
            zhiYaRecordEntity.setOrderStatus(2);
            zhiYaRecordDao.updateById(zhiYaRecordEntity);
            //赎回Gusd,质押数量进入可用余额,
            ZhiYaEntity zhiya = zhiYaDao.selectByMemberId(memberId);
            BigDecimal gusdAvailableBalance = zhiya.getAvailableBalance();
            BigDecimal gusdTotalBalance = zhiya.getTotalBalance();
            BigDecimal gusdfrozenBalance = zhiya.getFrozenBalance();
            BigDecimal frozen = gusdfrozenBalance.subtract(balance);
            if (frozen.compareTo(BigDecimal.ZERO) < 0) {
                return Result.fail(MessageSourceUtils.getString("zhiya_service_0001"));
            }
            BigDecimal total = gusdTotalBalance.subtract(balance);
            if (total.compareTo(BigDecimal.ZERO) < 0) {
                return Result.fail(MessageSourceUtils.getString("member_service_0005"));
            }
            zhiya.setFrozenBalance(gusdfrozenBalance.subtract(balance));
            zhiya.setAvailableBalance(gusdAvailableBalance.add(balance));
            zhiYaDao.updateById(zhiya);
            return Result.ok(MessageSourceUtils.getString("member_service_0024"));
        }
        @Override
        public Result findMemberGusdInfo() {
            //获取用户ID
            Long memberId = LoginUserUtils.getAppLoginUser().getId();
            ZhiYaEntity zhiYaEntity = zhiYaDao.selectByMemberId(memberId);
            MemberGusdInfoVo memberGusdInfoVo = new MemberGusdInfoVo();
            memberGusdInfoVo.setMemberId(memberId);
            memberGusdInfoVo.setFrozenBalance(zhiYaEntity.getFrozenBalance());
            memberGusdInfoVo.setTotalBalance(zhiYaEntity.getTotalBalance());
            memberGusdInfoVo.setAvailableBalance(zhiYaEntity.getAvailableBalance());
            return Result.ok(memberGusdInfoVo);
        }
        @Override
        public Result getZhiyaRecords(RecordsPageDto recordsPageDto) {
            //获取用户ID
            Long memberId = LoginUserUtils.getAppLoginUser().getId();
            Page<ZhiyaInfoVo> page = new Page<>(recordsPageDto.getPageNum(), recordsPageDto.getPageSize());
            ZhiYaEntity zhiya = new ZhiYaEntity();
            zhiya.setMemberId(memberId);
            IPage<ZhiyaInfoVo> lists = zhiYaRecordDao.selectByMemberIdInPage(page, zhiya);
            return Result.ok(lists);
        }
        @Override
        public Result getusdtToGusdRecords(RecordsPageDto recordsPageDto) {
            //获取用户ID
            Long memberId = LoginUserUtils.getAppLoginUser().getId();
            Page<UsdtToGusdVo> page = new Page<>(recordsPageDto.getPageNum(), recordsPageDto.getPageSize());
            MemberAccountMoneyChange memberAccountMoneyChange = new MemberAccountMoneyChange();
            memberAccountMoneyChange.setMemberId(memberId);
            IPage<UsdtToGusdVo> lists = memberAccountMoneyChangeDao.selectByMemberIdInPage(page, memberAccountMoneyChange);
            return Result.ok(lists);
        }
        @Override
        @Transactional
        public void grantZhiyaAmount() {
            //获取每日总产出
            BigDecimal gusdReward = new BigDecimal(redisUtils.getString("GUSDREWARD"));
            //获取每日质押总数
            Long totalGusd = zhiYaRecordDao.selectTotalGusdByStatueAndTime(1,new Date());
            BigDecimal totalGusdBigDecimal = new BigDecimal(totalGusd);
            if(totalGusdBigDecimal.compareTo(BigDecimal.ZERO) > 0){
                //平均一个获取奖励数量
                BigDecimal divide = gusdReward.divide(totalGusdBigDecimal,2, BigDecimal.ROUND_HALF_UP);
                //获取今天之前满足发放奖励的全部质押单
                //生效时间小于当前时间
                //状态为生效中
                List<ZhiYaRecordEntity> lists = zhiYaRecordDao.selectZhiYaRewardByStatueAndTime(1,new Date());
                if(CollUtil.isNotEmpty(lists)){
                    for(ZhiYaRecordEntity zhiYaRecordEntity : lists){
                        ZhiyaRewardEntity zhiyaRewardEntity = new ZhiyaRewardEntity();
                        zhiyaRewardEntity.setRecordId(zhiYaRecordEntity.getId());
                        zhiyaRewardEntity.setRecordNo(zhiYaRecordEntity.getOrderNo());
                        zhiyaRewardEntity.setMemberId(zhiYaRecordEntity.getMemberId());
                        zhiyaRewardEntity.setRewardAmout(divide.multiply(zhiYaRecordEntity.getZhiyaCnt()));
                        zhiyaRewardDao.insert(zhiyaRewardEntity);
                        //给团队上级发送奖励goldrice
                        //给账户的冻结
                    }
                }
            }
        }
        @Override
        public Result getZhiyaReward(ZhiyaRewardRecordsPageDto recordsPageDto) {
            //获取用户ID
            Long memberId = LoginUserUtils.getAppLoginUser().getId();
            Page<ZhiyaRewardVo> page = new Page<>(recordsPageDto.getPageNum(), recordsPageDto.getPageSize());
            ZhiyaRewardEntity zhiyaRewardEntity = new ZhiyaRewardEntity();
            zhiyaRewardEntity.setMemberId(memberId);
            zhiyaRewardEntity.setRecordNo(recordsPageDto.getOrderNo());
            IPage<ZhiyaRewardVo> lists = zhiYaRecordDao.selectZhiyaRewardByMemberIdInPage(page, zhiyaRewardEntity);
            return Result.ok(lists);
        }
        public String generateSimpleSerialno(String userId) {
            StringBuilder sb = new StringBuilder();
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            SimpleDateFormat sd = new SimpleDateFormat("yyyyMMdd");
            Date now = new Date();
            sb.append(sd.format(now));
            Calendar calendar = new GregorianCalendar();
            calendar.setTime(now);
            calendar.add(calendar.DATE, 1);
            Date nextDate = calendar.getTime();
            if (StrUtil.isNotEmpty(userId)) {
                sb.append(userId);
            }
            sb.append(RandomUtil.randomInt(2));
            long count = zhiYaRecordDao.getOrderCountByToday(sdf.format(now), sdf.format(nextDate));
            count++;
            int size = 4;
            for (int i = 0; i < size - String.valueOf(count).length(); i++) {
                sb.append("0");
            }
            sb.append(count);
            return sb.toString();
        }
}
src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java
@@ -3,33 +3,13 @@
import javax.annotation.Resource;
import javax.validation.Valid;
import com.xcong.excoin.modules.coin.parameter.dto.RecordsPageDto;
import com.xcong.excoin.modules.member.parameter.dto.*;
import com.xcong.excoin.modules.member.parameter.vo.*;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.modules.member.parameter.dto.MemberAddCoinAddressDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberAuthenticationDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberBindEmailDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberBindPhoneDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberDelCoinAddressDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberDelPaymethodDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberForgetPwdDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberPaymethodDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberSubmitCoinApplyDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberUpdatePwdDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradePwdDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradersPwdTimeDto;
import com.xcong.excoin.modules.member.parameter.vo.AppVersionListVo;
import com.xcong.excoin.modules.member.parameter.vo.MemberAuthenticationInfoVo;
import com.xcong.excoin.modules.member.parameter.vo.MemberAvivableCoinInfoVo;
import com.xcong.excoin.modules.member.parameter.vo.MemberCoinAddressCountListVo;
import com.xcong.excoin.modules.member.parameter.vo.MemberCoinAddressListVo;
import com.xcong.excoin.modules.member.parameter.vo.MemberCoinInfoListVo;
import com.xcong.excoin.modules.member.parameter.vo.MemberInfoVo;
import com.xcong.excoin.modules.member.parameter.vo.MemberPaymethodDetailListVo;
import com.xcong.excoin.modules.member.parameter.vo.MemberPaymethodDetailVo;
import com.xcong.excoin.modules.member.parameter.vo.MemberPersonCenterInfoVo;
import com.xcong.excoin.modules.member.parameter.vo.MemberSendCodeWayVo;
import com.xcong.excoin.modules.member.service.MemberService;
import io.swagger.annotations.Api;
@@ -178,9 +158,6 @@
    
    /**
     * 设置交易密码    
     * @param code
     * @param password
     * @param token
     * @return
     */
    @ApiOperation(value="设置交易密码", notes="设置交易密码")
@@ -334,8 +311,6 @@
    
    /**
     *     提币币种可用资金
     * @param token
     * @param coinVo
     * @return
     */
    @ApiOperation(value = "提币币种可用资金", notes = "提币币种可用资金")
@@ -350,8 +325,6 @@
    
    /**
     *     提币申请
     * @param token
     * @param coinVo
     * @return
     */
    @ApiOperation(value="提交提币申请", notes="提交提币申请")
@@ -360,5 +333,16 @@
        return Result.fail("暂未开放提币");
//        return memberService.memberSubmitCoinApply(memberSubmitCoinApplyDto);
    }
    /**
     * 我的直属团队
     * @return
     */
    @ApiOperation(value = "我的直属团队", notes = "我的直属团队")
    @ApiResponses({@ApiResponse( code = 200, message = "success", response = MemberTeamVo.class)})
    @PostMapping(value="/memberTeam")
    public Result  memberTeam(@RequestBody @Valid MemberTeamRecordsPageDto memberTeamRecordsPageDto) {
        return memberService.memberTeam(memberTeamRecordsPageDto);
    }
    
}
src/main/java/com/xcong/excoin/modules/member/dao/MemberDao.java
@@ -1,8 +1,12 @@
package com.xcong.excoin.modules.member.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xcong.excoin.modules.coin.parameter.vo.ZhiyaInfoVo;
import com.xcong.excoin.modules.member.entity.MemberEntity;
import com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity;
import com.xcong.excoin.modules.member.parameter.vo.MemberTeamVo;
import com.xcong.excoin.modules.member.parameter.vo.NeedMoneyMemberVo;
import org.apache.ibatis.annotations.Param;
@@ -21,4 +25,5 @@
    public List<NeedMoneyMemberVo> selectAllNeedMoneyMember(@Param("list") List<String> list);
    IPage<MemberTeamVo> selectAllTeamByInviteIdInPage(Page<MemberTeamVo> page, @Param("record")MemberEntity memberEntity);
}
src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberTeamRecordsPageDto.java
New file
@@ -0,0 +1,25 @@
package com.xcong.excoin.modules.member.parameter.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
@Data
@ApiModel(value = "MemberTeamRecordsPageDto", description = "参数接受类")
public class MemberTeamRecordsPageDto {
//    @NotNull(message = "编号不能为空")
//    @ApiModelProperty(value = "编号", example = "1")
//    private String orderNo;
    @NotNull
    @Min(1)
    @ApiModelProperty(value = "第几页", example = "1")
    private int pageNum;
    @NotNull
    @ApiModelProperty(value = "每页数量", example = "10")
    private int pageSize;
}
src/main/java/com/xcong/excoin/modules/member/parameter/vo/MemberTeamVo.java
New file
@@ -0,0 +1,21 @@
package com.xcong.excoin.modules.member.parameter.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
@ApiModel(value = "MemberTeamVo", description = "返回参数")
public class MemberTeamVo {
    @ApiModelProperty(value = "账号")
    private String account;
    @ApiModelProperty(value = "注册时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
}
src/main/java/com/xcong/excoin/modules/member/service/MemberService.java
@@ -6,18 +6,7 @@
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.common.system.dto.RegisterDto;
import com.xcong.excoin.modules.member.entity.MemberEntity;
import com.xcong.excoin.modules.member.parameter.dto.MemberAddCoinAddressDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberAuthenticationDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberBindEmailDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberBindPhoneDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberDelCoinAddressDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberDelPaymethodDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberForgetPwdDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberPaymethodDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberSubmitCoinApplyDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberUpdatePwdDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradePwdDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradersPwdTimeDto;
import com.xcong.excoin.modules.member.parameter.dto.*;
import com.xcong.excoin.modules.member.parameter.vo.NeedMoneyMemberVo;
import org.apache.ibatis.annotations.Param;
@@ -90,5 +79,5 @@
    public Result getPcVersionInfo();
    Result memberTeam(MemberTeamRecordsPageDto memberTeamRecordsPageDto);
}
src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
@@ -5,6 +5,8 @@
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
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.LoginUserUtils;
import com.xcong.excoin.common.contants.AppContants;
@@ -17,20 +19,10 @@
import com.xcong.excoin.modules.coin.dao.ZhiYaDao;
import com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange;
import com.xcong.excoin.modules.coin.entity.ZhiYaEntity;
import com.xcong.excoin.modules.coin.parameter.vo.ZhiyaInfoVo;
import com.xcong.excoin.modules.member.dao.*;
import com.xcong.excoin.modules.member.entity.*;
import com.xcong.excoin.modules.member.parameter.dto.MemberAddCoinAddressDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberAuthenticationDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberBindEmailDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberBindPhoneDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberDelCoinAddressDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberDelPaymethodDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberForgetPwdDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberPaymethodDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberSubmitCoinApplyDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberUpdatePwdDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradePwdDto;
import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradersPwdTimeDto;
import com.xcong.excoin.modules.member.parameter.dto.*;
import com.xcong.excoin.modules.member.parameter.vo.*;
import com.xcong.excoin.modules.member.service.MemberService;
import com.xcong.excoin.modules.platform.dao.PlatformFeeSettingDao;
@@ -1033,6 +1025,19 @@
        }
        return Result.ok(arrayList);
    }
    @Override
    public Result memberTeam(MemberTeamRecordsPageDto memberTeamRecordsPageDto) {
        //获取用户ID
        Long memberId = LoginUserUtils.getAppLoginUser().getId();
        MemberEntity member = memberDao.selectById(memberId);
        Page<MemberTeamVo> page = new Page<>(memberTeamRecordsPageDto.getPageNum(), memberTeamRecordsPageDto.getPageSize());
        MemberEntity memberEntity = new MemberEntity();
        memberEntity.setId(memberId);
        memberEntity.setInviteId(member.getInviteId());
        IPage<MemberTeamVo> lists = memberDao.selectAllTeamByInviteIdInPage(page, memberEntity);
        return Result.ok(lists);
    }
}
src/main/java/com/xcong/excoin/modules/symbols/constants/SymbolsConstats.java
@@ -5,8 +5,8 @@
public class SymbolsConstats {
    public final  static List<String> EXCHANGE_SYMBOLS = new ArrayList<>();
    public final  static String ROC = "GOLDRICE";
    public final  static String ROC = "GRICE";
    static {
        EXCHANGE_SYMBOLS.add("GOLDRICE");
        EXCHANGE_SYMBOLS.add("GRICE");
    }
}
src/main/java/com/xcong/excoin/processor/DefaultCoinProcessor.java
@@ -382,7 +382,7 @@
            kLine.setLow(kLine.getClose());
            kLine.setHigh(kLine.getClose());
            kLine.setVolume(BigDecimal.ZERO);
            redisUtils.set("GOLDRICE/USDT",kLine);
            redisUtils.set("GRICE/USDT",kLine);
        }
    }
src/main/java/com/xcong/excoin/quartz/job/ZhiyarRewardJob.java
@@ -1,6 +1,6 @@
package com.xcong.excoin.quartz.job;
import com.xcong.excoin.modules.coin.service.CoinService;
import com.xcong.excoin.modules.coin.service.ZhiyaService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@@ -16,7 +16,7 @@
    @Resource
    private CoinService coinService;
    private ZhiyaService zhiyaService;
    /**
     * 质押奖励计算
@@ -25,7 +25,7 @@
    public void updateDoingPrice() {
        log.info("#质押奖励计算#");
        try {
            coinService.grantZhiyaAmount();
            zhiyaService.grantZhiyaAmount();
        } catch (Exception e) {
            log.error("#质押奖励计算错误#", e);
        }
src/main/java/com/xcong/excoin/rabbit/consumer/ExchangeConsumer.java
@@ -52,7 +52,7 @@
    @RabbitListener(queues = RabbitMqConfig.QUEUE_TRADE_PLATE)
    public void tradePlate(String content) {
        //log.info("--发送盘口消息--");
        tradePlateSendWebSocket.sendMessagePlate("GOLDRICE/USDT",content,null);
        tradePlateSendWebSocket.sendMessagePlate("GRICE/USDT",content,null);
    }
    /**
src/main/java/com/xcong/excoin/utils/CoinTypeConvert.java
@@ -22,8 +22,8 @@
                return "EOS/USDT";
            case "etcusdt":
                return "ETC/USDT";
            case "goldriceusdt":
                return "GOLDRICE/USDT";
            case "griceusdt":
                return "GRICE/USDT";
            default:
                return null;
        }
@@ -33,8 +33,8 @@
        switch (symbol) {
            case "BTC/USDT":
                return "btcusdt";
            case "GOLDRICE/USDT":
                return "goldriceusdt";
            case "GRICE/USDT":
                return "griceusdt";
            default:
                return null;
        }
@@ -56,8 +56,8 @@
                return "EOS_NEW_PRICE";
            case "ETC/USDT":
                return "ETC_NEW_PRICE";
            case "GOLDRICE/USDT":
                return "GOLDRICE_NEW_PRICE";
            case "GRICE/USDT":
                return "GRICE_NEW_PRICE";
            default:
                return null;
        }
src/main/java/com/xcong/excoin/websocket/TradePlateSendWebSocket.java
@@ -98,7 +98,7 @@
            // 发送订阅消息
            String nekk = factory.getTrader(SymbolsConstats.ROC).sendTradePlateMessage();
            SubResultModel subResultModel = new SubResultModel();
            subResultModel.setId("goldriceusdt");
            subResultModel.setId("griceusdt");
            subResultModel.setSubbed(sub);
            synchronized (session) {
                try {
@@ -220,7 +220,7 @@
            String key = "KINE_{}_{}";
            // 币币k线数据
            //key = StrUtil.format(key, symbol, period);
            key = StrUtil.format(key, "GOLDRICE/USDT", period);
            key = StrUtil.format(key, "GRICE/USDT", period);
            RedisUtils bean = SpringContextHolder.getBean(RedisUtils.class);
            Object o = bean.get(key);
            List<CandlestickModel> candlestickModels = new ArrayList<>();
src/main/resources/mapper/member/MemberDao.xml
@@ -44,4 +44,12 @@
            #{item}
        </foreach >
    </select>
    <select id="selectAllTeamByInviteIdInPage" resultType="com.xcong.excoin.modules.member.parameter.vo.MemberTeamVo">
        SELECT
        m.phone account,
        m.create_time createTime
        FROM member m where m.referer_id = #{record.inviteId}
        order by m.create_time desc
    </select>
</mapper>