diff --git a/src/main/java/com/yn/bftl/thirdparty/modules/business/service/impl/SubaccountServiceImpl.java b/src/main/java/com/yn/bftl/thirdparty/modules/business/service/impl/SubaccountServiceImpl.java index a6cb1d0..05ba311 100644 --- a/src/main/java/com/yn/bftl/thirdparty/modules/business/service/impl/SubaccountServiceImpl.java +++ b/src/main/java/com/yn/bftl/thirdparty/modules/business/service/impl/SubaccountServiceImpl.java @@ -2353,10 +2353,12 @@ // 获取已生成的平台服务费分账记录 List platformSubaccounts = subaccountList.stream().filter(subaccount -> subaccount.getCompany() == null).collect(Collectors.toList()); if (CollectionUtils.isNotEmpty(platformSubaccounts)) { - for (Subaccount platformSubaccount : platformSubaccounts) { - handleSubaccountStatus(platformSubaccount, false); - } - } else if (CollectionUtils.isNotEmpty(platformSubaccountList)) { + log.error("分账的公司信息为空."); +// for (Subaccount platformSubaccount : platformSubaccounts) { +// handleSubaccountStatus(platformSubaccount, false); +// } + } //else + if (CollectionUtils.isNotEmpty(platformSubaccountList)) { // 获取平台电子账簿ID String balanceAcctId = chinaumsUtil.getFeeBalanceAcctId(); // 获取平台服务费对应的银联支付单 @@ -2381,7 +2383,7 @@ List confirmsDetailDTOList = new ArrayList<>(); ByxChinaumsGuaranteePayConfirmsDetailDTO confirmsDetailDTO = ByxChinaumsGuaranteePayConfirmsDetailDTO .builder() - .profitSharingWalletId(businessRelations.getSourceCompany().getWalletId()) + .profitSharingWalletId(balanceAcctId) .profitSharingAmt(platformServiceFee.multiply(new BigDecimal(100)).longValue()) .build(); confirmsDetailDTOList.add(confirmsDetailDTO); @@ -2690,10 +2692,14 @@ platformSubaccountList.remove(platformSubaccount); continue; } + if (StringUtils.isEmpty(settOrderNo)) { + continue; + } + subaccount.setSubaccountState(SubaccountState.SEPARATE_SUCC); subaccount.setExternalId(settOrderNo); subaccountRepository.saveAndFlush(subaccount); writeSeparateLog(String.format("[分账][生成][普通订单][%s],生成分账单成功,银联结算单号[%s]。", order.getSn(), settOrderNo)); - handleSubaccountStatus(subaccount, false); +// handleSubaccountStatus(subaccount, false); subaccountList.add(subaccount); } return platformSubaccountList;