生成微信支付二维码及微信支付

jquery.qrcode

http://www.cnblogs.com/xcsn/archive/2013/08/14/3258035.html


// 账号信息
String appid = PropertiesHandler.getConfigValue("APP_ID").toString(); // appId
// String appsecret = WeChatParam.APP_SECRET; // appSecret
String mch_id = PropertiesHandler.getConfigValue("MCH_ID").toString(); // 商业号
String key = PropertiesHandler.getConfigValue("API_KEY").toString(); // key
String currTime = PayCommonUtil.getCurrTime(); // 获取当前时间格式为24位
String strTime = currTime.substring(8, currTime.length()); // 截取24位的第8位然后加上长度
String strRandom = PayCommonUtil.buildRandom(4) + ""; // 产生随机数
String nonce_str = strTime + strRandom;
//String order_price = money*100; 
String body = "***——微信充值"; // 商品名称
String fsNO = GenerateKeyNO.generate("FS");
String out_trade_no = fsNO; // 商户订单号
String spbill_create_ip = LLPayUtil.getIpAddr(request).replace("_", "."); // 获取发起电脑ip
// 回调接口
String notify_url = PropertiesHandler.getConfigValue("NOTIFY_WCURL").toString(); // 回掉地址
String trade_type = "NATIVE"; //交易类型
SortedMap packageParams = new TreeMap();
packageParams.put("appid", appid);
packageParams.put("mch_id", mch_id);
packageParams.put("nonce_str", nonce_str);
packageParams.put("body", body);
packageParams.put("out_trade_no", out_trade_no);
packageParams.put("total_fee", String.valueOf((int)(money*100)));// 价格(注意:价格的单位是分)
packageParams.put("spbill_create_ip", spbill_create_ip);
packageParams.put("notify_url", notify_url);
packageParams.put("trade_type", trade_type);
// 加密
String sign = PayCommonUtil.createSign("UTF-8", packageParams, key);
packageParams.put("sign", sign);
// 解析
String requestXML = PayCommonUtil.getRequestXml(packageParams);
System.out.println(requestXML);
// 取值
String resXml = HttpUtil.postData(PropertiesHandler.getConfigValue("UFDODER_URL").toString(), requestXML);
String urlCode = null;
try {
@SuppressWarnings("unchecked")
Map map = XMLUtil.doXMLParse(resXml);
urlCode = (String) map.get("code_url");

} catch (Exception e) {
e.printStackTrace();
}
return urlCode;
}

你可能感兴趣的:(生成微信支付二维码及微信支付)