diff --git a/ghy-admin/src/main/java/com/ghy/callback/PayCallbackService.java b/ghy-admin/src/main/java/com/ghy/callback/PayCallbackService.java index 278e8b33..fab9df5b 100644 --- a/ghy-admin/src/main/java/com/ghy/callback/PayCallbackService.java +++ b/ghy-admin/src/main/java/com/ghy/callback/PayCallbackService.java @@ -22,6 +22,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; import java.time.LocalDateTime; +import java.util.List; import java.util.concurrent.CompletableFuture; /** @@ -100,6 +101,21 @@ public class PayCallbackService implements CallBackService { financialMaster2Update.setPayStatus(PayStatus.PAID.getCode()); financialMasterService.updateFinancialMaster(financialMaster2Update); // TODO 拆分对应的分账流水 + }else { + // 主单的付款 + String masterOrderNo = payment.getOrderNo().split("_")[0]; + + // 找到主单记录 + FinancialMaster param = new FinancialMaster(); + param.setOrderMasterCode(masterOrderNo); + List financialMasters = financialMasterService.selectFinancialMasterList(param); + FinancialMaster source = financialMasters.get(0); + // 更新主单paymentId 以及主单状态 + FinancialMaster financialMaster2Update = new FinancialMaster(); + financialMaster2Update.setId(source.getId()); + financialMaster2Update.setPayStatus(PayStatus.PAID.getCode()); + financialMaster2Update.setPaymentId(payment.getId()); + financialMasterService.updateFinancialMaster(financialMaster2Update); } // 更新主财务单状态 financialMasterService.paySucceeded(payment.getId(), payment.getPayChannel());