From 7eb41355fb86285e4ff32587a428369020d13330 Mon Sep 17 00:00:00 2001 From: "kuang.yifei@iwhalecloud.com" Date: Fri, 17 Jun 2022 23:16:58 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E9=87=8D=E5=A4=8D=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E5=8F=B7+=E6=94=AF=E4=BB=98=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ghy/web/controller/pay/AlipayController.java | 5 ++++- .../ghy/payment/service/impl/FinancialMasterServiceImpl.java | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/ghy-admin/src/main/java/com/ghy/web/controller/pay/AlipayController.java b/ghy-admin/src/main/java/com/ghy/web/controller/pay/AlipayController.java index a5592a63..e4c2c792 100644 --- a/ghy-admin/src/main/java/com/ghy/web/controller/pay/AlipayController.java +++ b/ghy-admin/src/main/java/com/ghy/web/controller/pay/AlipayController.java @@ -44,10 +44,13 @@ public class AlipayController extends BaseController { if (om == null || fm == null) { return AjaxResult.error("订单不存在"); } + if (om.getPayStatus() == 1 || fm.getPayStatus() == 1) { + return AjaxResult.error("订单已支付,不要重复付款!"); + } Map map; String payMoney = fm.getPayMoney().setScale(2, BigDecimal.ROUND_UNNECESSARY).toString(); // TODO 这里需要补充商品标题和商品描述信息 - PayParam payParam = PayParam.createDelayPay(om.getCode(), payMoney, "商品标题", "商品描述信息"); + PayParam payParam = PayParam.createDelayPay(om.getCode() + "_" + System.currentTimeMillis(), "0.01", "商品标题", "商品描述信息"); try { map = adapayService.alipayQrPay(om.getDeptId(), payParam, null, null, null); } catch (BaseAdaPayException e) { 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 57deaee3..bfe86534 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 @@ -76,6 +76,9 @@ public class FinancialMasterServiceImpl implements FinancialMasterService { @Override public void paySucceeded(String orderNo, String payChannel) { try { + if(orderNo.contains("_")){ + orderNo = orderNo.split("_")[0]; + } financialMasterMapper.paySucceeded(orderNo, PayTypeEnum.valueOf(payChannel.toUpperCase()).getCode()); financialMasterMapper.updateOrderStatus(orderNo, PayStatus.PAID.getCode()); } catch (IllegalArgumentException e) {