details: https://code.openbravo.com/erp/devel/pi/rev/5e025d9236b6 changeset: 32251:5e025d9236b6 user: Kepa Choperena <kepa.choperena <at> openbravo.com> date: Thu Jun 01 09:58:05 2017 +0200 summary: Backout 32250 changeset
diffstat: src/org/openbravo/erpCommon/businessUtility/CancelAndReplaceUtils.java | 25 +++------ 1 files changed, 8 insertions(+), 17 deletions(-) diffs (76 lines): diff -r 46a1af5af7c9 -r 5e025d9236b6 src/org/openbravo/erpCommon/businessUtility/CancelAndReplaceUtils.java --- a/src/org/openbravo/erpCommon/businessUtility/CancelAndReplaceUtils.java Wed May 31 17:51:54 2017 +0200 +++ b/src/org/openbravo/erpCommon/businessUtility/CancelAndReplaceUtils.java Thu Jun 01 09:58:05 2017 +0200 @@ -26,11 +26,10 @@ import java.util.HashMap; import java.util.List; -import javax.management.Query; - +import org.apache.log4j.Logger; import org.codehaus.jettison.json.JSONException; import org.codehaus.jettison.json.JSONObject; -import org.hibernate.LockOptions; +import org.hibernate.Query; import org.hibernate.ScrollMode; import org.hibernate.ScrollableResults; import org.hibernate.criterion.Restrictions; @@ -50,18 +49,21 @@ import org.openbravo.dal.service.OBCriteria; import org.openbravo.dal.service.OBDal; import org.openbravo.erpCommon.ad_forms.AcctServer; -import org.openbravo.erpCommon.info.AttributeSetInstance; import org.openbravo.erpCommon.utility.OBDateUtils; import org.openbravo.erpCommon.utility.OBMessageUtils; import org.openbravo.erpCommon.utility.PropertyException; import org.openbravo.erpCommon.utility.Utility; import org.openbravo.materialmgmt.ReservationUtils; import org.openbravo.model.ad.access.OrderLineTax; +import org.openbravo.model.common.enterprise.DocumentType; +import org.openbravo.model.common.enterprise.Locator; import org.openbravo.model.common.enterprise.Organization; import org.openbravo.model.common.order.Order; import org.openbravo.model.common.order.OrderLine; import org.openbravo.model.common.order.OrderLineOffer; import org.openbravo.model.common.order.OrderTax; +import org.openbravo.model.common.plm.AttributeSetInstance; +import org.openbravo.model.common.plm.Product; import org.openbravo.model.financialmgmt.payment.FIN_FinancialAccount; import org.openbravo.model.financialmgmt.payment.FIN_Payment; import org.openbravo.model.financialmgmt.payment.FIN_PaymentMethod; @@ -232,10 +234,9 @@ oldOrder = OBDal.getInstance().get(Order.class, orderId); oldOrderId = oldOrder.getId(); } - oldOrder = lockOrder(oldOrder); // Added check in case Cancel and Replace button is hit more than once - if (oldOrder.isCancelled()) { + if (jsonorder == null && oldOrder.isCancelled()) { throw new OBException(String.format(OBMessageUtils.messageBD("IsCancelled"), oldOrder.getDocumentNo())); } @@ -246,6 +247,7 @@ if (newOrderId != null) { newOrder = OBDal.getInstance().get(Order.class, newOrderId); } + oldOrder = OBDal.getInstance().get(Order.class, oldOrderId); // Get documentNo for the inverse Order Header coming from jsonorder, if exists String negativeDocNo = jsonorder != null && jsonorder.has("negativeDocNo") ? jsonorder @@ -1268,15 +1270,4 @@ return paymentSchedule; } - private static Order lockOrder(Order order) { - StringBuilder where = new StringBuilder("select c from " + Order.ENTITY_NAME - + " c where id = :id"); - final Session session = OBDal.getInstance().getSession(); - final Query query = session.createQuery(where.toString()); - query.setParameter("id", order.getId()); - query.setMaxResults(1); - query.setLockOptions(LockOptions.UPGRADE); - return (Order) query.uniqueResult(); - } - } ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Openbravo-commits mailing list Openbravo-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbravo-commits