Author: jonesde
Date: Thu Sep 6 15:55:11 2007
New Revision: 573406
URL: http://svn.apache.org/viewvc?rev=573406&view=rev
Log:
Fixed issue where a quantity less than the shipment item quantity was ignored
and the full shipment item quantity was used; also added comment about what to
do to see if shipment is complete and should be marked shipped, if that is a
good idea
Modified:
ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java
Modified:
ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java?rev=573406&r1=573405&r2=573406&view=diff
==============================================================================
---
ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java
(original)
+++
ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java
Thu Sep 6 15:55:11 2007
@@ -407,7 +407,14 @@
}
// just receive quantity for this ShipmentItem
- int quantityLeft =
shipmentItem.getDouble("quantity").intValue();
+ int quantityLeft;
+ int shipmentItemQuantity =
shipmentItem.getDouble("quantity").intValue();
+ if (shipmentItemQuantity <=
messageQuantity.intValue()) {
+ quantityLeft = shipmentItemQuantity;
+ } else {
+ quantityLeft = messageQuantity.intValue();
+ }
+
Iterator serialNumberIter =
serialNumberList.iterator();
Iterator orderItemShipGrpInvReservationIter =
orderItemShipGrpInvReservationList.iterator();
@@ -493,6 +500,12 @@
}
if (errorMapList.size() == 0) {
+ // TODOLATER: to support mulitple and partial Show
Shipment messages per shipment:
+ //check here if the entire shipment has been issues, ie
there should be sufficient
+ //ItemIssuance quantities for the ShipmentItem quantities
+ // NOTE ON THIS DEJ20070906: this is actually really bad
because it implies the shipment
+ //has been split and that isn't really allowed; maybe
better to return an error!
+ // TODO: if shipment is not completely fulfilled here
return an error
Map resultMap =
dispatcher.runSync("setShipmentStatusPackedAndShipped",
UtilMisc.toMap("shipmentId", shipmentId, "userLogin", userLogin));
if (ServiceUtil.isError(resultMap)) {
String errMsg = ServiceUtil.getErrorMessage(resultMap);