KKSU
2024-05-11 71756c5945f5174f53302b127e4ea5e437f8d53b
测试新
8 files modified
675 ■■■■ changed files
src/main/java/cc/mrbird/febs/job/BnbTransferJob.java 94 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/job/ChainListenerJob.java 133 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/job/MatrixResetJob.java 22 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/job/RedisLinkHoldJob.java 9 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java 172 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/rabbit/consumer/ChainConsumer.java 130 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/rabbit/producer/ChainProducer.java 99 ●●●● patch | view | raw | blame | history
src/main/resources/application-dev.yml 16 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/job/BnbTransferJob.java
@@ -1,19 +1,11 @@
package cc.mrbird.febs.job;
import cc.mrbird.febs.dapp.entity.DappAKlineEntity;
import cc.mrbird.febs.dapp.entity.DappMemberEntity;
import cc.mrbird.febs.dapp.mapper.DappAKlineMapper;
import cc.mrbird.febs.dapp.service.DappSystemService;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.math.BigDecimal;
import java.util.Set;
@Slf4j
@Component
@@ -27,48 +19,48 @@
    private DappAKlineMapper dappAKlineMapper;
//    @Scheduled(cron = "0 0 0 * * ?")
    @Scheduled(cron = "0 0 2 * * ?")
    public void memberPerk() {
        /**
         * 加速团队静态收益的70%(业绩全算)
         * 加速团队静态收益为极差制,平级10%
         * 如V1加速团队静态收益的15%=每日静态的20000*6‰*15%=18元的额外释放加速
         * 共享区加速万分之5,上限1.8%(按本金计)
         */
        dappSystemService.teamStaticPerk();
        /**
         * 每天按照消费金额的5‰静释放(千分之五的静态释放比例)
         * (按购买顺序结算,同时有5个订单就有结算记录)
         * (设置多少,全部按照最新的来释放)
         */
        dappSystemService.memberPerk();
        /**
         * 直推消费分享:享受直接分享人每日消费金额释放的100%加速;
         */
        dappSystemService.directMemberPerk();
        /**
         * 实际更新账户业绩余额和积分
         */
        Set<DappMemberEntity> dappMemberEntities = dappSystemService.updateAchieve();
        if(CollUtil.isNotEmpty(dappMemberEntities)){
            /**
             * 奖励;团队产生的收益1%奖励积分,对标价格
             */
            dappSystemService.updatePackage(dappMemberEntities);
        }
    }
    @Scheduled(cron = "0 0 0/4 * * ?")
    public void klineUpdate() {
        DappAKlineEntity dappAKlineEntity = new DappAKlineEntity();
        dappAKlineEntity.setType(2);
        DappAKlineEntity dappAKlineOld = dappAKlineMapper.selectOneHourByType();
        if(ObjectUtil.isEmpty(dappAKlineOld)){
            dappAKlineEntity.setOpenPrice(BigDecimal.ZERO);
        }else{
            dappAKlineEntity.setOpenPrice(dappAKlineOld.getOpenPrice());
        }
        dappAKlineMapper.insert(dappAKlineEntity);
    }
//    @Scheduled(cron = "0 0 2 * * ?")
//    public void memberPerk() {
//        /**
//         * 加速团队静态收益的70%(业绩全算)
//         * 加速团队静态收益为极差制,平级10%
//         * 如V1加速团队静态收益的15%=每日静态的20000*6‰*15%=18元的额外释放加速
//         * 共享区加速万分之5,上限1.8%(按本金计)
//         */
//        dappSystemService.teamStaticPerk();
//        /**
//         * 每天按照消费金额的5‰静释放(千分之五的静态释放比例)
//         * (按购买顺序结算,同时有5个订单就有结算记录)
//         * (设置多少,全部按照最新的来释放)
//         */
//        dappSystemService.memberPerk();
//        /**
//         * 直推消费分享:享受直接分享人每日消费金额释放的100%加速;
//         */
//        dappSystemService.directMemberPerk();
//        /**
//         * 实际更新账户业绩余额和积分
//         */
//        Set<DappMemberEntity> dappMemberEntities = dappSystemService.updateAchieve();
//        if(CollUtil.isNotEmpty(dappMemberEntities)){
//            /**
//             * 奖励;团队产生的收益1%奖励积分,对标价格
//             */
//            dappSystemService.updatePackage(dappMemberEntities);
//        }
//    }
//
//    @Scheduled(cron = "0 0 0/4 * * ?")
//    public void klineUpdate() {
//        DappAKlineEntity dappAKlineEntity = new DappAKlineEntity();
//        dappAKlineEntity.setType(2);
//        DappAKlineEntity dappAKlineOld = dappAKlineMapper.selectOneHourByType();
//        if(ObjectUtil.isEmpty(dappAKlineOld)){
//            dappAKlineEntity.setOpenPrice(BigDecimal.ZERO);
//        }else{
//            dappAKlineEntity.setOpenPrice(dappAKlineOld.getOpenPrice());
//        }
//        dappAKlineMapper.insert(dappAKlineEntity);
//    }
}
src/main/java/cc/mrbird/febs/job/ChainListenerJob.java
@@ -1,84 +1,71 @@
package cc.mrbird.febs.job;
import cc.mrbird.febs.common.contants.AppContants;
import cc.mrbird.febs.common.utils.RedisUtils;
import cc.mrbird.febs.dapp.chain.BaseCoinService;
import cc.mrbird.febs.dapp.chain.ChainEnum;
import cc.mrbird.febs.dapp.chain.ChainService;
import cc.mrbird.febs.dapp.chain.ContractEventService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.scheduling.annotation.Async;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import java.math.BigInteger;
@Slf4j
@Component
@ConditionalOnProperty(prefix = "system", name = "chain-listener", havingValue = "true")
public class ChainListenerJob implements ApplicationRunner {
public class ChainListenerJob{
//public class ChainListenerJob implements ApplicationRunner {
    @Autowired
    private BaseCoinService baseCoinService;
    @Autowired
    private RedisUtils redisUtils;
    @Scheduled(cron = "0 0/5 * * * ? ")
    public void chainBlockUpdate() {
        BigInteger blockNumber = ChainService.getInstance(ChainEnum.BSC_TFC.name()).blockNumber();
        redisUtils.set(AppContants.REDIS_KEY_BLOCK_ETH_NEWEST_NUM, blockNumber);
    }
    @Scheduled(cron = "0/2 * * * * ? ")
    public void chainIncrementBlock() {
        Object newestBlockObj = redisUtils.get(AppContants.REDIS_KEY_BLOCK_ETH_NEWEST_NUM);
        BigInteger newestBlock;
        if (newestBlockObj == null) {
            newestBlock = ChainService.getInstance(ChainEnum.BSC_TFC.name()).blockNumber();
        } else {
            newestBlock = (BigInteger) newestBlockObj;
        }
        Object incrementObj = redisUtils.get(AppContants.REDIS_KEY_BLOCK_ETH_INCREMENT_NUM);
        BigInteger toIncrement;
        if (incrementObj == null) {
            toIncrement = newestBlock;
        } else {
            BigInteger incrementBlock = (BigInteger) incrementObj;
            // 最新区块小于增加区块
            if (newestBlock.compareTo(incrementBlock) <= 0) {
                return;
            }
            toIncrement = incrementBlock.add(BigInteger.ONE);
        }
        redisUtils.set(AppContants.REDIS_KEY_BLOCK_ETH_INCREMENT_NUM, toIncrement);
    }
    @Override
    public void run(ApplicationArguments args) throws Exception {
        long start = System.currentTimeMillis();
        log.info("区块链监听开始启动");
        Object incrementObj = redisUtils.get(AppContants.REDIS_KEY_BLOCK_ETH_INCREMENT_NUM);
        BigInteger newest = ChainService.getInstance(ChainEnum.BSC_TFC.name()).blockNumber();
        BigInteger block = null;
        if (incrementObj == null) {
            block = newest;
        } else {
            block = (BigInteger) incrementObj;
        }
        ChainService.wssBaseCoinEventListener(block, baseCoinService);
        long end = System.currentTimeMillis();
        log.info("区块链监听启动完成, 消耗时间{}", end - start);
    }
//    @Autowired
//    private BaseCoinService baseCoinService;
//
//    @Autowired
//    private RedisUtils redisUtils;
//
//    @Scheduled(cron = "0 0/5 * * * ? ")
//    public void chainBlockUpdate() {
//        BigInteger blockNumber = ChainService.getInstance(ChainEnum.BSC_TFC.name()).blockNumber();
//
//        redisUtils.set(AppContants.REDIS_KEY_BLOCK_ETH_NEWEST_NUM, blockNumber);
//    }
//
//    @Scheduled(cron = "0/2 * * * * ? ")
//    public void chainIncrementBlock() {
//        Object newestBlockObj = redisUtils.get(AppContants.REDIS_KEY_BLOCK_ETH_NEWEST_NUM);
//        BigInteger newestBlock;
//        if (newestBlockObj == null) {
//            newestBlock = ChainService.getInstance(ChainEnum.BSC_TFC.name()).blockNumber();
//        } else {
//            newestBlock = (BigInteger) newestBlockObj;
//        }
//
//        Object incrementObj = redisUtils.get(AppContants.REDIS_KEY_BLOCK_ETH_INCREMENT_NUM);
//        BigInteger toIncrement;
//        if (incrementObj == null) {
//            toIncrement = newestBlock;
//        } else {
//            BigInteger incrementBlock = (BigInteger) incrementObj;
//
//            // 最新区块小于增加区块
//            if (newestBlock.compareTo(incrementBlock) <= 0) {
//                return;
//            }
//            toIncrement = incrementBlock.add(BigInteger.ONE);
//        }
//
//        redisUtils.set(AppContants.REDIS_KEY_BLOCK_ETH_INCREMENT_NUM, toIncrement);
//    }
//
//    @Override
//    public void run(ApplicationArguments args) throws Exception {
//        long start = System.currentTimeMillis();
//        log.info("区块链监听开始启动");
//        Object incrementObj = redisUtils.get(AppContants.REDIS_KEY_BLOCK_ETH_INCREMENT_NUM);
//        BigInteger newest = ChainService.getInstance(ChainEnum.BSC_TFC.name()).blockNumber();
//        BigInteger block = null;
//        if (incrementObj == null) {
//            block = newest;
//        } else {
//            block = (BigInteger) incrementObj;
//        }
//
//        ChainService.wssBaseCoinEventListener(block, baseCoinService);
//
//        long end = System.currentTimeMillis();
//        log.info("区块链监听启动完成, 消耗时间{}", end - start);
//    }
}
src/main/java/cc/mrbird/febs/job/MatrixResetJob.java
@@ -1,22 +1,10 @@
package cc.mrbird.febs.job;
import cc.mrbird.febs.common.contants.AppContants;
import cc.mrbird.febs.common.utils.RedisUtils;
import cc.mrbird.febs.dapp.chain.ChainEnum;
import cc.mrbird.febs.dapp.chain.ChainService;
import cc.mrbird.febs.dapp.entity.DataDictionaryCustom;
import cc.mrbird.febs.dapp.mapper.DataDictionaryCustomMapper;
import cc.mrbird.febs.dapp.service.DappSystemService;
import cc.mrbird.febs.dapp.vo.RedisTransferPoolVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
/**
 * @author wzy
@@ -30,9 +18,9 @@
    @Autowired
    private DappSystemService systemService;
    @Scheduled(cron = "0 0 0 * * ?")
    public void resetMatrix() {
//        log.info("重置");
//        systemService.resetMatrix();
    }
//    @Scheduled(cron = "0 0 0 * * ?")
//    public void resetMatrix() {
////        log.info("重置");
////        systemService.resetMatrix();
//    }
}
src/main/java/cc/mrbird/febs/job/RedisLinkHoldJob.java
@@ -2,7 +2,6 @@
import cc.mrbird.febs.common.utils.RedisUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
/**
@@ -16,8 +15,8 @@
    private RedisUtils redisUtils;
    @Scheduled(cron = "0/1 * * * * ?")
    public void redisLinkHold() {
//        redisUtils.set("redis_link_hold", 1);
    }
//    @Scheduled(cron = "0/1 * * * * ?")
//    public void redisLinkHold() {
////        redisUtils.set("redis_link_hold", 1);
//    }
}
src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java
@@ -1,9 +1,5 @@
package cc.mrbird.febs.rabbit;
import org.springframework.amqp.core.Binding;
import org.springframework.amqp.core.BindingBuilder;
import org.springframework.amqp.core.DirectExchange;
import org.springframework.amqp.core.Queue;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.config.ConfigurableBeanFactory;
@@ -29,88 +25,88 @@
        return new RabbitTemplate(connectionFactory);
    }
    // === speed 支付订单  start ===
    @Bean
    public DirectExchange speedPayOrderExchange() {
        return new DirectExchange(QueueEnum.SPEED_PAY_ORDER.getExchange());
    }
    @Bean
    public Queue speedPayOrderQueue() {
        return new Queue(QueueEnum.SPEED_PAY_ORDER.getQueue());
    }
    @Bean
    public Binding speedPayOrderBind() {
        return BindingBuilder.bind(speedPayOrderQueue()).to(speedPayOrderExchange()).with(QueueEnum.SPEED_PAY_ORDER.getRoute());
    }
    // === speed 支付订单  end ===
    // === speed 代理升级  start ===
    @Bean
    public DirectExchange speedLevelUpExchange() {
        return new DirectExchange(QueueEnum.SPEED_LEVEL_UP.getExchange());
    }
    @Bean
    public Queue speedLevelUpQueue() {
        return new Queue(QueueEnum.SPEED_LEVEL_UP.getQueue());
    }
    @Bean
    public Binding speedLevelUpBind() {
        return BindingBuilder.bind(speedLevelUpQueue()).to(speedLevelUpExchange()).with(QueueEnum.SPEED_LEVEL_UP.getRoute());
    }
    // === speed 代理升级  end ===
    // === speed 代理升级  start ===
    @Bean
    public DirectExchange speedLevelUpTeamExchange() {
        return new DirectExchange(QueueEnum.SPEED_LEVEL_UP_TEAM.getExchange());
    }
    @Bean
    public Queue speedLevelUpTeamQueue() {
        return new Queue(QueueEnum.SPEED_LEVEL_UP_TEAM.getQueue());
    }
    @Bean
    public Binding speedLevelUpTeamBind() {
        return BindingBuilder.bind(speedLevelUpTeamQueue()).to(speedLevelUpTeamExchange()).with(QueueEnum.SPEED_LEVEL_UP_TEAM.getRoute());
    }
    // === speed 代理升级  end ===
    // === speed 直推返利  start ===
    @Bean
    public DirectExchange speedDirectPerkExchange() {
        return new DirectExchange(QueueEnum.SPEED_DIRECT_PERK.getExchange());
    }
    @Bean
    public Queue speedDirectPerkQueue() {
        return new Queue(QueueEnum.SPEED_DIRECT_PERK.getQueue());
    }
    @Bean
    public Binding speedDirectPerkBind() {
        return BindingBuilder.bind(speedDirectPerkQueue()).to(speedDirectPerkExchange()).with(QueueEnum.SPEED_DIRECT_PERK.getRoute());
    }
    // === speed 代理升级  end ===
    // === speed 卖出资产  start ===
    @Bean
    public DirectExchange speedSalePackageExchange() {
        return new DirectExchange(QueueEnum.SPEED_SALE_PACKAGE.getExchange());
    }
    @Bean
    public Queue speedSalePackageQueue() {
        return new Queue(QueueEnum.SPEED_SALE_PACKAGE.getQueue());
    }
    @Bean
    public Binding speedSalePackageBind() {
        return BindingBuilder.bind(speedSalePackageQueue()).to(speedSalePackageExchange()).with(QueueEnum.SPEED_SALE_PACKAGE.getRoute());
    }
    // === speed 卖出资产  end ===
//    // === speed 支付订单  start ===
//    @Bean
//    public DirectExchange speedPayOrderExchange() {
//        return new DirectExchange(QueueEnum.SPEED_PAY_ORDER.getExchange());
//    }
//
//    @Bean
//    public Queue speedPayOrderQueue() {
//        return new Queue(QueueEnum.SPEED_PAY_ORDER.getQueue());
//    }
//
//    @Bean
//    public Binding speedPayOrderBind() {
//        return BindingBuilder.bind(speedPayOrderQueue()).to(speedPayOrderExchange()).with(QueueEnum.SPEED_PAY_ORDER.getRoute());
//    }
//    // === speed 支付订单  end ===
//
//    // === speed 代理升级  start ===
//    @Bean
//    public DirectExchange speedLevelUpExchange() {
//        return new DirectExchange(QueueEnum.SPEED_LEVEL_UP.getExchange());
//    }
//
//    @Bean
//    public Queue speedLevelUpQueue() {
//        return new Queue(QueueEnum.SPEED_LEVEL_UP.getQueue());
//    }
//
//    @Bean
//    public Binding speedLevelUpBind() {
//        return BindingBuilder.bind(speedLevelUpQueue()).to(speedLevelUpExchange()).with(QueueEnum.SPEED_LEVEL_UP.getRoute());
//    }
//    // === speed 代理升级  end ===
//
//    // === speed 代理升级  start ===
//    @Bean
//    public DirectExchange speedLevelUpTeamExchange() {
//        return new DirectExchange(QueueEnum.SPEED_LEVEL_UP_TEAM.getExchange());
//    }
//
//    @Bean
//    public Queue speedLevelUpTeamQueue() {
//        return new Queue(QueueEnum.SPEED_LEVEL_UP_TEAM.getQueue());
//    }
//
//    @Bean
//    public Binding speedLevelUpTeamBind() {
//        return BindingBuilder.bind(speedLevelUpTeamQueue()).to(speedLevelUpTeamExchange()).with(QueueEnum.SPEED_LEVEL_UP_TEAM.getRoute());
//    }
//    // === speed 代理升级  end ===
//
//    // === speed 直推返利  start ===
//    @Bean
//    public DirectExchange speedDirectPerkExchange() {
//        return new DirectExchange(QueueEnum.SPEED_DIRECT_PERK.getExchange());
//    }
//
//    @Bean
//    public Queue speedDirectPerkQueue() {
//        return new Queue(QueueEnum.SPEED_DIRECT_PERK.getQueue());
//    }
//
//    @Bean
//    public Binding speedDirectPerkBind() {
//        return BindingBuilder.bind(speedDirectPerkQueue()).to(speedDirectPerkExchange()).with(QueueEnum.SPEED_DIRECT_PERK.getRoute());
//    }
//    // === speed 代理升级  end ===
//
//    // === speed 卖出资产  start ===
//    @Bean
//    public DirectExchange speedSalePackageExchange() {
//        return new DirectExchange(QueueEnum.SPEED_SALE_PACKAGE.getExchange());
//    }
//
//    @Bean
//    public Queue speedSalePackageQueue() {
//        return new Queue(QueueEnum.SPEED_SALE_PACKAGE.getQueue());
//    }
//
//    @Bean
//    public Binding speedSalePackageBind() {
//        return BindingBuilder.bind(speedSalePackageQueue()).to(speedSalePackageExchange()).with(QueueEnum.SPEED_SALE_PACKAGE.getRoute());
//    }
//    // === speed 卖出资产  end ===
}
src/main/java/cc/mrbird/febs/rabbit/consumer/ChainConsumer.java
@@ -1,9 +1,7 @@
package cc.mrbird.febs.rabbit.consumer;
import cc.mrbird.febs.dapp.service.DappSystemService;
import cc.mrbird.febs.rabbit.QueueConstants;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.stereotype.Component;
@@ -20,68 +18,68 @@
    @Autowired
    private DappSystemService dappSystemService;
    /**
     * speed 支付订单
     */
    @RabbitListener(queues = QueueConstants.QUEUE_SPEED_PAY_ORDER)
    public void speedPayOrderMsg(Long orderId) {
        log.info("speedPayOrderMsg:{}", orderId);
        try {
            dappSystemService.speedPayOrderMsg(orderId);
        } catch (Exception e) {
            log.error("speedPayOrderErr:", e);
        }
    }
    /**
     * speed 代理升级
     */
    @RabbitListener(queues = QueueConstants.QUEUE_SPEED_LEVEL_UP_TEAM)
    public void speedAutoLevelUpTeamMsg(Long memberId) {
        log.info("speedAutoLevelUpTeamMsg:{}", memberId);
        try {
            dappSystemService.speedAutoLevelUpTeamMsg(memberId);
        } catch (Exception e) {
            log.error("speedAutoLevelUpTeamErr:", e);
        }
    }
    /**
     * speed 代理升级
     */
    @RabbitListener(queues = QueueConstants.QUEUE_SPEED_LEVEL_UP)
    public void speedAutoLevelUpMsg(Long memberId) {
        log.info("speedAutoLevelUpMsg:{}", memberId);
        try {
            dappSystemService.speedAutoLevelUpMsg(memberId);
        } catch (Exception e) {
            log.error("speedAutoLevelUpErr:", e);
        }
    }
    /**
     * speed 直推返利
     */
    @RabbitListener(queues = QueueConstants.QUEUE_SPEED_DIRECT_PERK)
    public void speedDirectPerkMsg(Long memberId) {
        log.info("speedDirectPerkMsg:{}", memberId);
        try {
            dappSystemService.speedDirectPerkMsg(memberId);
        } catch (Exception e) {
            log.error("speedDirectPerkErr:", e);
        }
    }
    /**
     * speed 卖出资产
     */
    @RabbitListener(queues = QueueConstants.QUEUE_SPEED_SALE_PACKAGE)
    public void speedSalePackageMsg(Long flowId) {
        log.info("speedSalePackageMsg:{}", flowId);
        try {
            dappSystemService.speedSalePackageMsg(flowId);
        } catch (Exception e) {
            log.error("speedSalePackageErr:", e);
        }
    }
//    /**
//     * speed 支付订单
//     */
//    @RabbitListener(queues = QueueConstants.QUEUE_SPEED_PAY_ORDER)
//    public void speedPayOrderMsg(Long orderId) {
//        log.info("speedPayOrderMsg:{}", orderId);
//        try {
//            dappSystemService.speedPayOrderMsg(orderId);
//        } catch (Exception e) {
//            log.error("speedPayOrderErr:", e);
//        }
//    }
//
//    /**
//     * speed 代理升级
//     */
//    @RabbitListener(queues = QueueConstants.QUEUE_SPEED_LEVEL_UP_TEAM)
//    public void speedAutoLevelUpTeamMsg(Long memberId) {
//        log.info("speedAutoLevelUpTeamMsg:{}", memberId);
//        try {
//            dappSystemService.speedAutoLevelUpTeamMsg(memberId);
//        } catch (Exception e) {
//            log.error("speedAutoLevelUpTeamErr:", e);
//        }
//    }
//
//    /**
//     * speed 代理升级
//     */
//    @RabbitListener(queues = QueueConstants.QUEUE_SPEED_LEVEL_UP)
//    public void speedAutoLevelUpMsg(Long memberId) {
//        log.info("speedAutoLevelUpMsg:{}", memberId);
//        try {
//            dappSystemService.speedAutoLevelUpMsg(memberId);
//        } catch (Exception e) {
//            log.error("speedAutoLevelUpErr:", e);
//        }
//    }
//
//    /**
//     * speed 直推返利
//     */
//    @RabbitListener(queues = QueueConstants.QUEUE_SPEED_DIRECT_PERK)
//    public void speedDirectPerkMsg(Long memberId) {
//        log.info("speedDirectPerkMsg:{}", memberId);
//        try {
//            dappSystemService.speedDirectPerkMsg(memberId);
//        } catch (Exception e) {
//            log.error("speedDirectPerkErr:", e);
//        }
//    }
//
//    /**
//     * speed 卖出资产
//     */
//    @RabbitListener(queues = QueueConstants.QUEUE_SPEED_SALE_PACKAGE)
//    public void speedSalePackageMsg(Long flowId) {
//        log.info("speedSalePackageMsg:{}", flowId);
//        try {
//            dappSystemService.speedSalePackageMsg(flowId);
//        } catch (Exception e) {
//            log.error("speedSalePackageErr:", e);
//        }
//    }
}
src/main/java/cc/mrbird/febs/rabbit/producer/ChainProducer.java
@@ -1,15 +1,10 @@
package cc.mrbird.febs.rabbit.producer;
import cc.mrbird.febs.rabbit.QueueEnum;
import cn.hutool.core.date.DateUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.connection.CorrelationData;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.validation.constraints.NotNull;
import java.util.UUID;
/**
 * @author wzy
@@ -35,52 +30,52 @@
    }
    /**
     *  speed 支付订单
     * @param orderId 订单ID
     */
    public void sendSpeedPayOrderMsg(Long orderId) {
        log.info("sendSpeedPayOrderMsg:{}", orderId);
        CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString());
        rabbitTemplate.convertAndSend(QueueEnum.SPEED_PAY_ORDER.getExchange(), QueueEnum.SPEED_PAY_ORDER.getRoute(), orderId, correlationData);
    }
    /**
     * speed 代理升级
     * @param memberId
     */
    public void sendAutoLevelUpTeamMsg(@NotNull Long memberId) {
        log.info("sendAutoLevelUpTeamMsg:{}", memberId);
        CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString());
        rabbitTemplate.convertAndSend(QueueEnum.SPEED_LEVEL_UP_TEAM.getExchange(), QueueEnum.SPEED_LEVEL_UP_TEAM.getRoute(), memberId, correlationData);
    }
    /**
     * speed 代理升级
     * @param memberId
     */
    public void sendAutoLevelUpMsg(@NotNull Long memberId) {
        log.info("sendAutoLevelUpMsg:{}", memberId);
        CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString());
        rabbitTemplate.convertAndSend(QueueEnum.SPEED_LEVEL_UP.getExchange(), QueueEnum.SPEED_LEVEL_UP.getRoute(), memberId, correlationData);
    }
    /**
     * speed 直推返利
     */
    public void sendDirectPerkMsg(@NotNull Long memberId) {
        log.info("sendDirectPerkMsg:{}", memberId);
        CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString());
        rabbitTemplate.convertAndSend(QueueEnum.SPEED_DIRECT_PERK.getExchange(), QueueEnum.SPEED_DIRECT_PERK.getRoute(), memberId, correlationData);
    }
    /**
     * speed 卖出资产
     */
    public void sendSalePackageMsg(@NotNull Long flowId) {
        log.info("sendSalePackageMsg:{}", flowId);
        CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString());
        rabbitTemplate.convertAndSend(QueueEnum.SPEED_SALE_PACKAGE.getExchange(), QueueEnum.SPEED_SALE_PACKAGE.getRoute(), flowId, correlationData);
    }
//    /**
//     *  speed 支付订单
//     * @param orderId 订单ID
//     */
//    public void sendSpeedPayOrderMsg(Long orderId) {
//        log.info("sendSpeedPayOrderMsg:{}", orderId);
//        CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString());
//        rabbitTemplate.convertAndSend(QueueEnum.SPEED_PAY_ORDER.getExchange(), QueueEnum.SPEED_PAY_ORDER.getRoute(), orderId, correlationData);
//    }
//
//    /**
//     * speed 代理升级
//     * @param memberId
//     */
//    public void sendAutoLevelUpTeamMsg(@NotNull Long memberId) {
//        log.info("sendAutoLevelUpTeamMsg:{}", memberId);
//        CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString());
//        rabbitTemplate.convertAndSend(QueueEnum.SPEED_LEVEL_UP_TEAM.getExchange(), QueueEnum.SPEED_LEVEL_UP_TEAM.getRoute(), memberId, correlationData);
//    }
//
//    /**
//     * speed 代理升级
//     * @param memberId
//     */
//    public void sendAutoLevelUpMsg(@NotNull Long memberId) {
//        log.info("sendAutoLevelUpMsg:{}", memberId);
//        CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString());
//        rabbitTemplate.convertAndSend(QueueEnum.SPEED_LEVEL_UP.getExchange(), QueueEnum.SPEED_LEVEL_UP.getRoute(), memberId, correlationData);
//    }
//
//    /**
//     * speed 直推返利
//     */
//    public void sendDirectPerkMsg(@NotNull Long memberId) {
//        log.info("sendDirectPerkMsg:{}", memberId);
//        CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString());
//        rabbitTemplate.convertAndSend(QueueEnum.SPEED_DIRECT_PERK.getExchange(), QueueEnum.SPEED_DIRECT_PERK.getRoute(), memberId, correlationData);
//    }
//
//    /**
//     * speed 卖出资产
//     */
//    public void sendSalePackageMsg(@NotNull Long flowId) {
//        log.info("sendSalePackageMsg:{}", flowId);
//        CorrelationData correlationData = new CorrelationData(UUID.randomUUID().toString());
//        rabbitTemplate.convertAndSend(QueueEnum.SPEED_SALE_PACKAGE.getExchange(), QueueEnum.SPEED_SALE_PACKAGE.getRoute(), flowId, correlationData);
//    }
}
src/main/resources/application-dev.yml
@@ -15,15 +15,15 @@
      datasource:
        # 数据源-1,名称为 base
        base:
#          username: ct_test
#          password: 123456
#          # 154.91.195.148
#          driver-class-name: com.mysql.cj.jdbc.Driver
#          url: jdbc:mysql://120.27.238.55:3406/db_speed?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
          username: db_soccer
          password: db_soccer123
          username: ct_test
          password: 123456
          # 154.91.195.148
          driver-class-name: com.mysql.cj.jdbc.Driver
          url: jdbc:mysql://154.91.195.148:3306/db_soccer?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
          url: jdbc:mysql://120.27.238.55:3406/db_speed?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
#          username: db_soccer
#          password: db_soccer123
#          driver-class-name: com.mysql.cj.jdbc.Driver
#          url: jdbc:mysql://154.91.195.148:3306/db_soccer?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
  redis:
    # Redis数据库索引(默认为 0)