1.添加WXpayCommon类用以具体实现功能,代码如下:
1 package com.karat.cn.wxCommon; 2 3 import java.io.IOException; 4 import java.util.HashMap; 5 import java.util.Map; 6 7 import com.karat.cn.util.WXPay; 8 import com.karat.cn.util.WXPayConfigImpl; 9 import com.karat.cn.util.WXPayConstants; 10 import com.karat.cn.util.WXPayUtil; 11 import com.karat.cn.vo.VoUnifiedOrderWx; 12 13 /** 14 * 支付,提现,退款 15 * @author 开发 16 * 17 */ 18 public class WXpayCommon { 19 20 private static WXPay wxpay; 21 private static WXPayConfigImpl config; 22 23 24 public static void WXpayCommonIns() throws Exception { 25 config = WXPayConfigImpl.getInstance(); 26 wxpay = new WXPay(config); 27 } 28 29 /** 30 * 支付 31 * @param orderInfo 自己数据库生成的订单 32 * @param openid 用户的标识openId 33 * @param ip 34 * @param flag 35 * @return 36 * @throws IOException 37 */ 38 public static VoUnifiedOrderWx payOrderWx(WxWithdrawOrder orderInfo, String openid, String ip, boolean flag) throws IOException { 39 VoUnifiedOrderWx voUnifiedOrderWx = null; 40 try { 41 Map<String, String> respData = null; 42 if (flag) { 43 HashMap<String, String> data = new HashMap<String, String>(); 44 data.put("body", orderInfo.getOrderNo()); 45 data.put("out_trade_no", orderInfo.getOrderNo());//订单号 46 data.put("fee_type", "CNY"); 47 data.put("total_fee", "1");//支付金额(分) 48 data.put("spbill_create_ip", ip); 49 data.put("notify_url", "******************");//支付成功回调地址 50 // 交易类型--JSAPI:公众号支付、NATIVE:原生扫码支付、APP:APP支付 51 // 公众号支付 52 data.put("trade_type", "JSAPI");//支付方式 53 // 设备号--自定义参数,可以为终端设备号(门店号或收银设备ID),PC网页或公众号内支付可以传"WEB" 54 data.put("device_info", "WEB"); 55 // 用户openid 56 data.put("openid", openid); 57 data.put("product_id", "1000" + ""); 58 59 if (null == wxpay) {