From f788607ff771a47bc60d6a86e00b3433c40f3d2c Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 24 九月 2021 15:22:03 +0800 Subject: [PATCH] 接入视频直播 --- src/main/java/com/yeshi/buwan/util/user/VipUtil.java | 78 +++++++++++++++++++++++++++++++++++++- 1 files changed, 75 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/util/user/VipUtil.java b/src/main/java/com/yeshi/buwan/util/user/VipUtil.java index 98e71a7..3fb3fd2 100644 --- a/src/main/java/com/yeshi/buwan/util/user/VipUtil.java +++ b/src/main/java/com/yeshi/buwan/util/user/VipUtil.java @@ -1,9 +1,16 @@ package com.yeshi.buwan.util.user; import com.alipay.api.AlipayApiException; +import com.yeshi.buwan.domain.vip.OrderType; +import com.yeshi.buwan.util.Constant; +import org.apache.commons.io.IOUtils; import org.yeshi.utils.alipay.AlipayH5PayUtil; import org.yeshi.utils.entity.alipay.AlipayAppInfo; +import org.yeshi.utils.entity.wx.WXAPPInfo; +import org.yeshi.utils.entity.wx.WXPlaceOrderParams; +import org.yeshi.utils.wx.WXPayV3Util; +import java.io.FileInputStream; import java.io.IOException; import java.math.BigDecimal; import java.util.Properties; @@ -28,17 +35,53 @@ } /** + * 鑾峰彇寰俊app + * + * @return + */ + + public static WXAPPInfo getWXAPP() { + String privateKey = ""; + try { + String content = IOUtils.toString(VipUtil.class.getClassLoader().getResourceAsStream("wx/apiclient_key.pem")); + privateKey = content.replace("-----BEGIN PRIVATE KEY-----", "") + .replace("-----END PRIVATE KEY-----", "") + .replaceAll("\\s+", ""); + } catch (Exception e) { + + } + + Properties properties = new Properties(); + try { + properties.load(VipUtil.class.getClassLoader().getResourceAsStream("wxpay.properties")); + } catch (IOException e) { + e.printStackTrace(); + } + String appId = properties.getProperty("app_id"); + String mchId = properties.getProperty("mch_id"); + String mchSerialNo = properties.getProperty("mch_serial_no"); + String apiV3Key = properties.getProperty("api_v3_key"); + + WXAPPInfo app = new WXAPPInfo(appId, mchId, mchSerialNo, privateKey, apiV3Key); + + return app; + } + + /** * 鑾峰彇浼氬憳鍏呭�兼敮浠樺疂鏀粯琛ㄥ崟 * * @param orderNo * @param money * @return */ - public static String getVipChargeAlipayForm(String orderNo, BigDecimal money) { + public static String getVipChargeAlipayForm(String id, OrderType orderType, String orderNo, BigDecimal money) { try { String goodsTitle = "褰辫澶у叏浼氬憳鍏呭��"; - String returnUrl = "http://vip.ysdq.yeshitv.com"; - String notifyUrl = "http://193.112.34.40:8089/BuWan/alipay/pay"; + if (orderType == OrderType.video) { + goodsTitle = "褰辫澶у叏鍗曠墖璐拱"; + } + String returnUrl = getPaySuccessUrl(id); + String notifyUrl = Constant.HOST + "/BuWan/alipay/pay"; AlipayAppInfo appInfo = getAlipayApp(); String form = AlipayH5PayUtil.createOrderForm(appInfo, orderNo, money, goodsTitle, returnUrl, notifyUrl); return form; @@ -49,4 +92,33 @@ } + public static String getPaySuccessUrl(String id) { + return "http://vip.ysdq.yeshitv.com/pay_success.html?id=" + id; + } + + + /** + * 寰俊涓嬪崟 + * + * @param ip + * @param orderNo + * @param money + * @param title + * @return + * @throws Exception + */ + public static String createWXOrder(String id, String ip, String orderNo, BigDecimal money, String title) throws Exception { + WXPlaceOrderParams params = new WXPlaceOrderParams(); + params.setIp(ip); + params.setOrderNo(orderNo); + params.setNotifyUrl(Constant.HOST + "/BuWan/wx/pay/vip"); + params.setFee(money); + params.setBody(title); + params.setApp(getWXAPP()); + String returnUrl = "http://vip.ysdq.yeshitv.com/pay_finish.html?id=" + id; + String payUrl = WXPayV3Util.createH5Order(params, returnUrl); + return payUrl; + } + + } -- Gitblit v1.8.0