Date nowDate = new Date(); //当前时间
Date startDate = p.getPro().getStartDate(); //开始时间
Date endDate = p.getPro().getEndDate(); //结束时间
if (nowDate.getTime() <= startDate.getTime()) { //未开始项目进度设置为0
p.setTotalProgress(0L);
} else if (nowDate.getTime() >= endDate.getTime()) { //已结束项目进度设置为100
p.setTotalProgress(100L);
} else {
//结束时间和开始时间中间的天数
Double a = (double) ((endDate.getTime() - startDate.getTime()) / (1000 * 3600 * 24));
//当前时间和开始时间中间的天数
Double b = (double) ((nowDate.getTime() - startDate.getTime()) / (1000 * 3600 * 24));
//计算百分比存入
p.setTotalProgress(Math.round(b / a * 100));
}