I am trying to compute the duration Of each Project and each Task appointed to the Project, unfortunately it always returns 0. computeDuration:
Date minDate = projectTasks[0].gettaskFromDate();
Date maxDate = projectTasks[0].gettaskEndDate();
for (int i = 0; i < numOfTasks; ++i) {
if (projectTasks[i] != null && projectTasks[i].gettaskEndDate() != null && projectTasks[i].gettaskFromDate() != null) {
projectTasks[i].settaskDuration(utils.Globals.computeDuration(projectTasks[i].gettaskFromDate(), projectTasks[i].gettaskEndDate()));
}
}
for (int i = 0; i < numOfTasks; ++i) {
if (projectTasks[i] != null && projectTasks[i].gettaskEndDate() != null && projectTasks[i].gettaskFromDate() != null) {
if (utils.Globals.validateDates(projectTasks[i].gettaskFromDate(), minDate)) {
minDate = projectTasks[i].gettaskFromDate();
}
if (utils.Globals.validateDates(maxDate, projectTasks[i].gettaskEndDate())) {
maxDate = projectTasks[i].gettaskEndDate();
}
}
}
setprojectDuration(utils.Globals.computeDuration(minDate, maxDate));
}
utils.Globals.validateDates:
public static boolean validateDates(Date from, Date to){
return from.before(to);
}
utils.Globals.computeDuration:
public static int computeDuration(Date from, Date to){
long diffIn = Math.abs(to.getTime() - from.getTime());
int duration = (int) TimeUnit.DAYS.convert(diffIn, TimeUnit.MILLISECONDS);
return duration;
}
Thanks in advance!
Dateclass and notLocalDate? Edit your question to include a minimal reproducible example that we can copy into our IDE, compile, and run hundreds of tests to determine the cause of the problem.Datein 2023 deserve to be sacked. It’s really nothing useful to teach.