Author: jleroux
Date: Mon Feb 24 10:23:19 2014 New Revision: 1571213 URL: http://svn.apache.org/r1571213 Log: Reverts r1571198, there was too much unwanted changes due to my "Save Actions" setting in Eclipse. Better to keep things clear! Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartItem.java Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartItem.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartItem.java?rev=1571213&r1=1571212&r2=1571213&view=diff ============================================================================== --- ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartItem.java (original) +++ ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartItem.java Mon Feb 24 10:23:19 2014 @@ -79,7 +79,7 @@ public class ShoppingCartItem implements public static final String resource = "OrderUiLabels"; public static final String resource_error = "OrderErrorUiLabels"; public static String[] attributeNames = { "shoppingListId", "shoppingListItemSeqId", "surveyResponses", - "itemDesiredDeliveryDate", "itemComment", "fromInventoryItemId"}; + "itemDesiredDeliveryDate", "itemComment", "fromInventoryItemId"}; public static final MathContext generalRounding = new MathContext(10); @@ -143,7 +143,7 @@ public class ShoppingCartItem implements private Map<String, String> contactMechIdsMap = FastMap.newInstance(); private List<GenericValue> orderItemPriceInfos = null; - private final List<GenericValue> itemAdjustments = FastList.newInstance(); + private List<GenericValue> itemAdjustments = FastList.newInstance(); private boolean isPromo = false; private BigDecimal promoQuantityUsed = BigDecimal.ZERO; private Map<GenericPK, BigDecimal> quantityUsedPerPromoCandidate = new HashMap<GenericPK, BigDecimal>(); @@ -177,7 +177,7 @@ public class ShoppingCartItem implements public static ShoppingCartItem makePurchaseOrderItem(Integer cartLocation, String productId, BigDecimal selectedAmount, BigDecimal quantity, Map<String, GenericValue> additionalProductFeatureAndAppls, Map<String, Object> attributes, String prodCatalogId, ProductConfigWrapper configWrapper, String itemType, ShoppingCart.ShoppingCartItemGroup itemGroup, LocalDispatcher dispatcher, ShoppingCart cart, GenericValue supplierProduct, Timestamp shipBeforeDate, Timestamp shipAfterDate, Timestamp cancelBackOrderDate) - throws CartItemModifyException, ItemNotFoundException { + throws CartItemModifyException, ItemNotFoundException { Delegator delegator = cart.getDelegator(); GenericValue product = null; @@ -191,7 +191,7 @@ public class ShoppingCartItem implements Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productId", productId); String excMsg = UtilProperties.getMessage(resource_error, "item.product_not_found", - messageMap , cart.getLocale()); + messageMap , cart.getLocale()); Debug.logWarning(excMsg, module); throw new ItemNotFoundException(excMsg); @@ -201,10 +201,10 @@ public class ShoppingCartItem implements // check to see if product is virtual if ("Y".equals(product.getString("isVirtual"))) { Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productName", product.getString("productName"), - "productId", product.getString("productId")); + "productId", product.getString("productId")); String excMsg = UtilProperties.getMessage(resource_error, "item.cannot_add_product_virtual", - messageMap , cart.getLocale()); + messageMap , cart.getLocale()); Debug.logWarning(excMsg, module); throw new CartItemModifyException(excMsg); @@ -216,10 +216,10 @@ public class ShoppingCartItem implements if ("AGGREGATED".equals(product.getString("productTypeId")) || "AGGREGATED_SERVICE".equals(product.getString("productTypeId"))) { if (configWrapper == null || !configWrapper.isCompleted()) { Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productName", product.getString("productName"), - "productId", product.getString("productId")); + "productId", product.getString("productId")); String excMsg = UtilProperties.getMessage(resource_error, "item.cannot_add_product_not_configured_correctly", - messageMap , cart.getLocale()); + messageMap , cart.getLocale()); Debug.logWarning(excMsg, module); throw new CartItemModifyException(excMsg); @@ -298,7 +298,7 @@ public class ShoppingCartItem implements Timestamp reservStart, BigDecimal reservLength, BigDecimal reservPersons, Timestamp shipBeforeDate, Timestamp shipAfterDate, Map<String, GenericValue> additionalProductFeatureAndAppls, Map<String, Object> attributes, String prodCatalogId, ProductConfigWrapper configWrapper, String itemType, ShoppingCart.ShoppingCartItemGroup itemGroup, LocalDispatcher dispatcher, ShoppingCart cart, Boolean triggerExternalOpsBool, Boolean triggerPriceRulesBool, String parentProductId, Boolean skipInventoryChecks, Boolean skipProductChecks) - throws CartItemModifyException, ItemNotFoundException { + throws CartItemModifyException, ItemNotFoundException { return makeItem(cartLocation,productId,selectedAmount,quantity,unitPrice, reservStart,reservLength,reservPersons,null,null,shipBeforeDate,shipAfterDate, @@ -317,7 +317,7 @@ public class ShoppingCartItem implements Timestamp reservStart, BigDecimal reservLength, BigDecimal reservPersons,String accommodationMapId,String accommodationSpotId, Timestamp shipBeforeDate, Timestamp shipAfterDate, Map<String, GenericValue> additionalProductFeatureAndAppls, Map<String, Object> attributes, String prodCatalogId, ProductConfigWrapper configWrapper, String itemType, ShoppingCart.ShoppingCartItemGroup itemGroup, LocalDispatcher dispatcher, ShoppingCart cart, Boolean triggerExternalOpsBool, Boolean triggerPriceRulesBool, String parentProductId, Boolean skipInventoryChecks, Boolean skipProductChecks) - throws CartItemModifyException, ItemNotFoundException { + throws CartItemModifyException, ItemNotFoundException { Delegator delegator = cart.getDelegator(); GenericValue product = findProduct(delegator, skipProductChecks.booleanValue(), prodCatalogId, productId, cart.getLocale()); GenericValue parentProduct = null; @@ -373,17 +373,17 @@ public class ShoppingCartItem implements ShoppingCart cart, Boolean triggerExternalOpsBool, Boolean triggerPriceRulesBool, GenericValue parentProduct, Boolean skipInventoryChecks, Boolean skipProductChecks) throws CartItemModifyException { return makeItem(cartLocation,product,selectedAmount, - quantity,unitPrice,reservStart,reservLength,reservPersons, - null,null,shipBeforeDate,shipAfterDate,additionalProductFeatureAndAppls,attributes, - prodCatalogId,configWrapper,itemType,itemGroup,dispatcher,cart, - triggerExternalOpsBool,triggerPriceRulesBool,parentProduct,skipInventoryChecks,skipProductChecks); + quantity,unitPrice,reservStart,reservLength,reservPersons, + null,null,shipBeforeDate,shipAfterDate,additionalProductFeatureAndAppls,attributes, + prodCatalogId,configWrapper,itemType,itemGroup,dispatcher,cart, + triggerExternalOpsBool,triggerPriceRulesBool,parentProduct,skipInventoryChecks,skipProductChecks); } /** * Makes a ShoppingCartItem and adds it to the cart. * @param accommodationMapId Optional. reservations add into workeffort * @param accommodationSpotId Optional. reservations add into workeffort - */ + */ public static ShoppingCartItem makeItem(Integer cartLocation, GenericValue product, BigDecimal selectedAmount, BigDecimal quantity, BigDecimal unitPrice, Timestamp reservStart, BigDecimal reservLength, BigDecimal reservPersons, String accommodationMapId,String accommodationSpotId, @@ -392,7 +392,7 @@ public class ShoppingCartItem implements ShoppingCart cart, Boolean triggerExternalOpsBool, Boolean triggerPriceRulesBool, GenericValue parentProduct, Boolean skipInventoryChecks, Boolean skipProductChecks) throws CartItemModifyException { ShoppingCartItem newItem = new ShoppingCartItem(product, additionalProductFeatureAndAppls, attributes, prodCatalogId, configWrapper, cart.getLocale(), itemType, itemGroup, parentProduct); - + selectedAmount = selectedAmount == null ? BigDecimal.ZERO : selectedAmount; unitPrice = unitPrice == null ? BigDecimal.ZERO : unitPrice; reservLength = reservLength == null ? BigDecimal.ZERO : reservLength; @@ -403,10 +403,10 @@ public class ShoppingCartItem implements // check to see if product is virtual if ("Y".equals(product.getString("isVirtual"))) { Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productName", product.getString("productName"), - "productId", product.getString("productId")); + "productId", product.getString("productId")); String excMsg = UtilProperties.getMessage(resource_error, "item.cannot_add_product_virtual", - messageMap , cart.getLocale()); + messageMap , cart.getLocale()); Debug.logWarning(excMsg, module); throw new CartItemModifyException(excMsg); @@ -422,55 +422,55 @@ public class ShoppingCartItem implements if ("ASSET_USAGE".equals(product.getString("productTypeId")) || "ASSET_USAGE_OUT_IN".equals(product.getString("productTypeId"))) { if (reservStart == null) { String excMsg = UtilProperties.getMessage(resource_error, "item.missing_reservation_starting_date", - cart.getLocale()); + cart.getLocale()); throw new CartItemModifyException(excMsg); } if (reservStart.before(UtilDateTime.nowTimestamp())) { String excMsg = UtilProperties.getMessage(resource_error, "item.reservation_from_tomorrow", - cart.getLocale()); + cart.getLocale()); throw new CartItemModifyException(excMsg); } newItem.setReservStart(reservStart); if (reservLength.compareTo(BigDecimal.ONE) < 0) { String excMsg = UtilProperties.getMessage(resource_error, "item.number_of_days", - cart.getLocale()); + cart.getLocale()); throw new CartItemModifyException(excMsg); } newItem.setReservLength(reservLength); if (product.get("reservMaxPersons") != null) { BigDecimal reservMaxPersons = product.getBigDecimal("reservMaxPersons"); - if (reservMaxPersons.compareTo(reservPersons) < 0) { - Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("reservMaxPersons", product.getString("reservMaxPersons"), - "reservPersons", reservPersons); - String excMsg = UtilProperties.getMessage(resource_error, "item.maximum_number_of_person_renting", - messageMap, cart.getLocale()); + if (reservMaxPersons.compareTo(reservPersons) < 0) { + Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("reservMaxPersons", product.getString("reservMaxPersons"), + "reservPersons", reservPersons); + String excMsg = UtilProperties.getMessage(resource_error, "item.maximum_number_of_person_renting", + messageMap, cart.getLocale()); + + Debug.logInfo(excMsg,module); + throw new CartItemModifyException(excMsg); + } + } + newItem.setReservPersons(reservPersons); - Debug.logInfo(excMsg,module); - throw new CartItemModifyException(excMsg); - } - } - newItem.setReservPersons(reservPersons); + if (product.get("reserv2ndPPPerc") != null) + newItem.setReserv2ndPPPerc(product.getBigDecimal("reserv2ndPPPerc")); - if (product.get("reserv2ndPPPerc") != null) - newItem.setReserv2ndPPPerc(product.getBigDecimal("reserv2ndPPPerc")); + if (product.get("reservNthPPPerc") != null) + newItem.setReservNthPPPerc(product.getBigDecimal("reservNthPPPerc")); - if (product.get("reservNthPPPerc") != null) - newItem.setReservNthPPPerc(product.getBigDecimal("reservNthPPPerc")); - - if ((accommodationMapId != null) && (accommodationSpotId != null)) { + if ((accommodationMapId != null) && (accommodationSpotId != null)) { newItem.setAccommodationId(accommodationMapId,accommodationSpotId); - } + } // check to see if the related fixed asset is available for rent String isAvailable = checkAvailability(product.getString("productId"), quantity, reservStart, reservLength, cart); if (isAvailable.compareTo("OK") != 0) { Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productId", product.getString("productId"), - "availableMessage", isAvailable); + "availableMessage", isAvailable); String excMsg = UtilProperties.getMessage(resource_error, "item.product_not_available", - messageMap, cart.getLocale()); + messageMap, cart.getLocale()); Debug.logInfo(excMsg, module); throw new CartItemModifyException(isAvailable); } @@ -542,30 +542,30 @@ public class ShoppingCartItem implements } public static void isValidCartProduct(ProductConfigWrapper configWrapper, GenericValue product, Timestamp nowTimestamp, Locale locale) throws CartItemModifyException { - // check to see if introductionDate hasn't passed yet - if (product.get("introductionDate") != null && nowTimestamp.before(product.getTimestamp("introductionDate"))) { - Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productName", product.getString("productName"), - "productId", product.getString("productId")); + // check to see if introductionDate hasn't passed yet + if (product.get("introductionDate") != null && nowTimestamp.before(product.getTimestamp("introductionDate"))) { + Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productName", product.getString("productName"), + "productId", product.getString("productId")); - String excMsg = UtilProperties.getMessage(resource_error, "item.cannot_add_product_not_yet_available", - messageMap , locale); + String excMsg = UtilProperties.getMessage(resource_error, "item.cannot_add_product_not_yet_available", + messageMap , locale); - Debug.logWarning(excMsg, module); - throw new CartItemModifyException(excMsg); - } + Debug.logWarning(excMsg, module); + throw new CartItemModifyException(excMsg); + } - // check to see if salesDiscontinuationDate has passed - if (product.get("salesDiscontinuationDate") != null && nowTimestamp.after(product.getTimestamp("salesDiscontinuationDate"))) { - Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productName", product.getString("productName"), - "productId", product.getString("productId")); + // check to see if salesDiscontinuationDate has passed + if (product.get("salesDiscontinuationDate") != null && nowTimestamp.after(product.getTimestamp("salesDiscontinuationDate"))) { + Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productName", product.getString("productName"), + "productId", product.getString("productId")); - String excMsg = UtilProperties.getMessage(resource_error, "item.cannot_add_product_no_longer_available", - messageMap , locale); + String excMsg = UtilProperties.getMessage(resource_error, "item.cannot_add_product_no_longer_available", + messageMap , locale); - Debug.logWarning(excMsg, module); - throw new CartItemModifyException(excMsg); - } - /* + Debug.logWarning(excMsg, module); + throw new CartItemModifyException(excMsg); + } + /* if (product.get("salesDiscWhenNotAvail") != null && "Y".equals(product.getString("salesDiscWhenNotAvail"))) { // check atp and if <= 0 then the product is no more available because // all the units in warehouse are reserved by other sales orders and no new purchase orders will be done @@ -581,19 +581,19 @@ public class ShoppingCartItem implements throw new CartItemModifyException(excMsg); } } - */ + */ - // check to see if the product is fully configured - if ("AGGREGATED".equals(product.getString("productTypeId"))|| "AGGREGATED_SERVICE".equals(product.getString("productTypeId"))) { - if (configWrapper == null || !configWrapper.isCompleted()) { - Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productName", product.getString("productName"), - "productId", product.getString("productId")); - String excMsg = UtilProperties.getMessage(resource_error, "item.cannot_add_product_not_configured_correctly", - messageMap , locale); - Debug.logWarning(excMsg, module); - throw new CartItemModifyException(excMsg); + // check to see if the product is fully configured + if ("AGGREGATED".equals(product.getString("productTypeId"))|| "AGGREGATED_SERVICE".equals(product.getString("productTypeId"))) { + if (configWrapper == null || !configWrapper.isCompleted()) { + Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productName", product.getString("productName"), + "productId", product.getString("productId")); + String excMsg = UtilProperties.getMessage(resource_error, "item.cannot_add_product_not_configured_correctly", + messageMap , locale); + Debug.logWarning(excMsg, module); + throw new CartItemModifyException(excMsg); + } } - } } /** @@ -728,7 +728,7 @@ public class ShoppingCartItem implements /** Creates new ShoppingCartItem object. */ protected ShoppingCartItem(GenericValue product, Map<String, GenericValue> additionalProductFeatureAndAppls, Map<String, Object> attributes, String prodCatalogId, Locale locale, String itemType, ShoppingCart.ShoppingCartItemGroup itemGroup) { this(product, additionalProductFeatureAndAppls, attributes, prodCatalogId, null, locale, itemType, itemGroup, null); - if (product != null) { + if (product != null) { String productName = ProductContentWrapper.getProductContentAsText(product, "PRODUCT_NAME", this.locale, null); // if the productName is null or empty, see if there is an associated virtual product and get the productName of that product if (UtilValidate.isEmpty(productName)) { @@ -947,7 +947,7 @@ public class ShoppingCartItem implements return msg; } else { Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("quantityReq", quantity, - "quantityAvail", fixedAsset.getString("productionCapacity")); + "quantityAvail", fixedAsset.getString("productionCapacity")); String msg = UtilProperties.getMessage(resource_error, "item.availableQnt", messageMap , cart.getLocale()); return msg; } @@ -1027,7 +1027,7 @@ public class ShoppingCartItem implements if (this.isPromo) { Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("productName", this.getName(), - "productId", productId); + "productId", productId); String excMsg = UtilProperties.getMessage(resource, "OrderCannotChangeQuantityInPromotion", messageMap , cart.getLocale()); throw new CartItemModifyException(excMsg); } @@ -1040,8 +1040,8 @@ public class ShoppingCartItem implements if (_product != null && quantity.compareTo(this.quantity) > 0) { if (!isInventoryAvailableOrNotRequired(quantity, productStoreId, dispatcher)) { Map<String, Object> messageMap = UtilMisc.<String, Object>toMap("requestedQuantity", UtilFormatOut.formatQuantity(quantity.doubleValue()), - "productName", this.getName(), - "productId", productId); + "productName", this.getName(), + "productId", productId); String excMsg = UtilProperties.getMessage(resource, "OrderDoNotHaveEnoughProducts", messageMap , cart.getLocale()); Debug.logWarning(excMsg, module); throw new CartItemModifyException(excMsg); @@ -1132,7 +1132,7 @@ public class ShoppingCartItem implements } } cart.setItemShipGroupQty(this, quantity, shipGroupIndex); - */ + */ cart.setItemShipGroupQty(this, quantity, 0); } } @@ -1158,10 +1158,10 @@ public class ShoppingCartItem implements }else{ priceContext.put("product", this.getProduct()); } - + priceContext.put("quantity", this.getQuantity()); priceContext.put("amount", this.getSelectedAmount()); - + if (cart.getOrderType().equals("PURCHASE_ORDER")) { priceContext.put("currencyUomId", cart.getCurrency()); Map<String, Object> priceResult = dispatcher.runSync("calculatePurchasePrice", priceContext); @@ -1172,13 +1172,13 @@ public class ShoppingCartItem implements if (!validPriceFound.booleanValue()) { throw new CartItemModifyException("Could not find a valid price for the product with ID [" + this.getProductId() + "] and supplier with ID [" + partyId + "], not adding to cart."); } - + if(isAlternativePacking){ this.setBasePrice(((BigDecimal) priceResult.get("price")).divide(pieces, RoundingMode.HALF_UP)); }else{ this.setBasePrice(((BigDecimal) priceResult.get("price"))); } - + this.setDisplayPrice(this.basePrice); this.orderItemPriceInfos = UtilGenerics.checkList(priceResult.get("orderItemPriceInfos")); } else { @@ -1221,7 +1221,7 @@ public class ShoppingCartItem implements if (Boolean.FALSE.equals(validPriceFound)) { throw new CartItemModifyException("Could not find a valid price for the product with ID [" + this.getProductId() + "], not adding to cart."); } - + //set alternative product price if(isAlternativePacking){ int decimals = 2; @@ -1252,10 +1252,10 @@ public class ShoppingCartItem implements if (priceResult.get("price") != null) { this.setDisplayPrice(((BigDecimal) priceResult.get("price"))); } - + this.setSpecialPromoPrice((BigDecimal) priceResult.get("specialPromoPrice")); } - + this.orderItemPriceInfos = UtilGenerics.checkList(priceResult.get("orderItemPriceInfos")); // If product is configurable, the price is taken from the configWrapper. @@ -1312,7 +1312,7 @@ public class ShoppingCartItem implements /** Returns the reservation start date with a number of days added. */ public Timestamp getReservStart(BigDecimal addDays) { if (addDays.compareTo(BigDecimal.ZERO) == 0) - return this.reservStart; + return this.reservStart; else { if (this.reservStart != null) return new Timestamp((long)(this.reservStart.getTime() + (addDays.doubleValue() * 86400000.0))); @@ -1751,26 +1751,26 @@ public class ShoppingCartItem implements } /** Returns the item's description. */ public String getName() { - if (itemDescription != null) { - return itemDescription; - } else { - GenericValue product = getProduct(); - if (product != null) { - String productName = ProductContentWrapper.getProductContentAsText(product, "PRODUCT_NAME", this.locale, null); - // if the productName is null or empty, see if there is an associated virtual product and get the productName of that product - if (UtilValidate.isEmpty(productName)) { - GenericValue parentProduct = this.getParentProduct(); - if (parentProduct != null) { - productName = ProductContentWrapper.getProductContentAsText(parentProduct, "PRODUCT_NAME", this.locale, null); - } - } - if (productName == null) { - return ""; - } else { - return productName; + if (itemDescription != null) { + return itemDescription; + } else { + GenericValue product = getProduct(); + if (product != null) { + String productName = ProductContentWrapper.getProductContentAsText(product, "PRODUCT_NAME", this.locale, null); + // if the productName is null or empty, see if there is an associated virtual product and get the productName of that product + if (UtilValidate.isEmpty(productName)) { + GenericValue parentProduct = this.getParentProduct(); + if (parentProduct != null) { + productName = ProductContentWrapper.getProductContentAsText(parentProduct, "PRODUCT_NAME", this.locale, null); } - } else { + } + if (productName == null) { return ""; + } else { + return productName; + } + } else { + return ""; } } } @@ -1893,18 +1893,18 @@ public class ShoppingCartItem implements } /** Returns a List of the item's features for supplier*/ - public List<GenericValue> getFeaturesForSupplier(LocalDispatcher dispatcher,String partyId) { - List<GenericValue> featureAppls = getStandardFeatureList(); - if (UtilValidate.isNotEmpty(featureAppls)) { - try { - Map<String, Object> result = dispatcher.runSync("convertFeaturesForSupplier", UtilMisc.toMap("partyId", partyId, "productFeatures", featureAppls)); - featuresForSupplier = UtilGenerics.checkList(result.get("convertedProductFeatures")); - } catch (GenericServiceException e) { - Debug.logError(e, "Unable to get features for supplier from product : " + this.productId, module); - } - } - return featuresForSupplier; - } + public List<GenericValue> getFeaturesForSupplier(LocalDispatcher dispatcher,String partyId) { + List<GenericValue> featureAppls = getStandardFeatureList(); + if (UtilValidate.isNotEmpty(featureAppls)) { + try { + Map<String, Object> result = dispatcher.runSync("convertFeaturesForSupplier", UtilMisc.toMap("partyId", partyId, "productFeatures", featureAppls)); + featuresForSupplier = UtilGenerics.checkList(result.get("convertedProductFeatures")); + } catch (GenericServiceException e) { + Debug.logError(e, "Unable to get features for supplier from product : " + this.productId, module); + } + } + return featuresForSupplier; + } /** Returns the item's size (length + girth) */ public BigDecimal getSize() { @@ -2077,8 +2077,8 @@ public class ShoppingCartItem implements /** Returns the total line price. */ public BigDecimal getItemSubTotal(BigDecimal quantity) { - // Debug.logInfo("Price" + getBasePrice() + " quantity" + quantity + " Rental adj:" + getRentalAdjustment() + " other adj:" + getOtherAdjustments(), module); - return getBasePrice().multiply(quantity).multiply(getRentalAdjustment()).add(getOtherAdjustments()); +// Debug.logInfo("Price" + getBasePrice() + " quantity" + quantity + " Rental adj:" + getRentalAdjustment() + " other adj:" + getOtherAdjustments(), module); + return getBasePrice().multiply(quantity).multiply(getRentalAdjustment()).add(getOtherAdjustments()); } public BigDecimal getItemSubTotal() { @@ -2136,8 +2136,8 @@ public class ShoppingCartItem implements BigDecimal amount = (BigDecimal) additionalProductFeatureAndAppl.get("amount"); if (amount != null) { amount = amount.multiply(this.getQuantity()); - orderAdjustment.set("amount", amount); } + orderAdjustment.set("amount", amount); BigDecimal recurringAmount = (BigDecimal) additionalProductFeatureAndAppl.get("recurringAmount"); if (recurringAmount != null) { @@ -2146,10 +2146,6 @@ public class ShoppingCartItem implements //Debug.logInfo("Setting recurringAmount " + recurringAmount + " for " + orderAdjustment, module); } - if (amount == null && recurringAmount == null) { - Debug.logWarning("In putAdditionalProductFeatureAndAppl the amount and recurringAmount are null for this adjustment: " + orderAdjustment, module); - } - this.addAdjustment(orderAdjustment); } @@ -2185,7 +2181,6 @@ public class ShoppingCartItem implements featureAppls = product.getRelated("ProductFeatureAppl", null, null, false); List<EntityExpr> filterExprs = UtilMisc.toList(EntityCondition.makeCondition("productFeatureApplTypeId", EntityOperator.EQUALS, "STANDARD_FEATURE")); filterExprs.add(EntityCondition.makeCondition("productFeatureApplTypeId", EntityOperator.EQUALS, "REQUIRED_FEATURE")); - filterExprs.add(EntityCondition.makeCondition("productFeatureApplTypeId", EntityOperator.EQUALS, "DISTINGUISHING_FEAT")); featureAppls = EntityUtil.filterByOr(featureAppls, filterExprs); } catch (GenericEntityException e) { Debug.logError(e, "Unable to get features from product : " + product.get("productId"), module); @@ -2479,7 +2474,7 @@ public class ShoppingCartItem implements throw new IllegalStateException("Bad product id"); } - this._parentProduct = ProductWorker.getParentProduct(productId, this.getDelegator()); + this._parentProduct = ProductWorker.getParentProduct(productId, this.getDelegator()); return this._parentProduct; } |
Free forum by Nabble | Edit this page |