Переглянути джерело

fix: 导出请款单NPE异常

lixuesong 1 рік тому
батько
коміт
cf0dbf765e

+ 5 - 2
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/WmPayOffController.java

@@ -66,6 +66,7 @@ import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.Optional;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
@@ -498,8 +499,10 @@ public class WmPayOffController {
 					.map(WmScorePackageSettleNote::getSettleAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
 			// 实际结算金额
 			BigDecimal actualAmount = settleNotes.stream()
-					.map(WmScorePackageSettleNote::getActualAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
-			totalSettleAmount = totalSettleAmount.add(settleAmount);
+					.map(WmScorePackageSettleNote::getActualAmount)
+					.filter(Objects::nonNull)
+					.reduce(BigDecimal.ZERO, BigDecimal::add);
+			totalSettleAmount = totalSettleAmount.add(actualAmount);
 			packageDetail.setSubjectLocation(settleNotes.get(0).getSubjectLocation().getDescription());
 			packageDetail.setSettleAmount(String.valueOf(settleAmount));
 			packageDetail.setActualAmount(String.valueOf(actualAmount));