private PointExpire calPointExpire(Date createTime) {
Calendar cal = Calendar.getInstance();
// 计算创建时间是星期几
cal.setTime(createTime);
int createWeek = cal.get(Calendar.DAY_OF_WEEK)-1;
if(createWeek==0) createWeek=7;
System.out.println("创建时间是星期" + createWeek);
// 计算当前是星期几
cal.setTime(new Date());
int currentWeek = cal.get(Calendar.DAY_OF_WEEK)-1;
if(currentWeek==0) currentWeek = 7;
int interval = currentWeek - createWeek;
System.out.println("周差:" + interval);
if(interval < 0) {
interval = Math.abs(interval);
}else {
interval = 7 - interval;
}
int remainDay = interval;
System.out.println("剩余天数:" + remainDay);
cal.setTime(new Date());
cal.add(Calendar.DATE, (remainDay - 1));
Date expireTime = cal.getTime();
DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String expireTimeStr = format.format(expireTime);
// 替换时分秒
expireTimeStr = expireTimeStr.split(" ")[0] + " 23:59:59";
System.out.println("到期时间:" + expireTimeStr);
PointExpire pointExpire = new PointExpire();
pointExpire.setExpireTime(expireTimeStr);
pointExpire.setRemainDay(remainDay);
return pointExpire;
}
计算积分过期时间和剩余天数(一周为周期)
最新推荐文章于 2024-08-16 10:28:16 发布