admin
2022-01-12 c9fdff7d45ae118eac10397d8f34661e9f2e968a
service-vip/src/main/java/com/ks/vip/util/PayUtil.java
@@ -1,7 +1,10 @@
package com.ks.vip.util;
import com.alipay.api.AlipayApiException;
import com.google.gson.Gson;
import org.apache.commons.io.IOUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.yeshi.utils.alipay.AlipayH5PayUtil;
import org.yeshi.utils.entity.alipay.AlipayAppInfo;
import org.yeshi.utils.entity.wx.WXAPPInfo;
@@ -13,6 +16,8 @@
import java.util.Properties;
public class PayUtil {
    final static Logger logger = LoggerFactory.getLogger(PayUtil.class);
    public static AlipayAppInfo getAlipayApp() {
@@ -59,6 +64,7 @@
        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;
@@ -71,14 +77,8 @@
     * @param money
     * @return
     */
    public static String getVipChargeAlipayForm(String id, OrderType orderType, String orderNo, BigDecimal money) {
    public static String getVipChargeAlipayForm(String goodsTitle, String orderNo, BigDecimal money, String notifyUrl, String returnUrl) {
        try {
            String goodsTitle = "影视大全会员充值";
            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;
@@ -86,11 +86,6 @@
            e.printStackTrace();
        }
        return null;
    }
    public static String getPaySuccessUrl(String id) {
        return "http://vip.ysdq.yeshitv.com/pay_success.html?id=" + id;
    }
@@ -104,15 +99,16 @@
     * @return
     * @throws Exception
     */
    public static String createWXOrder(String id, String ip, String orderNo, BigDecimal money, String title) throws Exception {
    public static String createWXOrder(String ip, String orderNo, BigDecimal money, String title, String notifyUrl, String returnUrl) throws Exception {
        WXPlaceOrderParams params = new WXPlaceOrderParams();
        params.setIp(ip);
        params.setOrderNo(orderNo);
        params.setNotifyUrl(Constant.HOST + "/BuWan/wx/pay/vip");
        params.setNotifyUrl(notifyUrl);
        params.setFee(money);
        params.setBody(title);
        params.setApp(getWXAPP());
        String returnUrl = "http://vip.ysdq.yeshitv.com/pay_finish.html?id=" + id;
        logger.info("微信支付表单数据:{}", new Gson().toJson(params));
        String payUrl = WXPayV3Util.createH5Order(params, returnUrl);
        return payUrl;
    }