ItEr58S19CUDesconsolidacion: Removed unneeded entity PendingConsolidatedHoursPerResourceAllocation.

This commit is contained in:
Manuel Rego Casasnovas 2010-05-27 10:14:26 +02:00 committed by Javier Moran Rua
parent 11138c79f0
commit af65a684bd
7 changed files with 17 additions and 196 deletions

View file

@ -21,7 +21,6 @@
package org.navalplanner.business.planner.entities.consolidations;
import java.math.BigDecimal;
import java.util.Set;
import org.joda.time.LocalDate;
@ -38,17 +37,12 @@ public class CalculatedConsolidatedValue extends ConsolidatedValue {
}
public static CalculatedConsolidatedValue create(LocalDate date,
BigDecimal value,
Set<PendingConsolidatedHoursPerResourceAllocation> pendingConsolidatedHours) {
return create(new CalculatedConsolidatedValue(date, value,
pendingConsolidatedHours));
BigDecimal value) {
return create(new CalculatedConsolidatedValue(date, value));
}
protected CalculatedConsolidatedValue(
LocalDate date,
BigDecimal value,
Set<PendingConsolidatedHoursPerResourceAllocation> pendingConsolidatedHours) {
super(date, value, pendingConsolidatedHours);
protected CalculatedConsolidatedValue(LocalDate date, BigDecimal value) {
super(date, value);
}
protected CalculatedConsolidatedValue() {

View file

@ -21,13 +21,9 @@
package org.navalplanner.business.planner.entities.consolidations;
import java.math.BigDecimal;
import java.util.Collection;
import java.util.HashSet;
import java.util.Set;
import org.joda.time.LocalDate;
import org.navalplanner.business.common.BaseEntity;
import org.navalplanner.business.planner.entities.ResourceAllocation;
/**
* @author Susana Montes Pedreira <smontes@wirelessgalicia.com>
@ -37,7 +33,6 @@ public abstract class ConsolidatedValue extends BaseEntity {
private LocalDate date;
private BigDecimal value;
private Set<PendingConsolidatedHoursPerResourceAllocation> pendingConsolidatedHours = new HashSet<PendingConsolidatedHoursPerResourceAllocation>();
public abstract boolean isCalculated();
@ -47,11 +42,9 @@ public abstract class ConsolidatedValue extends BaseEntity {
protected ConsolidatedValue(
LocalDate date,
BigDecimal value,
Set<PendingConsolidatedHoursPerResourceAllocation> pendingConsolidatedHours) {
BigDecimal value) {
this.date = date;
this.value = value;
this.pendingConsolidatedHours = pendingConsolidatedHours;
}
public void setValue(BigDecimal value) {
@ -70,24 +63,4 @@ public abstract class ConsolidatedValue extends BaseEntity {
return date;
}
public void setPendingConsolidatedHours(Set<PendingConsolidatedHoursPerResourceAllocation> pendingConsolidatedHours) {
this.pendingConsolidatedHours = pendingConsolidatedHours;
}
public Set<PendingConsolidatedHoursPerResourceAllocation> getPendingConsolidatedHours() {
return pendingConsolidatedHours;
}
public static Set<PendingConsolidatedHoursPerResourceAllocation> createPendingConsolidatedHours(
LocalDate consolidatedDate, BigDecimal consolidatedValue,
Collection<? extends ResourceAllocation> allocations) {
Set<PendingConsolidatedHoursPerResourceAllocation> pendingConsolidatedHours = new HashSet<PendingConsolidatedHoursPerResourceAllocation>();
for (ResourceAllocation allocation : allocations) {
pendingConsolidatedHours
.add(PendingConsolidatedHoursPerResourceAllocation.create(
consolidatedDate, consolidatedValue, allocation));
}
return pendingConsolidatedHours;
}
}

View file

@ -21,7 +21,6 @@
package org.navalplanner.business.planner.entities.consolidations;
import java.math.BigDecimal;
import java.util.Set;
import org.joda.time.LocalDate;
import org.navalplanner.business.advance.entities.AdvanceMeasurement;
@ -41,32 +40,24 @@ public class NonCalculatedConsolidatedValue extends ConsolidatedValue {
}
public static NonCalculatedConsolidatedValue create(LocalDate date,
BigDecimal value,
Set<PendingConsolidatedHoursPerResourceAllocation> pendingConsolidatedHours) {
return create(new NonCalculatedConsolidatedValue(date, value,
pendingConsolidatedHours));
BigDecimal value) {
return create(new NonCalculatedConsolidatedValue(date, value));
}
public static NonCalculatedConsolidatedValue create(LocalDate date,
BigDecimal value,
AdvanceMeasurement advanceMeasurement,
Set<PendingConsolidatedHoursPerResourceAllocation> pendingConsolidatedHours) {
BigDecimal value, AdvanceMeasurement advanceMeasurement) {
return create(new NonCalculatedConsolidatedValue(date, value,
advanceMeasurement, pendingConsolidatedHours));
advanceMeasurement));
}
protected NonCalculatedConsolidatedValue(LocalDate date, BigDecimal value,
AdvanceMeasurement advanceMeasurement,
Set<PendingConsolidatedHoursPerResourceAllocation> pendingConsolidatedHours) {
this(date, value, pendingConsolidatedHours);
AdvanceMeasurement advanceMeasurement) {
this(date, value);
this.advanceMeasurement = advanceMeasurement;
}
protected NonCalculatedConsolidatedValue(
LocalDate date,
BigDecimal value,
Set<PendingConsolidatedHoursPerResourceAllocation> pendingConsolidatedHours) {
super(date, value, pendingConsolidatedHours);
protected NonCalculatedConsolidatedValue(LocalDate date, BigDecimal value) {
super(date, value);
}
protected NonCalculatedConsolidatedValue() {

View file

@ -1,115 +0,0 @@
/*
* This file is part of NavalPlan
*
* Copyright (C) 2009 Fundación para o Fomento da Calidade Industrial e
* Desenvolvemento Tecnolóxico de Galicia
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package org.navalplanner.business.planner.entities.consolidations;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Collection;
import org.hibernate.validator.NotNull;
import org.joda.time.LocalDate;
import org.navalplanner.business.common.BaseEntity;
import org.navalplanner.business.planner.entities.DayAssignment;
import org.navalplanner.business.planner.entities.ResourceAllocation;
/**
* Represents the number of hours per {@link ResourceAllocation} that are not
* consolidated.
* @author Susana Montes Pedreira <smontes@wirelessgalicia.com>
*/
public class PendingConsolidatedHoursPerResourceAllocation extends BaseEntity {
private Integer pendingConsolidatedHours;
private ResourceAllocation<?> resourceAllocation;
public static PendingConsolidatedHoursPerResourceAllocation create(
LocalDate consolidatedDate, BigDecimal consolidatedValue,
ResourceAllocation<?> resourceAllocation) {
return create(new PendingConsolidatedHoursPerResourceAllocation(
consolidatedDate, consolidatedValue, resourceAllocation));
}
public static PendingConsolidatedHoursPerResourceAllocation create(
Integer pendingConsolidatedHours,
ResourceAllocation<?> resourceAllocation) {
return create(new PendingConsolidatedHoursPerResourceAllocation(
pendingConsolidatedHours, resourceAllocation));
}
protected PendingConsolidatedHoursPerResourceAllocation(
LocalDate consolidatedDate, BigDecimal consolidatedValue,
ResourceAllocation<?> resourceAllocation) {
this.setResourceAllocation(resourceAllocation);
this.setPendingConsolidatedHours(calculatePendingConsolidatedHours(
consolidatedDate, consolidatedValue, resourceAllocation
.getAssignments()));
}
protected PendingConsolidatedHoursPerResourceAllocation(
Integer pendingConsolidatedHours,
ResourceAllocation<?> resourceAllocation) {
this.setResourceAllocation(resourceAllocation);
this.setPendingConsolidatedHours(pendingConsolidatedHours);
}
protected PendingConsolidatedHoursPerResourceAllocation() {
}
private Integer calculatePendingConsolidatedHours(
LocalDate consolidatedDate, BigDecimal consolidatedValue,
Collection<? extends DayAssignment> assignments) {
for (DayAssignment dayAssignment : assignments) {
if ((dayAssignment.getDay().compareTo(consolidatedDate)) <= 0) {
dayAssignment.setConsolidated(true);
}
}
int originalTotalAssigment = resourceAllocation
.getOriginalTotalAssigment();
return BigDecimal.ONE
.subtract(
consolidatedValue.divide(new BigDecimal(100),
RoundingMode.DOWN)).multiply(
new BigDecimal(originalTotalAssigment)).intValue();
}
public void setPendingConsolidatedHours(Integer pendingConsolidatedHours) {
this.pendingConsolidatedHours = pendingConsolidatedHours;
}
@NotNull(message = "pending consolidated hours not specified")
public Integer getPendingConsolidatedHours() {
return pendingConsolidatedHours;
}
public void setResourceAllocation(ResourceAllocation<?> resourceAllocation) {
this.resourceAllocation = resourceAllocation;
}
@NotNull(message = "resource allocation not specified")
public ResourceAllocation<?> getResourceAllocation() {
return resourceAllocation;
}
}

View file

@ -14,14 +14,6 @@
<property name="date" access="field" type="org.joda.time.contrib.hibernate.PersistentLocalDate" />
<property name="value" scale="2" access="field" />
<set name="pendingConsolidatedHours" table="PENDING_CONSOLIDATED_HOURS">
<key column="PENDING_HOURS_ID"/>
<composite-element class="org.navalplanner.business.planner.entities.consolidations.PendingConsolidatedHoursPerResourceAllocation">
<property name="pendingConsolidatedHours"/>
<many-to-one name="resourceAllocation" class="org.navalplanner.business.planner.entities.ResourceAllocation" column="RESOURCE_ALLOCATION_ID" access="field" />
</composite-element>
</set>
<subclass name="NonCalculatedConsolidatedValue" discriminator-value="NonCalculated">
<many-to-one name="consolidation" class="NonCalculatedConsolidation" column="CONSOLIDATION_ID" access="field" />
<many-to-one name="advanceMeasurement" class="org.navalplanner.business.advance.entities.AdvanceMeasurement" column="ADVANCE_MEASUREMENT_ID" access="field" />

View file

@ -48,7 +48,6 @@ import org.navalplanner.business.planner.entities.consolidations.ConsolidatedVal
import org.navalplanner.business.planner.entities.consolidations.Consolidation;
import org.navalplanner.business.planner.entities.consolidations.NonCalculatedConsolidatedValue;
import org.navalplanner.business.planner.entities.consolidations.NonCalculatedConsolidation;
import org.navalplanner.business.planner.entities.consolidations.PendingConsolidatedHoursPerResourceAllocation;
import org.navalplanner.web.planner.order.PlanningState;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.config.BeanDefinition;
@ -255,19 +254,13 @@ public class AdvanceConsolidationModel implements IAdvanceConsolidationModel {
AdvanceConsolidationDTO dto) {
if (consolidation != null && task != null) {
Set<PendingConsolidatedHoursPerResourceAllocation> pendingConsolidatedHours = ConsolidatedValue
.createPendingConsolidatedHours(LocalDate
.fromDateFields(dto.getDate()), dto.getValue(),
task.getAllResourceAllocations());
if (consolidation.isCalculated()) {
return CalculatedConsolidatedValue.create(LocalDate
.fromDateFields(dto.getDate()), dto.getValue(),
pendingConsolidatedHours);
.fromDateFields(dto.getDate()), dto.getValue());
} else {
return NonCalculatedConsolidatedValue.create(LocalDate
.fromDateFields(dto.getDate()), dto.getValue(), dto
.getAdvanceMeasurement(), pendingConsolidatedHours);
.getAdvanceMeasurement());
}
}
return null;
@ -346,10 +339,7 @@ public class AdvanceConsolidationModel implements IAdvanceConsolidationModel {
spreadAdvance = orderElement.getReportGlobalAdvanceAssignment();
consolidation = task.getConsolidation();
if (consolidation != null) {
for (ConsolidatedValue consolidatedValue : consolidation
.getConsolidatedValues()) {
consolidatedValue.getPendingConsolidatedHours().size();
}
consolidation.getConsolidatedValues().size();
}
if (spreadAdvance != null) {

View file

@ -43,7 +43,6 @@ import org.navalplanner.business.planner.entities.DayAssignment;
import org.navalplanner.business.planner.entities.ResourceAllocation;
import org.navalplanner.business.planner.entities.Task;
import org.navalplanner.business.planner.entities.TaskElement;
import org.navalplanner.business.planner.entities.consolidations.ConsolidatedValue;
import org.navalplanner.business.planner.entities.consolidations.Consolidation;
import org.navalplanner.business.resources.daos.IResourceDAO;
import org.navalplanner.business.resources.entities.Resource;
@ -93,10 +92,7 @@ public class AdvancedAllocationTabCreator {
private void loadConsolidationRelatedData(Task task) {
Consolidation consolidation = task.getConsolidation();
if (consolidation != null) {
for (ConsolidatedValue consolidatedValue : consolidation
.getConsolidatedValues()) {
consolidatedValue.getPendingConsolidatedHours().size();
}
consolidation.getConsolidatedValues().size();
}
}