Kaynağa Gözat

fix:单次导入添加判断

ly 10 ay önce
ebeveyn
işleme
5740659d7c

+ 3 - 3
src/main/java/cn/ezhizao/project/business/order/service/impl/BizArchiveInputServiceImpl.java

@@ -1355,12 +1355,12 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
 //            }
             // 金额验证
             // 假设 amount - discountAmount != trueAmount 跳过该订单
-            if (item.getAmount().subtract(item.getDiscountAmount() == null ? BigDecimal.ZERO : item.getDiscountAmount()).compareTo(item.getTrueAmount()) != 0) {
+            if (null == item.getAmount() || item.getAmount().subtract(item.getDiscountAmount() == null ? BigDecimal.ZERO : item.getDiscountAmount()).compareTo(item.getTrueAmount()) != 0) {
                 failureNum++;
                 failureMsg.append("<br/>").append(failureNum).append("、订单 ").append(item.getContractNo()).append(" 实际付款金额出错");
                 continue;
             }
-            if (item.getTrueAmount().compareTo(BigDecimal.ZERO) < 0) {
+            if (null == item.getTrueAmount() || item.getTrueAmount().compareTo(BigDecimal.ZERO) < 0) {
                 failureNum++;
                 failureMsg.append("<br/>").append(failureNum).append("、订单 ").append(item.getContractNo()).append(" 实际付款金额小于0");
                 continue;
@@ -1371,7 +1371,7 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
             BigDecimal logoutAmount = item.getLogoutAmount() == null ? BigDecimal.ZERO : item.getLogoutAmount();
             BigDecimal qualifiedAmount = item.getQualifiedAmount() == null ? BigDecimal.ZERO : item.getQualifiedAmount();
             BigDecimal otherAmount = item.getOtherAmount() == null ? BigDecimal.ZERO : item.getOtherAmount();
-            if (item.getAmount().compareTo(registerAmount.add(alterAmount).add(logoutAmount).add(qualifiedAmount).add(otherAmount)) != 0) {
+            if (null == item.getAmount() || item.getAmount().compareTo(registerAmount.add(alterAmount).add(logoutAmount).add(qualifiedAmount).add(otherAmount)) != 0) {
                 failureNum++;
                 failureMsg.append("<br/>").append(failureNum).append("、订单 ").append(item.getContractNo()).append(" 总金额不等于实际任务金额的和。");
                 continue;