使用Java开发一个简单的会员功能,当用户请求过来时候,
- 检查用户之前是否为会员,如果是,则在原有的会员截至日期加上一年(假设用户选择开通年费会员)
- 如果不是会员,则从今天的日期,开始添加为期一年的会员
判断用户之前是否为会员,使用时间相减法,代码如下:
/**
* 判断之前是否是VIP用户
* @param user
* @return
*/
@Override
public Boolean isVipUser(User user) {
long m = 0;
LambdaQueryWrapper<VipUser> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(VipUser::getUserId,user.getId());
VipUser vipUser = vipUserMapper.selectOne(queryWrapper);
if(vipUser==null){
return false;
}
String end = vipUser.getExpiredTime();
String now = new DateTime(new Date()).toLocalDate().toString();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
m = sdf.parse(end).getTime() - sdf.parse(now).getTime();
} catch (ParseException e) {
System.out.println("判断断之前是否是VIP用户 类型转换异常");
e.printStackTrace();
}
if(m>0){
//正数或者0,表明过期时间大于今天的时间
return true;
}else {
return false;
}
}
文章评论