creates a new field in the SubcontratedTaskData to store the collection of subcontrator delivering dates.
FEA: ItEr75S32AnA15S04UpdateDeliveringDateInSubcontracting
This commit is contained in:
parent
e00ef6d40d
commit
9a82aeb6af
6 changed files with 42 additions and 7 deletions
|
|
@ -92,6 +92,9 @@ public class SubcontractedTaskData extends BaseEntity {
|
|||
|
||||
private SubcontractState state = SubcontractState.PENDING;
|
||||
|
||||
private final SortedSet<SubcontractorDeliverDate> requiredDeliveringDates = new TreeSet<SubcontractorDeliverDate>(
|
||||
new DeliverDateComparator());
|
||||
|
||||
/**
|
||||
* Constructor for hibernate. Do not use!
|
||||
*/
|
||||
|
|
@ -252,4 +255,13 @@ public class SubcontractedTaskData extends BaseEntity {
|
|||
&& externalCompany.getInteractsWithApplications();
|
||||
}
|
||||
|
||||
public void setRequiredDeliveringDates(SortedSet<SubcontractorDeliverDate> requiredDeliveringDates) {
|
||||
this.requiredDeliveringDates.clear();
|
||||
this.requiredDeliveringDates.addAll(requiredDeliveringDates);
|
||||
}
|
||||
|
||||
public SortedSet<SubcontractorDeliverDate> getRequiredDeliveringDates() {
|
||||
return requiredDeliveringDates;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -124,4 +124,10 @@
|
|||
</createTable>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="smontes" id="add-subcontracted-task-data">
|
||||
<comment>Add the column subcontracted_task_id to maintain the relation</comment>
|
||||
<addColumn tableName="subcontractor_deliver_date">
|
||||
<column name="subcontracted_task_data_id" type="BIGINT"/>
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@
|
|||
<property name="reviewed" access="field" column="reviewed" />
|
||||
<many-to-one name="subcontractedTaskData"
|
||||
class="org.libreplan.business.planner.entities.SubcontractedTaskData"
|
||||
column="Subcontracted_task_data" />
|
||||
column="subcontracted_task_data" />
|
||||
|
||||
<list name="subcontractorCommunicationValues" table="subcontractor_communication_values">
|
||||
<key column="subcontractor_communication_id" />
|
||||
|
|
|
|||
|
|
@ -212,6 +212,12 @@
|
|||
</type>
|
||||
</property>
|
||||
|
||||
<set name="requiredDeliveringDates" inverse="true" cascade="all-delete-orphan" access="field"
|
||||
sort="org.libreplan.business.externalcompanies.entities.DeliverDateComparator">
|
||||
<key column="subcontracted_task_data_id" />
|
||||
<one-to-many class="org.libreplan.business.planner.entities.SubcontractorDeliverDate" />
|
||||
</set>
|
||||
|
||||
</class>
|
||||
|
||||
</hibernate-mapping>
|
||||
|
|
|
|||
|
|
@ -230,10 +230,24 @@ public class SubcontractorCommunicationDAOTest {
|
|||
throws InstanceNotFoundException {
|
||||
SubcontractorCommunication customerCommunication = createValidSubcontractorCommunication();
|
||||
subcontractorCommunicationDAO.save(customerCommunication);
|
||||
|
||||
assertTrue(customerCommunication.getId() != null);
|
||||
Long idSubcontratecTaskData = customerCommunication.getSubcontractedTaskData().getId();
|
||||
Long idCommunication = customerCommunication.getId();
|
||||
|
||||
subcontractorCommunicationDAO.remove(customerCommunication.getId());
|
||||
assertFalse(subcontractorCommunicationDAO
|
||||
.exists(customerCommunication.getId()));
|
||||
|
||||
try{
|
||||
subcontractorCommunicationDAO.findExistingEntity(idCommunication);
|
||||
fail("error");
|
||||
}catch(RuntimeException e){
|
||||
//ok
|
||||
}
|
||||
try{
|
||||
subcontractedTaskDataDAO.findExistingEntity(idSubcontratecTaskData);
|
||||
}catch(RuntimeException e){
|
||||
fail("error");
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
|
|||
|
|
@ -237,6 +237,7 @@ public class ReportAdvancesServiceTest {
|
|||
public void validAdvancesReportToSubcontratedOrderElement() {
|
||||
int previousCommunications = subcontractorCommunicationDAO.getAll().size();
|
||||
OrderLine orderLine = createOrderLine();
|
||||
|
||||
String orderElementCode = orderLine.getCode();
|
||||
|
||||
Map<LocalDate, BigDecimal> values = givenValidMapValues(1, 0,
|
||||
|
|
@ -244,7 +245,6 @@ public class ReportAdvancesServiceTest {
|
|||
|
||||
OrderElementWithAdvanceMeasurementsListDTO orderElementWithAdvanceMeasurementsListDTO = givenOrderElementWithAdvanceMeasurementsListDTO(
|
||||
orderElementCode, values);
|
||||
SubcontractorCommunication subcontractorCommunication = SubcontractorCommunication.create();
|
||||
reportAdvancesService
|
||||
.updateAdvances(orderElementWithAdvanceMeasurementsListDTO);
|
||||
|
||||
|
|
@ -439,9 +439,6 @@ public class ReportAdvancesServiceTest {
|
|||
task.dontPoseAsTransientObjectAnymore();
|
||||
taskElementDAO.flush();
|
||||
|
||||
sessionFactory.getCurrentSession().evict(task);
|
||||
sessionFactory.getCurrentSession().evict(subcontractedTaskData);
|
||||
|
||||
subcontractedTaskDataDAO.save(subcontractedTaskData);
|
||||
return subcontractedTaskData;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue