package com.java110.job.task.noticeStaff;
|
|
import com.java110.dto.community.CommunityDto;
|
import com.java110.dto.repair.RepairDto;
|
import com.java110.utils.cache.CommonCache;
|
import com.java110.utils.util.DateUtil;
|
import com.java110.utils.util.StringUtil;
|
|
import java.util.Calendar;
|
import java.util.Date;
|
|
public class NoticeTaskUtil {
|
/**
|
* 计算是否为通知时间内
|
*
|
* @return
|
*/
|
public static boolean isNotifyTodayInspection(CommunityDto communityDto) {
|
Calendar calendar = Calendar.getInstance();
|
int hours = calendar.get(Calendar.HOUR_OF_DAY);
|
if (hours != 18) {
|
return false;
|
}
|
String hasValue = CommonCache.getValue("notify_today_inspection_" + communityDto.getCommunityId());
|
if (!StringUtil.isEmpty(hasValue)) {
|
return false;
|
}
|
CommonCache.setValue("notify_today_inspection_" + communityDto.getCommunityId(), hours + "", 12 * 60 * 60);
|
return true;
|
}
|
|
/**
|
* 快超时
|
*
|
* @param tRepairDto
|
* @return
|
*/
|
public static boolean isRepairAboutTimeout(RepairDto tRepairDto) {
|
Date timeout = DateUtil.getDateFromStringA(tRepairDto.getTimeout());
|
Date nowTime = DateUtil.getCurrentDate();
|
if (nowTime.after(timeout)) { // 说明已经超时了
|
return false;
|
}
|
int warnTime = Integer.parseInt(tRepairDto.getWarningTime());
|
|
if (timeout.getTime() - nowTime.getTime() > warnTime * 60 * 1000) {
|
return false;
|
}
|
String hasValue = CommonCache.getValue("notify_repair_about_timeout_" + tRepairDto.getRepairId());
|
if (!StringUtil.isEmpty(hasValue)) {
|
return false;
|
}
|
if (warnTime > 1) {
|
warnTime -= 1;
|
}
|
CommonCache.setValue("notify_repair_about_timeout_" + tRepairDto.getRepairId(), warnTime + "", warnTime * 60);
|
|
return true;
|
}
|
|
/**
|
* 已经超时
|
*
|
* @param tRepairDto
|
* @return
|
*/
|
public static boolean isRepairTimeout(RepairDto tRepairDto) {
|
Date timeout = DateUtil.getDateFromStringA(tRepairDto.getTimeout());
|
Date nowTime = DateUtil.getCurrentDate();
|
if (nowTime.before(timeout)) { // 说明已经没有超时
|
return false;
|
}
|
|
String hasValue = CommonCache.getValue("notify_repair_timeout_" + tRepairDto.getRepairId());
|
if (!StringUtil.isEmpty(hasValue)) {
|
return false;
|
}
|
CommonCache.setValue("notify_repair_timeout_" + tRepairDto.getRepairId(), "Y", 24 * 60 * 60);
|
|
return true;
|
}
|
}
|