demand: TMS系统 - 财务开票处理 - 财务发票收款提示支付流水号重复问题修复

committer: heyu
This commit is contained in:
aike 2025-09-10 15:39:20 +08:00
parent c4b47c9ce9
commit dffe45edd0

View File

@ -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<String> 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);
}