Skip to content

Commit f8f7949

Browse files
committed
Improved: Refactor getReceiveQuantityForOrderItem and add checks for null quantities
Thanks to Nicolas Malin for the advice and the code snippet.
1 parent 5a75789 commit f8f7949

1 file changed

Lines changed: 5 additions & 7 deletions

File tree

applications/product/src/main/groovy/org/apache/ofbiz/product/shipment/ShipmentReceiptServices.groovy

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -295,13 +295,11 @@ Map quickReceiveReturn() {
295295
* Computes the till now received quantity from all ShipmentReceipts
296296
*/
297297
BigDecimal getReceivedQuantityForOrderItem (GenericValue orderItem) {
298-
BigDecimal receivedQuantity = 0
299-
List shipmentReceipts = from('ShipmentReceipt').where(orderId: orderItem.orderId, orderItemSeqId: orderItem.orderItemSeqId).queryList()
300-
for (GenericValue shipmentReceipt : shipmentReceipts) {
301-
receivedQuantity += shipmentReceipt.quantityAccepted
302-
receivedQuantity += shipmentReceipt.quantityRejected
303-
}
304-
return receivedQuantity
298+
return from('ShipmentReceipt')
299+
.where(orderId: orderItem.orderId,
300+
orderItemSeqId: orderItem.orderItemSeqId)
301+
.queryList()
302+
.sum { (it.quantityAccepted ?: 0) + (it.quantityRejected ?: 0) }
305303
}
306304

307305
/**

0 commit comments

Comments
 (0)