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 @ConditionalOnProperty(prefix = "system", name = "online-transfer", havingValue = "true") public class BnbTransferJob{ @Autowired private DappSystemService dappSystemService; @Autowired private DappAKlineMapper dappAKlineMapper; @Scheduled(cron = "0 0 0 * * ?") public void memberPerk() { /** * 加速团队静态收益的70%(业绩全算) * 加速团队静态收益为极差制,平级10% * 如V1加速团队静态收益的15%=每日静态的20000*6‰*15%=18元的额外释放加速 * 共享区加速万分之5,上限1.8%(按本金计) */ dappSystemService.teamStaticPerk(); /** * 每天按照消费金额的5‰静释放(千分之五的静态释放比例) * (按购买顺序结算,同时有5个订单就有结算记录) * (设置多少,全部按照最新的来释放) */ dappSystemService.memberPerk(); /** * 直推消费分享:享受直接分享人每日消费金额释放的100%加速; */ dappSystemService.directMemberPerk(); /** * 实际更新账户业绩余额和积分 */ Set 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); } }