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.getLocale()));
+ result =
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderDispatcherOrDelegatorOrCartArgumentIsNull",this.cart.getLocale()));
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",agreementId),this.cart.getLocale()));
+ result =
ServiceUtil.returnError(UtilProperties.getMessage(resource_error,"OrderCouldNotGetAgreement",UtilMisc.toMap("agreementId",agreementId),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;
+ }
}