无关风月
2025-03-21 6903c41af2520b23809ca90e9a211e738de2c224
ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TUserServiceImpl.java
@@ -17,6 +17,7 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.concurrent.TimeUnit;
import java.util.regex.Matcher;
@@ -45,6 +46,7 @@
    @Autowired
    private HWSendSms hwSendSms;
    @Override
    public Boolean phoneCode(String phone) throws Exception {
@@ -80,7 +82,7 @@
         * key为 --> phone_code:手机号码 (phone_code表示该业务为 验证码登录)
         * value为 --> 随机验证码:时间戳 (时间戳用于计算是否超过1分钟的重发时间)
         */
        redisTemplate.opsForValue().set(RedisConstants.PHONE_CODE + phone, phoneCode + ":" + System.currentTimeMillis(), 3, TimeUnit.MINUTES);
        redisTemplate.opsForValue().set(RedisConstants.PHONE_CODE + phone, phoneCode + ":" + System.currentTimeMillis(), 5, TimeUnit.MINUTES);
        String sendMessage = "验证码发送成功,您的验证码为:" + phoneCode + ",该验证码三分钟内有效,请及时完成登陆";
        // todo 发送此消息
        System.out.println(sendMessage);
@@ -89,16 +91,20 @@
    @Override
    public Boolean isVip() {
//        TUser user = lambdaQuery().eq(TUser::getId, tokenService.getLoginUserStudy().getUserid())
//                .eq(TUser::getDisabled, 0).eq(TUser::getState,1).one();
//        // 是否为vip 逻辑
//        if (null == user) {
//            return false;
//        }
//        // vip过期时间,字段为空也表示 当前用户不是vip
//        Date vipEndTime = user.getVipEndTime();
//        return null != vipEndTime && System.currentTimeMillis() <= vipEndTime.getTime();
        return true;
        TUser user = lambdaQuery().eq(TUser::getId, tokenService.getLoginUserStudy().getUserid())
                .eq(TUser::getDisabled, 0).eq(TUser::getState,1).one();
        // 是否为vip 逻辑
        if (null == user) {
            return false;
        }
        // vip过期时间,字段为空也表示 当前用户不是vip
        Date vipEndTime = user.getVipEndTime();
        return null != vipEndTime && System.currentTimeMillis() <= vipEndTime.getTime();
    }
    @Override
    public void updateOne(Integer id, Date vipEndTime,Date vipPayTime) {
        this.baseMapper.updateOne(id,vipPayTime,vipPayTime);
    }
}