diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettlePayRecordServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettlePayRecordServiceImpl.java index 9375ea3f5..32c95ffbe 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettlePayRecordServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettlePayRecordServiceImpl.java @@ -14,11 +14,13 @@ import java.math.BigDecimal; import java.time.LocalDate; import java.time.ZoneId; import java.time.format.DateTimeFormatter; +import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import java.util.stream.Collectors; import javax.servlet.http.HttpServletResponse; @@ -444,10 +446,10 @@ public class EmisSettlePayRecordServiceImpl extends EmisBaseService implements I emisSettlePayRecord.setSettleBillNo(WaybillHelper.formatQueryValue(emisSettlePayRecord.getSettleBillNo())); // 多账单合并收款 - String[] settleBillNoArr = emisSettlePayRecord.getSettleBillNo().split(","); + List settleBillNoArr = Arrays.stream(emisSettlePayRecord.getSettleBillNo().split(",")).distinct().collect(Collectors.toList()); - for (int i = 0; i < settleBillNoArr.length; i++) { - String settleBillNo = settleBillNoArr[i]; + for (int i = 0; i < settleBillNoArr.size(); i++) { + String settleBillNo = settleBillNoArr.get(i); if (!StringUtils.isEmpty(settleBillNo)) { EmisSettleBill emisSettleBill = emisSettleBillMapper.selectSettleBillBySettleBillNo(settleBillNo); if (!"1".equals(emisSettleBill.getBlConfirmSite()) @@ -473,8 +475,8 @@ public class EmisSettlePayRecordServiceImpl extends EmisBaseService implements I } // 插入账单和支付单关联关系 - for (int i = 0; i < settleBillNoArr.length; i++) { - String settleBillNo = settleBillNoArr[i]; + for (int i = 0; i < settleBillNoArr.size(); i++) { + String settleBillNo = settleBillNoArr.get(i); if (!StringUtils.isEmpty(settleBillNo)) { EmisSettlePayBillRel emisSettlePayBillRel = new EmisSettlePayBillRel(); @@ -513,8 +515,8 @@ public class EmisSettlePayRecordServiceImpl extends EmisBaseService implements I emisSettlePayRecordMapper.insertEmisSettlePayRecord(emisSettlePayRecord); // 重新计算账单收款信息 - for (int i = 0; i < settleBillNoArr.length; i++) { - String settleBillNo = settleBillNoArr[i]; + for (int i = 0; i < settleBillNoArr.size(); i++) { + String settleBillNo = settleBillNoArr.get(i); if (!StringUtils.isEmpty(settleBillNo)) { emisSettleBillService.reCalcSettleBillPayStatus(settleBillNo); }