Bug #1403: Only regenerate codes if isCodeAutogenerated() is true
FEA: ItEr76S04BugFixing
This commit is contained in:
parent
f50806e51e
commit
16e3d1860e
2 changed files with 29 additions and 28 deletions
|
|
@ -421,32 +421,35 @@ public class Order extends OrderLineGroup implements Comparable {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void generateOrderElementCodes(int numberOfDigits) {
|
public void generateOrderElementCodes(int numberOfDigits) {
|
||||||
for (OrderElement orderElement : this.getAllOrderElements()) {
|
if (isCodeAutogenerated()) {
|
||||||
if ((orderElement.getCode() == null)
|
for (OrderElement orderElement : this.getAllOrderElements()) {
|
||||||
|| (orderElement.getCode().isEmpty())
|
if ((orderElement.getCode() == null)
|
||||||
|| (!orderElement.getCode().startsWith(this.getCode()))) {
|
|| (orderElement.getCode().isEmpty())
|
||||||
this.incrementLastOrderElementSequenceCode();
|
|| (!orderElement.getCode().startsWith(this.getCode()))) {
|
||||||
String orderElementCode = EntitySequence.formatValue(
|
this.incrementLastOrderElementSequenceCode();
|
||||||
numberOfDigits, this.getLastOrderElementSequenceCode());
|
String orderElementCode = EntitySequence.formatValue(
|
||||||
orderElement.setCode(this.getCode()
|
numberOfDigits,
|
||||||
+ EntitySequence.CODE_SEPARATOR_CHILDREN
|
this.getLastOrderElementSequenceCode());
|
||||||
+ orderElementCode);
|
orderElement.setCode(this.getCode()
|
||||||
}
|
+ EntitySequence.CODE_SEPARATOR_CHILDREN
|
||||||
|
+ orderElementCode);
|
||||||
|
}
|
||||||
|
|
||||||
if (orderElement instanceof OrderLine) {
|
if (orderElement instanceof OrderLine) {
|
||||||
for (HoursGroup hoursGroup : orderElement.getHoursGroups()) {
|
for (HoursGroup hoursGroup : orderElement.getHoursGroups()) {
|
||||||
if ((hoursGroup.getCode() == null)
|
if ((hoursGroup.getCode() == null)
|
||||||
|| (hoursGroup.getCode().isEmpty())
|
|| (hoursGroup.getCode().isEmpty())
|
||||||
|| (!hoursGroup.getCode().startsWith(
|
|| (!hoursGroup.getCode().startsWith(
|
||||||
orderElement.getCode()))) {
|
orderElement.getCode()))) {
|
||||||
((OrderLine) orderElement)
|
((OrderLine) orderElement)
|
||||||
.incrementLastHoursGroupSequenceCode();
|
.incrementLastHoursGroupSequenceCode();
|
||||||
String hoursGroupCode = EntitySequence.formatValue(
|
String hoursGroupCode = EntitySequence.formatValue(
|
||||||
numberOfDigits, ((OrderLine) orderElement)
|
numberOfDigits, ((OrderLine) orderElement)
|
||||||
.getLastHoursGroupSequenceCode());
|
.getLastHoursGroupSequenceCode());
|
||||||
hoursGroup.setCode(orderElement.getCode()
|
hoursGroup.setCode(orderElement.getCode()
|
||||||
+ EntitySequence.CODE_SEPARATOR_CHILDREN
|
+ EntitySequence.CODE_SEPARATOR_CHILDREN
|
||||||
+ hoursGroupCode);
|
+ hoursGroupCode);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -332,9 +332,7 @@ public class SaveCommandBuilder {
|
||||||
|
|
||||||
private void doTheSaving() {
|
private void doTheSaving() {
|
||||||
Order order = state.getOrder();
|
Order order = state.getOrder();
|
||||||
if (order.isCodeAutogenerated()) {
|
generateOrderElementCodes(order);
|
||||||
generateOrderElementCodes(order);
|
|
||||||
}
|
|
||||||
createAdvancePercentagesIfRequired(order);
|
createAdvancePercentagesIfRequired(order);
|
||||||
calculateAndSetTotalHours(order);
|
calculateAndSetTotalHours(order);
|
||||||
checkConstraintOrderUniqueCode(order);
|
checkConstraintOrderUniqueCode(order);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue