From 78177caf37301a439689b0e6ad12e14cd3e56200 Mon Sep 17 00:00:00 2001 From: 18650502300 <18650502300@163.com> Date: Tue, 24 Sep 2024 15:12:03 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=94=AF=E4=BB=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ruoyi/common/pay/tm/Application.java | 21 +++++++++++++++++-- .../com/ruoyi/common/pay/tm/TmPayService.java | 20 ++++++++++++++++++ 2 files changed, 39 insertions(+), 2 deletions(-) diff --git a/electripper-common/src/main/java/com/ruoyi/common/pay/tm/Application.java b/electripper-common/src/main/java/com/ruoyi/common/pay/tm/Application.java index b1e5045..156fde6 100644 --- a/electripper-common/src/main/java/com/ruoyi/common/pay/tm/Application.java +++ b/electripper-common/src/main/java/com/ruoyi/common/pay/tm/Application.java @@ -58,16 +58,33 @@ public class Application { body.put("terminalType", "1"); body.put("shopId", "488"); // 填充必填字段 - body.put("sn", "deviceSN123456"); // 设备编号,需替换为真实设备号 body.put("payType", "wx_pay"); // 支付方式,可以是 wx.pay, ali.pay, union.online body.put("outTradeId", "tradeId123"); // 商户订单号 body.put("body", "商品描述"); // 商品描述 body.put("notifyUrl", "https://yourdomain.com/notify"); // 异步回调URL body.put("frontUrl", "https://yourdomain.com/front"); // 前端页面跳转URL - body.put("profitSharing", "N"); // 是否分账,示例填写 N doPost("/open/Pay/unifiedOrder", body); } + + /** + * 小程序支付 + */ + public static void miniPay() { + HashMap body = new HashMap(); + body.put("payAmount", "1"); + body.put("terminalType", "1"); + body.put("shopId", "488"); + // 填充必填字段 + body.put("payType", "wx_pay"); // 支付方式,可以是 wx.pay, ali.pay, union.online + body.put("outTradeId", "tradeId123"); // 商户订单号 + body.put("openid", "111"); // openid + body.put("body", "商品描述"); // 商品描述 + body.put("notifyUrl", "https://yourdomain.com/notify"); // 异步回调URL + body.put("frontUrl", "https://yourdomain.com/front"); // 前端页面跳转URL + doPost("/open/Pay/miniPay", body); + } + private static void doPost(String url, HashMap body) { body.put("developerId", "100001"); body.put("version", "1.0"); diff --git a/electripper-common/src/main/java/com/ruoyi/common/pay/tm/TmPayService.java b/electripper-common/src/main/java/com/ruoyi/common/pay/tm/TmPayService.java index d8d02a3..60c768e 100644 --- a/electripper-common/src/main/java/com/ruoyi/common/pay/tm/TmPayService.java +++ b/electripper-common/src/main/java/com/ruoyi/common/pay/tm/TmPayService.java @@ -65,6 +65,26 @@ public class TmPayService { doPost(channel.getHttpUrl() + "/open/Pay/unifiedOrder", body, channel); } + /** + * 小程序支付 + */ + public void miniPay(IChannelInfo channel, Payable payable) { + HashMap body = new HashMap<>(); + body.put("payAmount", String.valueOf(payable.getAmount())); + body.put("terminalType", "1"); + body.put("shopId", channel.getShopId()); // 从渠道获取shopId + body.put("sn", channel.getSn()); + body.put("payType", "wx_pay"); + body.put("outTradeId", payable.getOutTradeNo()); + body.put("body", payable.getDescription()); + body.put("notifyUrl", channel.getNotifyUrl()); + body.put("frontUrl", channel.getFrontUrl()); + + doPost(channel.getHttpUrl() + "/open/Pay/miniPay", body, channel); + } + + + private static void doPost(String url, HashMap body, IChannelInfo channel) { body.put("developerId", channel.getDeveloperId()); body.put("version", "1.0");