| | |
| | | import cc.mrbird.febs.mall.entity.*; |
| | | import cc.mrbird.febs.mall.mapper.*; |
| | | import cc.mrbird.febs.mall.service.IApiMallMemberWalletService; |
| | | import cc.mrbird.febs.mall.service.IMallAchieveService; |
| | | import cc.mrbird.febs.mall.service.IMallMoneyFlowService; |
| | | import cc.mrbird.febs.mall.service.IMemberProfitService; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.date.DateField; |
| | | import cn.hutool.core.date.DateUnit; |
| | | import cn.hutool.core.date.DateUtil; |
| | | import cn.hutool.core.util.StrUtil; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import lombok.RequiredArgsConstructor; |
| | |
| | | private final MallMoneyFlowMapper mallMoneyFlowMapper; |
| | | private final MallAchieveRecordMapper mallAchieveRecordMapper; |
| | | private final MallMemberCouponMapper mallMemberCouponMapper; |
| | | private final RunVipMapper runVipMapper; |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void updateMemberLevel() { |
| | | List<RunVip> runVips = runVipMapper.selectList(new LambdaQueryWrapper<RunVip>().orderByAsc(RunVip :: getOrderNumber)); |
| | | RunVip runVip = runVips.get(0); |
| | | |
| | | //获取过期时间小于等于当前时间,并且会员等级不是最小等级游客的所有用户 |
| | | LambdaQueryWrapper<MallMember> mallMemberLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | mallMemberLambdaQueryWrapper.le(MallMember :: getVipLevelTime,DateUtil.date()); |
| | | mallMemberLambdaQueryWrapper.ne(MallMember :: getLevel,runVip.getVipCode()); |
| | | List<MallMember> mallMembers = mallMemberMapper.selectList(mallMemberLambdaQueryWrapper); |
| | | if(CollUtil.isNotEmpty(mallMembers)){ |
| | | mallMembers.forEach( |
| | | item -> { |
| | | mallMemberMapper.updateVipLevelTimeAndLevel(item.getId(),item.getVipLevelTime(),item.getLevel()); |
| | | } |
| | | ); |
| | | } |
| | | } |
| | | } |