Si,
You will have to change
\crmsfa\src\com\opensourcestrategies\crmsfa\orders\CrmsfaOrderEvents.java:181
and
\crmsfa\src\com\opensourcestrategies\crmsfa\orders\CrmsfaOrderEvents.java:275
for
cart.addOrIncreaseItem(productId, null, 1, null, null, null, null, null,
null, null, null, null, null, null, dispatcher, null);
to
cart.addOrIncreaseItem(productId, null, 1, null, null, null, null, null,
null, null, null, null, null, null, null, dispatcher);
Thanks
Jacques
----- Original Message -----
From: <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Thursday, January 18, 2007 11:55 PM
Subject: svn commit: r497618 - in /ofbiz/trunk:
applications/order/src/org/ofbiz/order/order/
applications/order/src/org/ofbiz/order/shoppingcart/
applications/order/src/org/ofbiz/order/shoppinglist/
applications/product/src/org/ofbiz/product/store/ specialpurp...
> Author: jleroux
> Date: Thu Jan 18 14:55:50 2007
> New Revision: 497618
>
> URL: http://svn.apache.org/viewvc?view=rev&rev=497618
> Log:
> Some enhancements suggested by Si for commit 495945
>
> Modified:
>
> ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java
>
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java
>
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java
>
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListEvents.java
>
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListServices.java
>
> ofbiz/trunk/applications/product/src/org/ofbiz/product/store/ProductStoreWorker.java
> ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/PosTransaction.java
> ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/screen/LoadSale.java
> ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/screen/SaveSale.java
>
> Modified:
> ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java
> URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java?view=diff&rev=497618&r1=497617&r2=497618
> ==============================================================================
> ---
> ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java
> (original)
> +++
> ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java
> Thu Jan 18 14:55:50 2007
> @@ -3415,7 +3415,7 @@
> Locale locale = (Locale) context.get("locale");
> ShoppingCart cart = new ShoppingCart(dctx.getDelegator(), "9000",
> "webStore", locale, "USD");
> try {
> - cart.addOrIncreaseItem("GZ-1005", null, 1, null, null, null,
> null, null, null, null, "DemoCatalog", null, null, null,
dctx.getDispatcher(),null);
> + cart.addOrIncreaseItem("GZ-1005", null, 1, null, null, null,
> null, null, null, null, "DemoCatalog", null, null, null,
null, dctx.getDispatcher());
> } catch (CartItemModifyException e) {
> Debug.logError(e, module);
> } catch (ItemNotFoundException e) {
> @@ -3653,7 +3653,7 @@
>
> item.getTimestamp("shipAfterDate"),
> null,
> null, null,
> null,
> null, null,
> -
> dispatcher, null);
> + null,
> dispatcher);
> ShoppingCartItem sci =
> cart.findCartItem(itemIndex);
> sci.setAssociatedOrderId(orderId);
>
> sci.setAssociatedOrderItemSeqId(item.getString("orderItemSeqId"));
>
> 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?view=diff&rev=497618&r1=497617&r2=497618
> ==============================================================================
> ---
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java
> (original)
> +++
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java
> Thu Jan 18 14:55:50 2007
> @@ -444,7 +444,7 @@
> */
> public int addOrIncreaseItem(String productId, Double selectedAmountDbl,
> double quantity, Timestamp reservStart, Double
reservLengthDbl, Double reservPersonsDbl,
> Timestamp shipBeforeDate, Timestamp shipAfterDate, Map features,
> Map attributes, String prodCatalogId,
> - ProductConfigWrapper configWrapper, String itemType, String
> itemGroupNumber, LocalDispatcher dispatcher, String
parentProductId) throws CartItemModifyException, ItemNotFoundException {
> + ProductConfigWrapper configWrapper, String itemType, String
> itemGroupNumber, String parentProductId, LocalDispatcher
dispatcher) throws CartItemModifyException, ItemNotFoundException {
> if (isReadOnlyCart()) {
> throw new CartItemModifyException("Cart items cannot be changed");
> }
>
> Modified:
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java
> URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java?view=diff&rev=497618&r1=497617&r2=497618
> ==============================================================================
> ---
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java
> (original)
> +++
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java
> Thu Jan 18 14:55:50 2007
> @@ -119,7 +119,7 @@
> try {
> java.sql.Timestamp.valueOf((String)
> context.get("itemDesiredDeliveryDate"));
> } catch (IllegalArgumentException e) {
> - return
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderInvalidDesiredDeliveryDateSyntaxError",this.cart.getLocale())
);
> + return
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderInvalidDesiredDeliveryDateSyntaxError",this.cart.getLocale())
);
> }
> } else {
> context.remove("itemDesiredDeliveryDate");
> @@ -180,7 +180,7 @@
> if (productId != null) {
> itemId = cart.addOrIncreaseItem(productId, amount, quantity,
> reservStart, reservLength,
> reservPersons,
> shipBeforeDate, shipAfterDate, null, attributes,
> - catalogId, configWrapper,
> itemType, itemGroupNumber, dispatcher, pProductId);
> + catalogId, configWrapper,
> itemType, itemGroupNumber, pProductId, dispatcher);
> } else {
> itemId = cart.addNonProductItem(itemType, itemDescription,
> productCategoryId, price, quantity, attributes,
catalogId, itemGroupNumber, dispatcher);
> }
> @@ -245,7 +245,7 @@
> Double amount =
> orderItem.getDouble("selectedAmount");
> try {
>
> this.cart.addOrIncreaseItem(orderItem.getString("productId"), amount,
orderItem.getDouble("quantity").doubleValue(),
> - null, null, null, null, null, null,
> null, catalogId, null, orderItemTypeId, itemGroupNumber,
dispatcher,null);
> + null, null, null, null, null, null,
> null, catalogId, null, orderItemTypeId, itemGroupNumber,
null, dispatcher);
> noItems = false;
> } catch (CartItemModifyException e) {
> errorMsgs.add(e.getMessage());
> @@ -283,7 +283,7 @@
> try {
>
> this.cart.addOrIncreaseItem(orderItem.getString("productId"), amount,
>
> orderItem.getDouble("quantity").doubleValue(), null, null, null, null, null,
> null, null,
> - catalogId, null,
> orderItem.getString("orderItemTypeId"), itemGroupNumber, dispatcher,
null);
> + catalogId, null,
> orderItem.getString("orderItemTypeId"), itemGroupNumber, null,
dispatcher);
> noItems = false;
> } catch (CartItemModifyException e) {
> errorMsgs.add(e.getMessage());
> @@ -372,7 +372,7 @@
> if (quantity > 0.0) {
> try {
> if (Debug.verboseOn()) Debug.logVerbose("Bulk Adding
> to cart [" + quantity + "] of [" + productId + "] in
Item Group [" + itemGroupNumber + "]", module);
> - this.cart.addOrIncreaseItem(productId, null,
> quantity, null, null, null, null, null, null, null,
catalogId, null, null, itemGroupNumberToUse, dispatcher, null);
> + this.cart.addOrIncreaseItem(productId, null,
> quantity, null, null, null, null, null, null, null,
catalogId, null, null, itemGroupNumberToUse, null, dispatcher);
> } catch (CartItemModifyException e) {
> return ServiceUtil.returnError(e.getMessage());
> } catch (ItemNotFoundException e) {
> @@ -451,7 +451,7 @@
> }
> try {
> if (Debug.verboseOn()) Debug.logVerbose("Bulk
> Adding to cart requirement [" + quantity + "] of [" +
productId + "]", module);
> - int index =
> this.cart.addOrIncreaseItem(productId, null, quantity, null, null, null,
> null, null,
null, null, catalogId, null, null, itemGroupNumber, dispatcher, null);
> + int index =
> this.cart.addOrIncreaseItem(productId, null, quantity, null, null, null,
> null, null,
null, null, catalogId, null, null, itemGroupNumber, null, dispatcher);
> ShoppingCartItem sci =
> (ShoppingCartItem)this.cart.items().get(index);
> sci.setRequirementId(requirementId);
> } catch (CartItemModifyException e) {
> @@ -478,7 +478,7 @@
> String errMsg = null;
>
> if (categoryId == null || categoryId.length() <= 0) {
> - errMsg =
> UtilProperties.getMessage(resource,"cart.category_not_specified_to_add_from",
> this.cart.getLocale());
> + errMsg =
> UtilProperties.getMessage(resource,"cart.category_not_specified_to_add_from",
> this.cart.getLocale());
> result = ServiceUtil.returnError(errMsg);
> // result =
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderNoCategorySpecifiedToAddFrom.",this.cart.getLocale()));
> return result;
> @@ -515,7 +515,7 @@
> try {
>
> this.cart.addOrIncreaseItem(productCategoryMember.getString("productId"),
> null, quantity.doubleValue(), null, null, null,
> null, null, null, null,
> - catalogId, null, null, itemGroupNumber,
> dispatcher, null);
> + catalogId, null, null, itemGroupNumber, null,
> dispatcher);
> totalQuantity += quantity.doubleValue();
> } catch (CartItemModifyException e) {
> errorMsgs.add(e.getMessage());
> @@ -870,12 +870,12 @@
> GenericValue agreement = null;
>
> if ((this.delegator == null) || (this.dispatcher == null) ||
> (this.cart == null)) {
> - result =
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderDispatcherOrDelegatorOrCartArgumentIsNull",this.cart.getLocal
e()));
> + result =
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderDispatcherOrDelegatorOrCartArgumentIsNull",this.cart.getLocal
e()));
> return result;
> }
>
> if ((agreementId == null) || (agreementId.length() <= 0)) {
> - result =
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderNoAgreementSpecified",this.cart.getLocale()));
> + result =
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderNoAgreementSpecified",this.cart.getLocale()));
> return result;
> }
>
> @@ -888,7 +888,7 @@
> }
>
> if (agreement == null) {
> - result =
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderCouldNotGetAgreement",UtilMisc.toMap("agreementId",agreementI
d),this.cart.getLocale()));
> + result =
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderCouldNotGetAgreement",UtilMisc.toMap("agreementId",agreementI
d),this.cart.getLocale()));
> } else {
> // set the agreement id in the cart
> cart.setAgreementId(agreementId);
> @@ -901,7 +901,7 @@
> try {
> cart.setCurrency(dispatcher,currencyUomId);
> } catch (CartItemModifyException ex) {
> - result =
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderSetCurrencyError",this.cart.getLocale())
+ ex.getMessage());
> + result =
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderSetCurrencyError",this.cart.getLocale())
+ ex.getMessage());
> return result;
> }
> }
> @@ -941,7 +941,7 @@
> this.cart.setCurrency(this.dispatcher,currencyUomId);
> result = ServiceUtil.returnSuccess();
> } catch (CartItemModifyException ex) {
> - result =
> ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"Set
> currency error",this.cart.getLocale()) +
ex.getMessage());
> + result =
> ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"Set currency
error",this.cart.getLocale()) + ex.getMessage());
> return result;
> }
> return result;
> @@ -972,7 +972,7 @@
> productSupplier=(GenericValue) productSuppliers.get(0);
> }
> } catch (GenericServiceException e) {
> -
> Debug.logWarning(UtilProperties.getMessage(resource_error,"OrderRunServiceGetSuppliersForProductError",
> cart.getLocale())
+ e.getMessage(), module);
> +
> Debug.logWarning(UtilProperties.getMessage(resource_error,"OrderRunServiceGetSuppliersForProductError",
cart.getLocale()) + e.getMessage(), module);
> }
> return productSupplier;
> }
>
> Modified:
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListEvents.java
> URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListEvents.java?view=diff&rev=497618&r1=497617&r2=497618
> ==============================================================================
> ---
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListEvents.java
> (original)
> +++
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListEvents.java
> Thu Jan 18 14:55:50 2007
> @@ -273,9 +273,9 @@
>
> // i cannot get the addOrDecrease function to accept a null
> reservStart field: i get a null pointer exception a
null constant works....
> if (reservStart == null) {
> - cart.addOrIncreaseItem(productId, null,
> quantity.doubleValue(), null, null, null, null, null, null,
attributes, prodCatalogId, null, null, null, dispatcher, null);
> + cart.addOrIncreaseItem(productId, null,
> quantity.doubleValue(), null, null, null, null, null, null,
attributes, prodCatalogId, null, null, null, null, dispatcher);
> } else {
> - cart.addOrIncreaseItem(productId, null,
> quantity.doubleValue(), reservStart, reservLength, reservPersons,
null, null, null, attributes, prodCatalogId, null, null, null, dispatcher,
null);
> + cart.addOrIncreaseItem(productId, null,
> quantity.doubleValue(), reservStart, reservLength, reservPersons,
null, null, null, attributes, prodCatalogId, null, null, null, null,
dispatcher);
> }
> Map messageMap = UtilMisc.toMap("productId", productId);
> errMsg =
> UtilProperties.getMessage(resource,"shoppinglistevents.added_product_to_cart",
> messageMap,
cart.getLocale());
>
> Modified:
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListServices.java
> URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListServices.java?view=diff&rev=497618&r1=497617&r2=497618
> ==============================================================================
> ---
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListServices.java
> (original)
> +++
> ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppinglist/ShoppingListServices.java
> Thu Jan 18 14:55:50 2007
> @@ -442,7 +442,7 @@
> Map attributes = UtilMisc.toMap("shoppingListId",
> listId, "shoppingListItemSeqId", itemId);
>
> try {
> - listCart.addOrIncreaseItem(productId, null,
> quantity.doubleValue(), reservStart, reservLength,
reservPersons, null, null, null, attributes, null, null, null, null,
dispatcher, null);
> + listCart.addOrIncreaseItem(productId, null,
> quantity.doubleValue(), reservStart, reservLength,
reservPersons, null, null, null, attributes, null, null, null, null, null,
dispatcher);
> } catch (CartItemModifyException e) {
> Debug.logError(e, "Unable to add product to List
> Cart - " + productId, module);
> } catch (ItemNotFoundException e) {
>
> Modified:
> ofbiz/trunk/applications/product/src/org/ofbiz/product/store/ProductStoreWorker.java
> URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/src/org/ofbiz/product/store/ProductStoreWorker.java?view=diff&rev=497618&r1=497617&r2=497618
> ==============================================================================
> ---
> ofbiz/trunk/applications/product/src/org/ofbiz/product/store/ProductStoreWorker.java
> (original)
> +++
> ofbiz/trunk/applications/product/src/org/ofbiz/product/store/ProductStoreWorker.java
> Thu Jan 18 14:55:50 2007
> @@ -470,10 +470,12 @@
> try {
> product = delegator.findByPrimaryKeyCache("Product",
> UtilMisc.toMap("productId", productId));
> if ((product != null) &&
> ("Y".equals(product.get("isVariant")))) {
> - if (parentProductId != null)
> + if (parentProductId != null) {
> virtualProductId = parentProductId;
> - else
> + }
> + else {
> virtualProductId =
> ProductWorker.getVariantVirtualId(product);
> + }
> Debug.log("getSurvey for virtual product " +
> virtualProductId,module);
> }
> } catch (GenericEntityException e) {
>
> Modified: ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/PosTransaction.java
> URL:
http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/PosTransaction.java?view=diff&rev=497618&r1=497617&r2=497618
> ==============================================================================
> --- ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/PosTransaction.java
> (original)
> +++ ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/PosTransaction.java Thu
> Jan 18 14:55:50 2007
> @@ -355,7 +355,7 @@
> public void addItem(String productId, double quantity) throws
> CartItemModifyException, ItemNotFoundException {
> trace("add item", productId + "/" + quantity);
> try {
> - cart.addOrIncreaseItem(productId, null, quantity, null, null,
> null, null, null, null, null, null, null, null, null,
session.getDispatcher(), null);
> + cart.addOrIncreaseItem(productId, null, quantity, null, null,
> null, null, null, null, null, null, null, null, null,
null, session.getDispatcher());
> } catch (ItemNotFoundException e) {
> trace("item not found", e);
> throw e;
>
> Modified:
> ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/screen/LoadSale.java
> URL:
http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/screen/LoadSale.java?view=diff&rev=497618&r1=497617&r2=497618
> ==============================================================================
> --- ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/screen/LoadSale.java
> (original)
> +++ ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/screen/LoadSale.java Thu
> Jan 18 14:55:50 2007
> @@ -1,244 +1,244 @@
> -/*******************************************************************************
> - * Licensed to the Apache Software Foundation (ASF) under one
> - * or more contributor license agreements. See the NOTICE file
> - * distributed with this work for additional information
> - * regarding copyright ownership. The ASF licenses this file
> - * to you under the Apache License, Version 2.0 (the
> - * "License"); you may not use this file except in compliance
> - * with the License. You may obtain a copy of the License at
> - *
> - * http://www.apache.org/licenses/LICENSE-2.0
> - *
> - * Unless required by applicable law or agreed to in writing,
> - * software distributed under the License is distributed on an
> - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> - * KIND, either express or implied. See the License for the
> - * specific language governing permissions and limitations
> - * under the License.
> -
> *******************************************************************************/
> -package org.ofbiz.pos.screen;
> -
> -import java.util.Hashtable;
> -import java.util.Iterator;
> -import java.util.Locale;
> -import java.util.Map;
> -
> -import javax.swing.DefaultListModel;
> -import javax.swing.ListSelectionModel;
> -
> -import net.xoetrope.swing.XButton;
> -import net.xoetrope.swing.XDialog;
> -import net.xoetrope.swing.XList;
> -import net.xoetrope.xui.XPage;
> -
> -import org.ofbiz.base.util.Debug;
> -import org.ofbiz.base.util.UtilProperties;
> -import org.ofbiz.pos.PosTransaction;
> -
> -
> -public class LoadSale extends XPage {
> -
> - /**
> - * To load a sale from a shopping list. 2 modes : add to or replace the
> current sale. Also a button to delete a sale (aka
shopping list)
> - */
> - public static final String module = LoadSale.class.getName();
> - protected static PosScreen m_pos = null;
> - protected XDialog m_dialog = null;
> - static protected Hashtable m_saleMap = new Hashtable();
> - protected XList m_salesList = null;
> - protected XButton m_cancel = null;
> - protected XButton m_add = null;
> - protected XButton m_replace = null;
> - protected XButton m_delete = null;
> - protected XButton m_replaceAndDelete = null;
> - protected DefaultListModel m_listModel = null;
> - protected static PosTransaction m_trans = null;
> -
> - //TODO : make getter and setter for members (ie m_*) if needed (extern
> calls). For that in Eclipse use Source/Generate
Getters and setters
> -
> - public LoadSale(Hashtable saleMap, PosTransaction trans, PosScreen page)
> {
> - m_saleMap.putAll(saleMap);
> - m_trans = trans;
> - m_pos = page;
> - }
> -
> - public void openDlg() {
> - m_dialog = (XDialog) pageMgr.loadPage(m_pos.getScreenLocation() +
> "/dialog/loadsale");
> - m_dialog.setCaption(UtilProperties.getMessage("pos", "LoadASale",
> Locale.getDefault()));
> - m_salesList = (XList) m_dialog.findComponent("salesList");
> - addMouseHandler(m_salesList, "saleDoubleClick");
> -
> - m_cancel = (XButton) m_dialog.findComponent("BtnCancel");
> - m_add = (XButton) m_dialog.findComponent("BtnAdd");
> - m_replace = (XButton) m_dialog.findComponent("BtnReplace");
> - m_delete = (XButton) m_dialog.findComponent("BtnDelete");
> - m_replaceAndDelete = (XButton)
> m_dialog.findComponent("BtnReplaceAndDelete");
> - addMouseHandler(m_cancel, "cancel");
> - addMouseHandler(m_add, "addSale");
> - addMouseHandler(m_replace, "replaceSale");
> - addMouseHandler(m_delete, "deleteShoppingList");
> - addMouseHandler(m_replaceAndDelete,
> "replaceSaleAndDeleteShoppingList");
> -
> - m_listModel = new DefaultListModel();
> - for (Iterator i = m_saleMap.entrySet().iterator(); i.hasNext();) {
> - Object o = i.next();
> - Map.Entry entry = (Map.Entry)o;
> - String val = entry.getValue().toString();
> - m_listModel.addElement(val);
> - }
> - m_salesList.setModel(m_listModel);
> - m_salesList.setVisibleRowCount(-1);
> - m_salesList.ensureIndexIsVisible(m_salesList.getItemCount());
> - m_salesList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
> - m_salesList.setToolTipText(UtilProperties.getMessage("pos",
> "LoadSaleListDblClickTip", Locale.getDefault()));
> -
> - m_dialog.pack();
> - m_salesList.requestFocusInWindow();
> - m_dialog.showDialog(this);
> - }
> -
> - public synchronized void saleDoubleClick() {
> - if (wasMouseDoubleClicked()) {
> - String sale = selectedSale();
> - if (null != sale) {
> - replaceSaleAndDeleteShoppingList_();
> - }
> - }
> - }
> -
> - public synchronized void cancel() {
> - if (wasMouseClicked()) {
> - closeDlg();
> - }
> - }
> -
> - public synchronized void addSale() {
> - if (wasMouseClicked()) {
> - addSale_();
> - }
> - }
> -
> - private synchronized void addSale_() {
> - String sale = selectedSale();
> - if (null != sale) {
> - addListToCart(sale, true);
> - }
> - }
> -
> - public synchronized void replaceSale() {
> - if (wasMouseClicked()) {
> - replaceSale_();
> - }
> - }
> -
> - private synchronized void replaceSale_() {
> - String sale = selectedSale();
> - if (null != sale) {
> - addListToCart(sale, false);
> - }
> - }
> -
> - public synchronized void deleteShoppingList() {
> - if (wasMouseClicked()) {
> - deleteShoppingList_();
> - }
> - }
> -
> - private synchronized void deleteShoppingList_() {
> - String sale= (String) m_salesList.getSelectedValue();
> - if (null != sale) {
> - String shoppingListId = selectedSale();
> - final ClassLoader cl = this.getClassLoader(m_pos);
> - Thread.currentThread().setContextClassLoader(cl);
> - if (m_trans.clearList(shoppingListId, m_pos)) {
> - int index = m_salesList.getSelectedIndex();
> - m_saleMap.remove(shoppingListId);
> - m_listModel = new DefaultListModel();
> - for (Iterator i = m_saleMap.entrySet().iterator();
> i.hasNext();) {
> - Object o = i.next();
> - Map.Entry entry = (Map.Entry)o;
> - String val = entry.getValue().toString();
> - m_listModel.addElement(val);
> - }
> - m_salesList.setModel(m_listModel);
> - int size = m_listModel.getSize();
> - if (size == 0) { //Nobody's left, nothing to do here
> - closeDlg();
> - } else { //Select an index.
> - if (index == size) {
> - //removed item in last position
> - index--;
> - }
> - }
> - m_salesList.setSelectedIndex(index);
> - m_salesList.ensureIndexIsVisible(index);
> - m_salesList.repaint();
> - repaint();
> - }
> - }
> - }
> -
> - public synchronized void replaceSaleAndDeleteShoppingList() {
> - if (wasMouseClicked()) {
> - replaceSaleAndDeleteShoppingList_();
> - }
> - }
> -
> - public synchronized void replaceSaleAndDeleteShoppingList_() {
> - replaceSale_();
> - deleteShoppingList_();
> - }
> -
> - private String selectedSale() {
> - String saleSelected = null;
> - if (null != m_salesList.getSelectedValue()) {
> - String sale = (String) m_salesList.getSelectedValue();
> - Iterator i = m_saleMap.entrySet().iterator();
> - while(i.hasNext()) {
> - Object o = i.next();
> - Map.Entry entry = (Map.Entry)o;
> - String val = entry.getValue().toString();
> - if (val.equals(sale)) {
> - saleSelected = entry.getKey().toString();
> - }
> - }
> - }
> - return saleSelected;
> - }
> -
> - private void addListToCart(String sale, boolean addToCart) {
> - final ClassLoader cl = this.getClassLoader(m_pos);
> - Thread.currentThread().setContextClassLoader(cl);
> - if (!m_trans.addListToCart(sale, m_pos, addToCart)) {
> - Debug.logError("Error while loading cart from shopping list : "
> + sale, module);
> - }
> - else {
> - m_trans.calcTax();
> - m_pos.refresh();
> - }
> - closeDlg();
> - }
> -
> - private ClassLoader getClassLoader(PosScreen pos) {
> - ClassLoader cl = pos.getClassLoader();
> - if (cl == null) {
> - try {
> - cl = Thread.currentThread().getContextClassLoader();
> - } catch (Throwable t) {
> - }
> - if (cl == null) {
> - Debug.log("No context classloader available; using class
> classloader", module);
> - try {
> - cl = this.getClass().getClassLoader();
> - } catch (Throwable t) {
> - Debug.logError(t, module);
> - }
> - }
> - }
> - return cl;
> - }
> -
> - private void closeDlg() {
> - m_dialog.closeDlg();
> - }
> +/*******************************************************************************
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements. See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership. The ASF licenses this file
> + * to you under the Apache License, Version 2.0 (the
> + * "License"); you may not use this file except in compliance
> + * with the License. You may obtain a copy of the License at
> + *
> + * http://www.apache.org/licenses/LICENSE-2.0
> + *
> + * Unless required by applicable law or agreed to in writing,
> + * software distributed under the License is distributed on an
> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> + * KIND, either express or implied. See the License for the
> + * specific language governing permissions and limitations
> + * under the License.
> +
> *******************************************************************************/
> +package org.ofbiz.pos.screen;
> +
> +import java.util.Hashtable;
> +import java.util.Iterator;
> +import java.util.Locale;
> +import java.util.Map;
> +
> +import javax.swing.DefaultListModel;
> +import javax.swing.ListSelectionModel;
> +
> +import net.xoetrope.swing.XButton;
> +import net.xoetrope.swing.XDialog;
> +import net.xoetrope.swing.XList;
> +import net.xoetrope.xui.XPage;
> +
> +import org.ofbiz.base.util.Debug;
> +import org.ofbiz.base.util.UtilProperties;
> +import org.ofbiz.pos.PosTransaction;
> +
> +
> +public class LoadSale extends XPage {
> +
> + /**
> + * To load a sale from a shopping list. 2 modes : add to or replace the
> current sale. Also a button to delete a sale (aka
shopping list)
> + */
> + public static final String module = LoadSale.class.getName();
> + protected static PosScreen m_pos = null;
> + protected XDialog m_dialog = null;
> + static protected Hashtable m_saleMap = new Hashtable();
> + protected XList m_salesList = null;
> + protected XButton m_cancel = null;
> + protected XButton m_add = null;
> + protected XButton m_replace = null;
> + protected XButton m_delete = null;
> + protected XButton m_replaceAndDelete = null;
> + protected DefaultListModel m_listModel = null;
> + protected static PosTransaction m_trans = null;
> +
> + //TODO : make getter and setter for members (ie m_*) if needed (extern
> calls). For that in Eclipse use Source/Generate
Getters and setters
> +
> + public LoadSale(Hashtable saleMap, PosTransaction trans, PosScreen page)
> {
> + m_saleMap.putAll(saleMap);
> + m_trans = trans;
> + m_pos = page;
> + }
> +
> + public void openDlg() {
> + m_dialog = (XDialog) pageMgr.loadPage(m_pos.getScreenLocation() +
> "/dialog/loadsale");
> + m_dialog.setCaption(UtilProperties.getMessage("pos", "LoadASale",
> Locale.getDefault()));
> + m_salesList = (XList) m_dialog.findComponent("salesList");
> + addMouseHandler(m_salesList, "saleDoubleClick");
> +
> + m_cancel = (XButton) m_dialog.findComponent("BtnCancel");
> + m_add = (XButton) m_dialog.findComponent("BtnAdd");
> + m_replace = (XButton) m_dialog.findComponent("BtnReplace");
> + m_delete = (XButton) m_dialog.findComponent("BtnDelete");
> + m_replaceAndDelete = (XButton)
> m_dialog.findComponent("BtnReplaceAndDelete");
> + addMouseHandler(m_cancel, "cancel");
> + addMouseHandler(m_add, "addSale");
> + addMouseHandler(m_replace, "replaceSale");
> + addMouseHandler(m_delete, "deleteShoppingList");
> + addMouseHandler(m_replaceAndDelete,
> "replaceSaleAndDeleteShoppingList");
> +
> + m_listModel = new DefaultListModel();
> + for (Iterator i = m_saleMap.entrySet().iterator(); i.hasNext();) {
> + Object o = i.next();
> + Map.Entry entry = (Map.Entry)o;
> + String val = entry.getValue().toString();
> + m_listModel.addElement(val);
> + }
> + m_salesList.setModel(m_listModel);
> + m_salesList.setVisibleRowCount(-1);
> + m_salesList.ensureIndexIsVisible(m_salesList.getItemCount());
> + m_salesList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
> + m_salesList.setToolTipText(UtilProperties.getMessage("pos",
> "LoadSaleListDblClickTip", Locale.getDefault()));
> +
> + m_dialog.pack();
> + m_salesList.requestFocusInWindow();
> + m_dialog.showDialog(this);
> + }
> +
> + public synchronized void saleDoubleClick() {
> + if (wasMouseDoubleClicked()) {
> + String sale = selectedSale();
> + if (null != sale) {
> + replaceSaleAndDeleteShoppingList_();
> + }
> + }
> + }
> +
> + public synchronized void cancel() {
> + if (wasMouseClicked()) {
> + closeDlg();
> + }
> + }
> +
> + public synchronized void addSale() {
> + if (wasMouseClicked()) {
> + addSale_();
> + }
> + }
> +
> + private synchronized void addSale_() {
> + String sale = selectedSale();
> + if (null != sale) {
> + addListToCart(sale, true);
> + }
> + }
> +
> + public synchronized void replaceSale() {
> + if (wasMouseClicked()) {
> + replaceSale_();
> + }
> + }
> +
> + private synchronized void replaceSale_() {
> + String sale = selectedSale();
> + if (null != sale) {
> + addListToCart(sale, false);
> + }
> + }
> +
> + public synchronized void deleteShoppingList() {
> + if (wasMouseClicked()) {
> + deleteShoppingList_();
> + }
> + }
> +
> + private synchronized void deleteShoppingList_() {
> + String sale= (String) m_salesList.getSelectedValue();
> + if (null != sale) {
> + String shoppingListId = selectedSale();
> + final ClassLoader cl = this.getClassLoader(m_pos);
> + Thread.currentThread().setContextClassLoader(cl);
> + if (m_trans.clearList(shoppingListId, m_pos)) {
> + int index = m_salesList.getSelectedIndex();
> + m_saleMap.remove(shoppingListId);
> + m_listModel = new DefaultListModel();
> + for (Iterator i = m_saleMap.entrySet().iterator();
> i.hasNext();) {
> + Object o = i.next();
> + Map.Entry entry = (Map.Entry)o;
> + String val = entry.getValue().toString();
> + m_listModel.addElement(val);
> + }
> + m_salesList.setModel(m_listModel);
> + int size = m_listModel.getSize();
> + if (size == 0) { //Nobody's left, nothing to do here
> + closeDlg();
> + } else { //Select an index.
> + if (index == size) {
> + //removed item in last position
> + index--;
> + }
> + }
> + m_salesList.setSelectedIndex(index);
> + m_salesList.ensureIndexIsVisible(index);
> + m_salesList.repaint();
> + repaint();
> + }
> + }
> + }
> +
> + public synchronized void replaceSaleAndDeleteShoppingList() {
> + if (wasMouseClicked()) {
> + replaceSaleAndDeleteShoppingList_();
> + }
> + }
> +
> + public synchronized void replaceSaleAndDeleteShoppingList_() {
> + replaceSale_();
> + deleteShoppingList_();
> + }
> +
> + private String selectedSale() {
> + String saleSelected = null;
> + if (null != m_salesList.getSelectedValue()) {
> + String sale = (String) m_salesList.getSelectedValue();
> + Iterator i = m_saleMap.entrySet().iterator();
> + while(i.hasNext()) {
> + Object o = i.next();
> + Map.Entry entry = (Map.Entry)o;
> + String val = entry.getValue().toString();
> + if (val.equals(sale)) {
> + saleSelected = entry.getKey().toString();
> + }
> + }
> + }
> + return saleSelected;
> + }
> +
> + private void addListToCart(String sale, boolean addToCart) {
> + final ClassLoader cl = this.getClassLoader(m_pos);
> + Thread.currentThread().setContextClassLoader(cl);
> + if (!m_trans.addListToCart(sale, m_pos, addToCart)) {
> + Debug.logError("Error while loading cart from shopping list : "
> + sale, module);
> + }
> + else {
> + m_trans.calcTax();
> + m_pos.refresh();
> + }
> + closeDlg();
> + }
> +
> + private ClassLoader getClassLoader(PosScreen pos) {
> + ClassLoader cl = pos.getClassLoader();
> + if (cl == null) {
> + try {
> + cl = Thread.currentThread().getContextClassLoader();
> + } catch (Throwable t) {
> + }
> + if (cl == null) {
> + Debug.log("No context classloader available; using class
> classloader", module);
> + try {
> + cl = this.getClass().getClassLoader();
> + } catch (Throwable t) {
> + Debug.logError(t, module);
> + }
> + }
> + }
> + return cl;
> + }
> +
> + private void closeDlg() {
> + m_dialog.closeDlg();
> + }
> }
>
> Modified:
> ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/screen/SaveSale.java
> URL:
http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/screen/SaveSale.java?view=diff&rev=497618&r1=497617&r2=497618
> ==============================================================================
> --- ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/screen/SaveSale.java
> (original)
> +++ ofbiz/trunk/specialpurpose/pos/src/org/ofbiz/pos/screen/SaveSale.java Thu
> Jan 18 14:55:50 2007
> @@ -1,129 +1,129 @@
> -/*******************************************************************************
> - * Licensed to the Apache Software Foundation (ASF) under one
> - * or more contributor license agreements. See the NOTICE file
> - * distributed with this work for additional information
> - * regarding copyright ownership. The ASF licenses this file
> - * to you under the Apache License, Version 2.0 (the
> - * "License"); you may not use this file except in compliance
> - * with the License. You may obtain a copy of the License at
> - *
> - * http://www.apache.org/licenses/LICENSE-2.0
> - *
> - * Unless required by applicable law or agreed to in writing,
> - * software distributed under the License is distributed on an
> - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> - * KIND, either express or implied. See the License for the
> - * specific language governing permissions and limitations
> - * under the License.
> -
> *******************************************************************************/
> -package org.ofbiz.pos.screen;
> -
> -import java.text.SimpleDateFormat;
> -import java.util.Date;
> -import java.util.Locale;
> -
> -import net.xoetrope.swing.XButton;
> -//import org.ofbiz.pos.screen.XFocusDialog;
> -import net.xoetrope.swing.XEdit;
> -import net.xoetrope.swing.XDialog;
> -import net.xoetrope.xui.XPage;
> -
> -import org.ofbiz.base.util.Debug;
> -import org.ofbiz.base.util.UtilProperties;
> -import org.ofbiz.pos.PosTransaction;
> -
> -
> -public class SaveSale extends XPage {
> -
> - /**
> - * To save a sale. 2 modes : save and keep the current sale or save and
> clear the current sale.
> - */
> - public static final String module = SaveSale.class.getName();
> - protected static PosScreen m_pos = null;
> - protected XDialog m_dialog = null;
> - protected XEdit m_saleName = null;
> - protected XButton m_cancel = null;
> - protected XButton m_save = null;
> - protected XButton m_saveAndClear = null;
> - protected static PosTransaction m_trans = null;
> - public static SimpleDateFormat sdf = new
SimpleDateFormat(UtilProperties.getMessage("pos","DateTimeFormat",Locale.getDefault()));
> -
> - //TODO : make getter and setter for members (ie m_*) if needed (extern
> calls). For that in Eclipse use Source/Generate
Getters and setters
> -
> - public SaveSale(PosTransaction trans, PosScreen page) {
> - m_trans = trans;
> - m_pos = page;
> - }
> -
> - public void openDlg() {
> - m_dialog = (XDialog) pageMgr.loadPage(m_pos.getScreenLocation() +
> "/dialog/savesale");
> - m_saleName = (XEdit) m_dialog.findComponent("saleName");
> - //m_dialog.setM_focused(m_saleName);
> - m_saleName.setText(m_pos.session.getUserId() + " " + sdf.format(new
> Date()));
> - m_dialog.setCaption(UtilProperties.getMessage("pos", "SaveASale",
> Locale.getDefault()));
> -
> - m_cancel = (XButton) m_dialog.findComponent("BtnCancel");
> - m_save = (XButton) m_dialog.findComponent("BtnSave");
> - m_saveAndClear = (XButton) m_dialog.findComponent("BtnSaveAndClear");
> -
> - addMouseHandler(m_cancel, "cancel");
> - addMouseHandler(m_save, "save");
> - addMouseHandler(m_saveAndClear, "saveAndClear");
> -
> - m_dialog.pack();
> - m_dialog.showDialog(this);
> - }
> -
> - public synchronized void cancel()
> - {
> - if (wasMouseClicked()) {
> - this.m_dialog.closeDlg();
> - }
> - }
> -
> - public synchronized void save() {
> - if (wasMouseClicked()) {
> - String sale = m_saleName.getText();
> - if (null != sale) {
> - saveSale(sale);
> - }
> - }
> - }
> -
> - public synchronized void saveAndClear() {
> - if (wasMouseClicked()) {
> - String sale = m_saleName.getText();
> - if (null != sale) {
> - saveSale(sale);
> - m_trans.voidSale();
> - m_pos.refresh();
> - }
> - }
> - }
> -
> - private void saveSale(String sale) {
> - final ClassLoader cl = this.getClassLoader(m_pos);
> - Thread.currentThread().setContextClassLoader(cl);
> - m_trans.saveSale(sale, m_pos);
> - this.m_dialog.closeDlg();
> - }
> -
> - private ClassLoader getClassLoader(PosScreen pos) {
> - ClassLoader cl = pos.getClassLoader();
> - if (cl == null) {
> - try {
> - cl = Thread.currentThread().getContextClassLoader();
> - } catch (Throwable t) {
> - }
> - if (cl == null) {
> - Debug.log("No context classloader available; using class
> classloader", module);
> - try {
> - cl = this.getClass().getClassLoader();
> - } catch (Throwable t) {
> - Debug.logError(t, module);
> - }
> - }
> - }
> - return cl;
> - }
> +/*******************************************************************************
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements. See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership. The ASF licenses this file
> + * to you under the Apache License, Version 2.0 (the
> + * "License"); you may not use this file except in compliance
> + * with the License. You may obtain a copy of the License at
> + *
> + * http://www.apache.org/licenses/LICENSE-2.0
> + *
> + * Unless required by applicable law or agreed to in writing,
> + * software distributed under the License is distributed on an
> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> + * KIND, either express or implied. See the License for the
> + * specific language governing permissions and limitations
> + * under the License.
> +
> *******************************************************************************/
> +package org.ofbiz.pos.screen;
> +
> +import java.text.SimpleDateFormat;
> +import java.util.Date;
> +import java.util.Locale;
> +
> +import net.xoetrope.swing.XButton;
> +//import org.ofbiz.pos.screen.XFocusDialog;
> +import net.xoetrope.swing.XEdit;
> +import net.xoetrope.swing.XDialog;
> +import net.xoetrope.xui.XPage;
> +
> +import org.ofbiz.base.util.Debug;
> +import org.ofbiz.base.util.UtilProperties;
> +import org.ofbiz.pos.PosTransaction;
> +
> +
> +public class SaveSale extends XPage {
> +
> + /**
> + * To save a sale. 2 modes : save and keep the current sale or save and
> clear the current sale.
> + */
> + public static final String module = SaveSale.class.getName();
> + protected static PosScreen m_pos = null;
> + protected XDialog m_dialog = null;
> + protected XEdit m_saleName = null;
> + protected XButton m_cancel = null;
> + protected XButton m_save = null;
> + protected XButton m_saveAndClear = null;
> + protected static PosTransaction m_trans = null;
> + public static SimpleDateFormat sdf = new
SimpleDateFormat(UtilProperties.getMessage("pos","DateTimeFormat",Locale.getDefault()));
> +
> + //TODO : make getter and setter for members (ie m_*) if needed (extern
> calls). For that in Eclipse use Source/Generate
Getters and setters
> +
> + public SaveSale(PosTransaction trans, PosScreen page) {
> + m_trans = trans;
> + m_pos = page;
> + }
> +
> + public void openDlg() {
> + m_dialog = (XDialog) pageMgr.loadPage(m_pos.getScreenLocation() +
> "/dialog/savesale");
> + m_saleName = (XEdit) m_dialog.findComponent("saleName");
> + //m_dialog.setM_focused(m_saleName);
> + m_saleName.setText(m_pos.session.getUserId() + " " + sdf.format(new
> Date()));
> + m_dialog.setCaption(UtilProperties.getMessage("pos", "SaveASale",
> Locale.getDefault()));
> +
> + m_cancel = (XButton) m_dialog.findComponent("BtnCancel");
> + m_save = (XButton) m_dialog.findComponent("BtnSave");
> + m_saveAndClear = (XButton) m_dialog.findComponent("BtnSaveAndClear");
> +
> + addMouseHandler(m_cancel, "cancel");
> + addMouseHandler(m_save, "save");
> + addMouseHandler(m_saveAndClear, "saveAndClear");
> +
> + m_dialog.pack();
> + m_dialog.showDialog(this);
> + }
> +
> + public synchronized void cancel()
> + {
> + if (wasMouseClicked()) {
> + this.m_dialog.closeDlg();
> + }
> + }
> +
> + public synchronized void save() {
> + if (wasMouseClicked()) {
> + String sale = m_saleName.getText();
> + if (null != sale) {
> + saveSale(sale);
> + }
> + }
> + }
> +
> + public synchronized void saveAndClear() {
> + if (wasMouseClicked()) {
> + String sale = m_saleName.getText();
> + if (null != sale) {
> + saveSale(sale);
> + m_trans.voidSale();
> + m_pos.refresh();
> + }
> + }
> + }
> +
> + private void saveSale(String sale) {
> + final ClassLoader cl = this.getClassLoader(m_pos);
> + Thread.currentThread().setContextClassLoader(cl);
> + m_trans.saveSale(sale, m_pos);
> + this.m_dialog.closeDlg();
> + }
> +
> + private ClassLoader getClassLoader(PosScreen pos) {
> + ClassLoader cl = pos.getClassLoader();
> + if (cl == null) {
> + try {
> + cl = Thread.currentThread().getContextClassLoader();
> + } catch (Throwable t) {
> + }
> + if (cl == null) {
> + Debug.log("No context classloader available; using class
> classloader", module);
> + try {
> + cl = this.getClass().getClassLoader();
> + } catch (Throwable t) {
> + Debug.logError(t, module);
> + }
> + }
> + }
> + return cl;
> + }
> }
>