869
社区成员
发帖
与我相关
我的任务
分享
function onBridgeReady(){
WeixinJSBridge.invoke(
'getBrandWCPayRequest',
{
"appId" : obj.appId, //公众号名称,由商户传入
"timeStamp" : obj.timeStamp, //时间戳,自 1970 年以来的秒数
"nonceStr" : obj.nonceStr, //随机串
"package" : obj.packageValue, //<span style="font-family:微软雅黑;">商品包信息</span>
"signType" : obj.signType, //微信签名方式:
"paySign" : obj.paySign,
//微信签名
},
function(res) {
alert(res.err_msg+res.err_code+res.err_desc+ obj.appId+obj.timeStamp+obj.packageValue+obj.signType+obj.paySign);
if (res.err_msg == "get_brand_wcpay_request:ok") {
window.location.href = obj.sendUrl;
} else {
alert("fail");
window.location.href = basePath+"wxpay.jsp";
//<span style="font-family:微软雅黑;">当失败后,继续跳转该支付页面让用户可以继续付款,贴别注意不能直接调转jsp,</span><span style="font-size:10.5pt">不然会报</span><span style="font-size:12.0pt"> system:access_denied。</span>
}
}
public BrandWCPayReqData( String packageValue,String type) {
super();
this.appId = Configure.getAppid();
this.timeStamp = System.currentTimeMillis()/1000+"";
this.packageValue = "prepay_id="+packageValue;
setNonceStr(RandomStringGenerator.getRandomStringByLength(32));
this.signType = "MD5";
String sign = Signature.getSign(toMap());
setPaySign(sign);
}
public Map<String,Object> toMap(){
Map<String,Object> map = new HashMap<String, Object>();
Field[] fields = this.getClass().getDeclaredFields();
for (Field field : fields) {
Object obj;
try {
obj = field.get(this);
if(obj!=null){
if(field.getName().equals("packageValue"))
map.put("package", obj);
else map.put(field.getName(), obj);
}
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
return map;
}
<openid><![CDATA[wxd930ea8d1a258f4f]]></openid>
<trade_type><![CDATA[JSAPI]]></trade_type>
<cash_fee_type><![CDATA[CNY]]></cash_fee_type>
<refund_id><![CDATA[1234567892017021218072383249]]></refund_id>
<cash_refund_fee><![CDATA[101]]></cash_refund_fee>
<nonce_str><![CDATA[mt1vkdpuybbcj97cgz2d034d7nxink8q]]></nonce_str>
<return_code><![CDATA[SUCCESS]]></return_code>
<refund_fee_type><![CDATA[CNY]]></refund_fee_type>
<mch_id><![CDATA[1402455202]]></mch_id>
<sign><![CDATA[777BB1A9407991C4A04D394590B73579]]></sign>
<cash_fee><![CDATA[101]]></cash_fee>
<refund_fee><![CDATA[101]]></refund_fee>
<err_msg><![CDATA[SUCCESS]]></err_msg>
<cash_refund_fee_type><![CDATA[CNY]]></cash_refund_fee_type>
<return_msg><![CDATA[OK]]></return_msg>
<fee_type><![CDATA[CNY]]></fee_type>
<bank_type><![CDATA[CMC]]></bank_type>
<device_info><![CDATA[WEBJSPI]]></device_info>
<out_trade_no><![CDATA[D20170212180709]]></out_trade_no>
<transaction_id><![CDATA[100539073720170212180721167357]]></transaction_id>
<total_fee><![CDATA[101]]></total_fee>
<appid><![CDATA[wxa562cqb855485493]]></appid>
<out_refund_no><![CDATA[D20170212180709]]></out_refund_no>
<result_code><![CDATA[SUCCESS]]></result_code>
<err_code><![CDATA[SUCCESS]]></err_code>
</xml>
<xml>
<return_code><![CDATA[FAIL]]></return_code>
<return_msg><![CDATA[沙箱支付金额不正确,请确认验收case]]></return_msg>
</xml>