ItEr44S10CUGravacionModelosUnidadesTraballoItEr43S12: Copying template materials to order element
This commit is contained in:
parent
213e15d7a0
commit
6e680720e2
3 changed files with 21 additions and 0 deletions
|
|
@ -67,6 +67,14 @@ public class MaterialAssignment extends BaseEntity implements Comparable {
|
|||
return result;
|
||||
}
|
||||
|
||||
public static MaterialAssignment createFrom(MaterialInfo materialInfo,
|
||||
OrderElement element) {
|
||||
MaterialAssignment result = create();
|
||||
result.materialInfo = materialInfo.copy();
|
||||
result.orderElement = element;
|
||||
return result;
|
||||
}
|
||||
|
||||
@Valid
|
||||
public MaterialInfo getMaterialInfo() {
|
||||
if (materialInfo == null) {
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ package org.navalplanner.business.materials.entities;
|
|||
import java.math.BigDecimal;
|
||||
|
||||
import org.navalplanner.business.common.BaseEntity;
|
||||
import org.navalplanner.business.orders.entities.OrderElement;
|
||||
import org.navalplanner.business.templates.entities.OrderElementTemplate;
|
||||
|
||||
/**
|
||||
|
|
@ -119,4 +120,8 @@ public class MaterialAssignmentTemplate extends BaseEntity implements
|
|||
return getMaterial().compareTo(o.getMaterial());
|
||||
}
|
||||
|
||||
public MaterialAssignment createAssignment(OrderElement element) {
|
||||
return MaterialAssignment.createFrom(materialInfo, element);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -127,6 +127,7 @@ public abstract class OrderElementTemplate extends BaseEntity implements
|
|||
protected <T extends OrderElement> T setupElementParts(T orderElement) {
|
||||
setupInfoComponent(orderElement);
|
||||
setupDates(orderElement);
|
||||
setupMaterialAssignments(orderElement);
|
||||
return orderElement;
|
||||
}
|
||||
|
||||
|
|
@ -153,6 +154,13 @@ public abstract class OrderElementTemplate extends BaseEntity implements
|
|||
return localDate.plusDays(days).toDateTimeAtStartOfDay().toDate();
|
||||
}
|
||||
|
||||
private void setupMaterialAssignments(OrderElement orderElement) {
|
||||
for (MaterialAssignmentTemplate each : materialAssignments) {
|
||||
orderElement.addMaterialAssignment(each
|
||||
.createAssignment(orderElement));
|
||||
}
|
||||
}
|
||||
|
||||
public abstract OrderElement createElement();
|
||||
|
||||
public abstract OrderElement createElement(OrderLineGroup parent);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue