|
@@ -389,6 +389,7 @@ public class BizReturnReceiptController extends BaseController
|
|
|
list.add(new ArrayList<>(group));
|
|
|
group = new ArrayList<>();
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
// 如果最后一组不足 14 个元素,也将其添加到 list 中
|
|
|
if (!group.isEmpty()) {
|
|
@@ -396,8 +397,19 @@ public class BizReturnReceiptController extends BaseController
|
|
|
while (group.size() < 14) {
|
|
|
group.add(detail); // 添加默认元素直到总数为14
|
|
|
}
|
|
|
+ // 使用流过滤出 productNum 不为空的元素,并对其 productNum 值求和
|
|
|
+ Integer sum = group.stream()
|
|
|
+ .filter(item -> item.getReceiptNum() != null) // 过滤出 productNum 不为空的元素
|
|
|
+ .mapToInt(BizReturnReceiptDetail::getReceiptNum) // 映射到 productNum 属性
|
|
|
+ .sum(); // 计算总和
|
|
|
+ // 然后,给每个对象的 sum 属性赋值
|
|
|
+ for (BizReturnReceiptDetail receiptDetail : group) {
|
|
|
+ receiptDetail.setSum(sum);
|
|
|
+ receiptDetail.setOriginalCarrierCount(receiptDetail.getNewCarrierCount()==null?receiptDetail.getOriginalCarrierCount():receiptDetail.getNewCarrierCount());
|
|
|
+ }
|
|
|
list.add(group);
|
|
|
}
|
|
|
+
|
|
|
}else{
|
|
|
BizReturnReceiptDetail detail=new BizReturnReceiptDetail();
|
|
|
while (returnReceiptDetails.size() < 14) {
|