From 2113e902e7cb611f886c24a55a223a729fba89a1 Mon Sep 17 00:00:00 2001 From: HH Date: Thu, 21 Jul 2022 14:12:01 +0800 Subject: [PATCH] =?UTF-8?q?payment=5Fid=E6=B2=A1=E6=9C=89=E4=BF=9D?= =?UTF-8?q?=E5=AD=98=E5=88=B0financial=5Fmaster=E8=A1=A8=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ghy/payment/service/FinancialMasterService.java | 6 +++--- .../service/impl/FinancialMasterServiceImpl.java | 12 +++++------- .../ghy/payment/service/impl/PayCallbackService.java | 10 +++++----- 3 files changed, 13 insertions(+), 15 deletions(-) diff --git a/ghy-payment/src/main/java/com/ghy/payment/service/FinancialMasterService.java b/ghy-payment/src/main/java/com/ghy/payment/service/FinancialMasterService.java index f4ec6416..24b273f2 100644 --- a/ghy-payment/src/main/java/com/ghy/payment/service/FinancialMasterService.java +++ b/ghy-payment/src/main/java/com/ghy/payment/service/FinancialMasterService.java @@ -46,10 +46,10 @@ public interface FinancialMasterService { /** * 支付成功 * - * @param orderNo 订单号 - * @param payChannel 支付渠道 + * @param orderMasterCode 主订单号 + * @param payChannel 支付渠道 */ - void paySucceeded(String orderNo, String payChannel); + void paySucceeded(String orderMasterCode, String payChannel); /** * 创建主财务单CODE diff --git a/ghy-payment/src/main/java/com/ghy/payment/service/impl/FinancialMasterServiceImpl.java b/ghy-payment/src/main/java/com/ghy/payment/service/impl/FinancialMasterServiceImpl.java index bfe86534..47af1757 100644 --- a/ghy-payment/src/main/java/com/ghy/payment/service/impl/FinancialMasterServiceImpl.java +++ b/ghy-payment/src/main/java/com/ghy/payment/service/impl/FinancialMasterServiceImpl.java @@ -74,15 +74,13 @@ public class FinancialMasterServiceImpl implements FinancialMasterService { } @Override - public void paySucceeded(String orderNo, String payChannel) { + public void paySucceeded(String orderMasterCode, String payChannel) { try { - if(orderNo.contains("_")){ - orderNo = orderNo.split("_")[0]; - } - financialMasterMapper.paySucceeded(orderNo, PayTypeEnum.valueOf(payChannel.toUpperCase()).getCode()); - financialMasterMapper.updateOrderStatus(orderNo, PayStatus.PAID.getCode()); + + financialMasterMapper.paySucceeded(orderMasterCode, PayTypeEnum.valueOf(payChannel.toUpperCase()).getCode()); + financialMasterMapper.updateOrderStatus(orderMasterCode, PayStatus.PAID.getCode()); } catch (IllegalArgumentException e) { - logger.warn("OrderNo[{}] Unknown payChannel [{}]!", orderNo, payChannel); + logger.warn("OrderNo[{}] Unknown payChannel [{}]!", orderMasterCode, payChannel); } } diff --git a/ghy-payment/src/main/java/com/ghy/payment/service/impl/PayCallbackService.java b/ghy-payment/src/main/java/com/ghy/payment/service/impl/PayCallbackService.java index 29446a34..0480be8a 100644 --- a/ghy-payment/src/main/java/com/ghy/payment/service/impl/PayCallbackService.java +++ b/ghy-payment/src/main/java/com/ghy/payment/service/impl/PayCallbackService.java @@ -35,7 +35,7 @@ public class PayCallbackService implements CallBackService { @Override public void onCallback(Event event) { - logger.debug("pay callback is {}", event); + logger.info("pay callback is {}", event); String data = event.getData(); PayCallback payment = JSON.parseObject(data, PayCallback.class); Assert.hasText(payment.getOrderNo(), "orderNo is blank !!!"); @@ -51,12 +51,12 @@ public class PayCallbackService implements CallBackService { PaymentDTO param = new PaymentDTO(); param.setId(payment.getId()); param.setStatus(payment.getStatus()); - param.setPayTime(payment.getPayTime()); + param.setPayTime(System.currentTimeMillis()); financialMasterService.updatePayment(param); if (AdapayStatusEnum.succeeded.code.equals(payment.getStatus())) { // 修改主财务单状态 - financialMasterService.paySucceeded(payment.getOrderNo(), payment.getPayChannel()); + financialMasterService.paySucceeded(payment.getOrderNo().split("_")[0], payment.getPayChannel()); } else { logger.warn("支付失败 : {}", payment); } @@ -67,15 +67,15 @@ public class PayCallbackService implements CallBackService { @Override public void onResponse(JSONObject response) { + logger.info("支付结果: {}", response.toJSONString()); // 保存一条支付记录 PaymentDTO payment = response.toJavaObject(PaymentDTO.class); String status = payment.getStatus(); - payment.setStatus("pending"); financialMasterService.insertPayment(payment); if (AdapayStatusEnum.succeeded.code.equals(status)) { FinancialMaster update = new FinancialMaster(); - update.setOrderMasterCode(payment.getOrderNo()); + update.setOrderMasterCode(payment.getOrderNo().split("_")[0]); update.setPaymentId(payment.getId()); financialMasterService.updateFinancialMaster(update); } else {