Author: doogie
Date: Wed Apr 21 19:46:01 2010 New Revision: 936467 URL: http://svn.apache.org/viewvc?rev=936467&view=rev Log: Add ability to have a cart that doesn't do any promotions, and when loading the cart from the database, and promotional items are being included, the flag gets set. Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartServices.java ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/product/ProductPromoWorker.java Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java?rev=936467&r1=936466&r2=936467&view=diff ============================================================================== --- ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java (original) +++ ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java Wed Apr 21 19:46:01 2010 @@ -140,6 +140,7 @@ public class ShoppingCart implements Ite private String delegatorName = null; protected String productStoreId = null; + protected boolean doPromotions = true; protected String transactionId = null; protected String facilityId = null; protected String webSiteId = null; @@ -177,6 +178,7 @@ public class ShoppingCart implements Ite this.delegator = cart.getDelegator(); this.delegatorName = delegator.getDelegatorName(); this.productStoreId = cart.getProductStoreId(); + this.doPromotions = cart.getDoPromotions(); this.poNumber = cart.getPoNumber(); this.orderId = cart.getOrderId(); this.orderName = "Copy of " + cart.getOrderName(); @@ -287,6 +289,14 @@ public class ShoppingCart implements Ite return this.productStoreId; } + public boolean getDoPromotions() { + return this.doPromotions; + } + + public void setDoPromotions(boolean doPromotions) { + this.doPromotions = doPromotions; + } + /** * This is somewhat of a dangerous method, changing the productStoreId changes a lot of stuff including: * - some items in the cart may not be valid in any catalog in the new store Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartServices.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartServices.java?rev=936467&r1=936466&r2=936467&view=diff ============================================================================== --- ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartServices.java (original) +++ ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartServices.java Wed Apr 21 19:46:01 2010 @@ -190,6 +190,7 @@ public class ShoppingCartServices { // create the cart ShoppingCart cart = new ShoppingCart(delegator, productStoreId, website, locale, currency); + cart.setDoPromotions(!includePromoItems); cart.setOrderType(orderTypeId); cart.setChannelType(orderHeader.getString("salesChannelEnumId")); cart.setInternalCode(orderHeader.getString("internalCode")); Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/product/ProductPromoWorker.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/product/ProductPromoWorker.java?rev=936467&r1=936466&r2=936467&view=diff ============================================================================== --- ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/product/ProductPromoWorker.java (original) +++ ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/product/ProductPromoWorker.java Wed Apr 21 19:46:01 2010 @@ -258,6 +258,9 @@ public class ProductPromoWorker { // limits sub total for promos to not use gift cards (products with a don't use in promo indicator), also exclude gift cards from all other promotion considerations including subTotals for discounts, etc // TODO: (not done, delay, still considering...) add code to check ProductPromoUse limits per promo (customer, promo), and per code (customer, code) to avoid use of promos or codes getting through due to multiple carts getting promos applied at the same time, possibly on totally different servers + if (!cart.getDoPromotions()) { + return; + } Delegator delegator = cart.getDelegator(); Timestamp nowTimestamp = UtilDateTime.nowTimestamp(); |
Free forum by Nabble | Edit this page |