@Override
public boolean selectFlightTomorrow(String pcode) {
// TODO Auto-generated method stub
String std = applyCarportDao.selectFlightTomorrow(pcode);
if (null == std || std.equals("")) {
return false;
} else {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");
ApplyCarport applyCarport = new ApplyCarport();
//申请航班时间
Date applyTime = applyCarport.getApplyTime();
//当前系统时间
Calendar now = Calendar.getInstance();
//临时使用时间
Calendar nc = Calendar.getInstance();
try {
//申请航班时间与当前系统时间的时间差,单位分钟
long timeDiffer = (sdf.parse(std).getTime() - new Date().getTime())/(1000*60);
//临时时间设置为航班时间
nc.setTime(applyTime);
//判断是哪天签到的航班
if (nc.get(Calendar.DAY_OF_MONTH) > now.get(Calendar.DAY_OF_MONTH)){//非当天航班
System.out.println("不是当天航班");
if (now.get(Calendar.HOUR_OF_DAY) <= 21){//21点之后才能抢
System.out.println("21点之前的航班");
return false;
}else { //21点之前
if (timeDiffer > 120){//申请时间比当前时间超过两个小时,申请失败
System.out.println("申请时间比当前时间超过两个小时");
return false;
}
return true;
}
}{ //当天航班
//申请时间在当天8点之前,且比当前时间超过两个小时(120分钟),申请失败
System.out.println("当天航班");
if (now.get(Calendar.HOUR_OF_DAY) < 8 || timeDiffer > 120){
System.out.println("八点之后或者大于2小时");
return false;
}
return true;
}
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
}