ItEr44S20CUActualizarTraballoExportadoPorSubcontrata: Created new field communicationDate that will be reseted every time the date or value of an AdvanceMeasurement is modified.

This commit is contained in:
Manuel Rego Casasnovas 2010-01-25 17:23:25 +01:00 committed by Javier Moran Rua
parent 0798fd2d94
commit a06f7f942e
2 changed files with 26 additions and 0 deletions

View file

@ -21,6 +21,7 @@
package org.navalplanner.business.advance.entities;
import java.math.BigDecimal;
import java.util.Date;
import org.hibernate.validator.NotNull;
import org.joda.time.LocalDate;
@ -47,6 +48,8 @@ public class AdvanceMeasurement extends BaseEntity {
private AdvanceAssignment advanceAssignment;
private Date communicationDate;
public AdvanceMeasurement() {
}
@ -60,6 +63,7 @@ public class AdvanceMeasurement extends BaseEntity {
public void setDate(LocalDate date) {
this.date = date;
resetCommunicationDate();
}
@NotNull(message = "date not specified")
@ -72,6 +76,7 @@ public class AdvanceMeasurement extends BaseEntity {
if (value != null) {
this.value.setScale(2);
}
resetCommunicationDate();
}
@NotNull(message = "value not specified")
@ -88,4 +93,24 @@ public class AdvanceMeasurement extends BaseEntity {
return this.advanceAssignment;
}
public Date getCommunicationDate() {
return communicationDate;
}
/**
* Just set the communication date if it was <code>null</code>. Otherwise
* keep the old value stored.
*
* @param communicationDate
*/
public void updateCommunicationDate(Date communicationDate) {
if ((this.communicationDate == null) && (communicationDate != null)) {
this.communicationDate = communicationDate;
}
}
private void resetCommunicationDate() {
communicationDate = null;
}
}

View file

@ -70,6 +70,7 @@
<property name="date" access="field" type="org.joda.time.contrib.hibernate.PersistentLocalDate" />
<property name="value" scale="2" access="field" />
<many-to-one name="advanceAssignment" class="AdvanceAssignment" column="ADVANCE_ASSIGNMENT_ID" access="field" />
<property name="communicationDate" access="field" />
</class>
<class name="AdvanceAssignmentTemplate">