From 195f918793f996bcdf024c87e07085a735b4c4a7 Mon Sep 17 00:00:00 2001 From: Manuel Rego Casasnovas Date: Fri, 22 Jan 2010 08:16:44 +0100 Subject: [PATCH] ItEr44S11CUImportarTraballoRealizadoPorSubcontrataItEr43S14: Storing information from SubcontractedTaskDataDTO in the proper fields of Order entity. --- .../impl/SubcontractServiceREST.java | 31 +++++++++++++------ 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/ws/subcontract/impl/SubcontractServiceREST.java b/navalplanner-webapp/src/main/java/org/navalplanner/ws/subcontract/impl/SubcontractServiceREST.java index c74f1b173..708642f71 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/ws/subcontract/impl/SubcontractServiceREST.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/ws/subcontract/impl/SubcontractServiceREST.java @@ -20,9 +20,10 @@ package org.navalplanner.ws.subcontract.impl; +import static org.navalplanner.web.I18nHelper._; + import java.util.ArrayList; import java.util.Arrays; -import java.util.Date; import java.util.List; import javax.ws.rs.Consumes; @@ -118,11 +119,14 @@ public class SubcontractServiceREST implements ISubcontractService { orderElementDTO, ConfigurationOrderElementConverter .noAdvanceMeasurements()); - if (!(orderElement instanceof Order)) { - orderElement = wrapInOrder(orderElement); + Order order; + if (orderElement instanceof Order) { + order = (Order) orderElement; + } else { + order = wrapInOrder(orderElement); } - orderElement.moveCodeToExternalCode(); + order.moveCodeToExternalCode(); String code = orderSequenceDAO.getNextOrderCode(); if (code == null) { return getErrorMessage( @@ -130,11 +134,18 @@ public class SubcontractServiceREST implements ISubcontractService { "unable to generate the code for the new order, please try again later"); } - orderElement.setCode(code); - generateCodes((Order) orderElement); + order.setCode(code); + generateCodes(order); - orderElement.validate(); - orderElementDAO.save(orderElement); + if (subcontractedTaskDataDTO.workDescription != null) { + order.setName(subcontractedTaskDataDTO.workDescription); + } + order.setCustomer(externalCompany); + order.setCustomerReference(subcontractedTaskDataDTO.subcontractedCode); + order.setWorkBudget(subcontractedTaskDataDTO.subcontractPrice); + + order.validate(); + orderElementDAO.save(order); } catch (ValidationException e) { instanceConstraintViolationsDTO = ConstraintViolationConverter .toDTO(Util.generateInstanceId(1, orderElementDTO.code), e @@ -165,8 +176,8 @@ public class SubcontractServiceREST implements ISubcontractService { Order order = Order.create(); order.add(orderElement); - order.setName("Order from client"); - order.setInitDate(new Date()); + order.setName(_("Order from client")); + order.setInitDate(orderElement.getInitDate()); order.setCalendar(getDefaultCalendar()); return order;