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 1e47f6f..a6cb1d0 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 @@ -1403,7 +1403,9 @@ return; } } else { - + if (StringUtils.isEmpty(subaccount.getExternalId())) { + return; + } JSONObject params = new JSONObject(); params.put("settOrderNo", subaccount.getExternalId()); JSONObject result = byxChinaumsUtil.execute(ByxRouteUtil.ROUTE_WALLET_COMBINED_GUARANTEE_PAYMENTS_CONFIRMS_QUERY, params, JSONObject.class); @@ -2374,12 +2376,12 @@ // 只有当分账记录的金额和银联支付单金额一致才进行分账 if (totalPlatformServiceFee.compareTo(platformServiceFee) == 0) { - Company platformCompany = companyRepository.findByWalletId(balanceAcctId); - BusinessRelations businessRelations = businessRelationsRepository.findFirstBySourceCompany(platformCompany); +// Company platformCompany = companyRepository.findByWalletId(balanceAcctId); + BusinessRelations businessRelations = businessRelationsRepository.findFirstBySourceCompany(order.getSellerCompany()); List confirmsDetailDTOList = new ArrayList<>(); ByxChinaumsGuaranteePayConfirmsDetailDTO confirmsDetailDTO = ByxChinaumsGuaranteePayConfirmsDetailDTO .builder() - .profitSharingWalletId(balanceAcctId) + .profitSharingWalletId(businessRelations.getSourceCompany().getWalletId()) .profitSharingAmt(platformServiceFee.multiply(new BigDecimal(100)).longValue()) .build(); confirmsDetailDTOList.add(confirmsDetailDTO); @@ -2497,12 +2499,12 @@ // 获取平台电子账簿ID String balanceAcctId = chinaumsUtil.getFeeBalanceAcctId(); - Company platformCompany = companyRepository.findByWalletId(balanceAcctId); - BusinessRelations businessRelations = businessRelationsRepository.findFirstBySourceCompany(platformCompany); +// Company platformCompany = companyRepository.findByWalletId(balanceAcctId); + BusinessRelations businessRelations = businessRelationsRepository.findFirstBySourceCompany(order.getSellerCompany()); List confirmsDetailDTOList = new ArrayList<>(); ByxChinaumsGuaranteePayConfirmsDetailDTO confirmsDetailDTO = ByxChinaumsGuaranteePayConfirmsDetailDTO .builder() - .profitSharingWalletId(subaccount.getCompany().getWalletId()) + .profitSharingWalletId(businessRelations.getSourceCompany().getWalletId()) .profitSharingAmt(subaccount.getSubaccountAmount().multiply(new BigDecimal(100)).longValue()) .build(); confirmsDetailDTOList.add(confirmsDetailDTO); @@ -2659,12 +2661,12 @@ // 获取平台电子账簿ID String balanceAcctId = chinaumsUtil.getFeeBalanceAcctId(); - Company platformCompany = companyRepository.findByWalletId(balanceAcctId); - BusinessRelations businessRelations = businessRelationsRepository.findFirstBySourceCompany(platformCompany); +// Company platformCompany = companyRepository.findByWalletId(balanceAcctId); + BusinessRelations businessRelations = businessRelationsRepository.findFirstBySourceCompany(order.getSellerCompany()); List confirmsDetailDTOList = new ArrayList<>(); ByxChinaumsGuaranteePayConfirmsDetailDTO confirmsDetailDTO = ByxChinaumsGuaranteePayConfirmsDetailDTO .builder() - .profitSharingWalletId(subaccount.getCompany().getWalletId()) + .profitSharingWalletId(businessRelations.getSourceCompany().getWalletId()) .profitSharingAmt(subaccount.getSubaccountAmount().multiply(new BigDecimal(100)).longValue()) .build(); confirmsDetailDTOList.add(confirmsDetailDTO);