Fix the remaining bits where periodicity was not taken into account
FEA: ItEr77S07PersonalTimesheetsPeriodictyConfiguration
This commit is contained in:
parent
3394f41aa2
commit
38b47b1fea
4 changed files with 34 additions and 7 deletions
|
|
@ -34,10 +34,10 @@ import org.hibernate.validator.AssertTrue;
|
|||
import org.hibernate.validator.NotNull;
|
||||
import org.hibernate.validator.Valid;
|
||||
import org.joda.time.LocalDate;
|
||||
import org.joda.time.LocalDate.Property;
|
||||
import org.libreplan.business.common.IntegrationEntity;
|
||||
import org.libreplan.business.common.Registry;
|
||||
import org.libreplan.business.common.entities.EntitySequence;
|
||||
import org.libreplan.business.common.entities.PersonalTimesheetsPeriodicityEnum;
|
||||
import org.libreplan.business.common.exceptions.InstanceNotFoundException;
|
||||
import org.libreplan.business.labels.entities.Label;
|
||||
import org.libreplan.business.labels.entities.LabelType;
|
||||
|
|
@ -502,10 +502,14 @@ public class WorkReport extends IntegrationEntity implements
|
|||
return true;
|
||||
}
|
||||
|
||||
Property dayOfMonth = LocalDate.fromDateFields(
|
||||
workReportLines.iterator().next().getDate()).dayOfMonth();
|
||||
LocalDate min = dayOfMonth.withMinimumValue();
|
||||
LocalDate max = dayOfMonth.withMaximumValue();
|
||||
LocalDate workReportDate = LocalDate.fromDateFields(workReportLines
|
||||
.iterator().next().getDate());
|
||||
PersonalTimesheetsPeriodicityEnum periodicity = Registry
|
||||
.getConfigurationDAO()
|
||||
.getConfigurationWithReadOnlyTransaction()
|
||||
.getPersonalTimesheetsPeriodicity();
|
||||
LocalDate min = periodicity.getStart(workReportDate);
|
||||
LocalDate max = periodicity.getEnd(workReportDate);
|
||||
|
||||
for (WorkReportLine line : workReportLines) {
|
||||
LocalDate date = LocalDate.fromDateFields(line.getDate());
|
||||
|
|
|
|||
|
|
@ -21,6 +21,8 @@ package org.libreplan.web.users.dashboard;
|
|||
|
||||
import java.util.List;
|
||||
|
||||
import org.libreplan.business.common.entities.Configuration;
|
||||
import org.libreplan.business.common.entities.PersonalTimesheetsPeriodicityEnum;
|
||||
import org.libreplan.business.planner.entities.SpecificResourceAllocation;
|
||||
import org.libreplan.business.planner.entities.Task;
|
||||
import org.libreplan.business.planner.entities.TaskElement;
|
||||
|
|
@ -40,4 +42,10 @@ public interface IMyTasksAreaModel {
|
|||
*/
|
||||
List<Task> getTasks();
|
||||
|
||||
/**
|
||||
* Returns the {@link PersonalTimesheetsPeriodicityEnum} from
|
||||
* {@link Configuration}.
|
||||
*/
|
||||
PersonalTimesheetsPeriodicityEnum getPersonalTimesheetsPeriodicity();
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@ import javax.annotation.Resource;
|
|||
import org.joda.time.LocalDate;
|
||||
import org.libreplan.business.advance.entities.AdvanceMeasurement;
|
||||
import org.libreplan.business.advance.entities.DirectAdvanceAssignment;
|
||||
import org.libreplan.business.common.entities.PersonalTimesheetsPeriodicityEnum;
|
||||
import org.libreplan.business.orders.entities.OrderElement;
|
||||
import org.libreplan.business.orders.entities.SumChargedEffort;
|
||||
import org.libreplan.business.planner.entities.Task;
|
||||
|
|
@ -121,8 +122,10 @@ public class MyTasksAreaController extends GenericForwardComposer {
|
|||
LocalDate end = task.getEndAsLocalDate();
|
||||
|
||||
LocalDate currentDate = new LocalDate();
|
||||
LocalDate min = currentDate.dayOfMonth().withMinimumValue();
|
||||
LocalDate max = currentDate.dayOfMonth().withMaximumValue();
|
||||
PersonalTimesheetsPeriodicityEnum periodicity = myTasksAreaModel
|
||||
.getPersonalTimesheetsPeriodicity();
|
||||
LocalDate min = periodicity.getStart(currentDate);
|
||||
LocalDate max = periodicity.getEnd(currentDate);
|
||||
|
||||
if (dateBetween(start, min, max)) {
|
||||
return start;
|
||||
|
|
|
|||
|
|
@ -26,6 +26,8 @@ import java.util.List;
|
|||
|
||||
import org.libreplan.business.advance.entities.AdvanceMeasurement;
|
||||
import org.libreplan.business.advance.entities.DirectAdvanceAssignment;
|
||||
import org.libreplan.business.common.daos.IConfigurationDAO;
|
||||
import org.libreplan.business.common.entities.PersonalTimesheetsPeriodicityEnum;
|
||||
import org.libreplan.business.planner.daos.IResourceAllocationDAO;
|
||||
import org.libreplan.business.planner.entities.SpecificResourceAllocation;
|
||||
import org.libreplan.business.planner.entities.Task;
|
||||
|
|
@ -53,6 +55,9 @@ public class MyTasksAreaModel implements IMyTasksAreaModel {
|
|||
@Autowired
|
||||
private IScenarioManager scenarioManager;
|
||||
|
||||
@Autowired
|
||||
private IConfigurationDAO configurationDAO;
|
||||
|
||||
@Override
|
||||
@Transactional(readOnly = true)
|
||||
public List<Task> getTasks() {
|
||||
|
|
@ -103,4 +108,11 @@ public class MyTasksAreaModel implements IMyTasksAreaModel {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(readOnly = true)
|
||||
public PersonalTimesheetsPeriodicityEnum getPersonalTimesheetsPeriodicity() {
|
||||
return configurationDAO.getConfiguration()
|
||||
.getPersonalTimesheetsPeriodicity();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue