提交 7445d9fb 编写于 作者: J Javen205

🔧 微信内H5调起支付再次签名

上级 7d7af305
......@@ -117,7 +117,7 @@ public class WxPayController {
String prepay_id = resultMap.get("prepay_id");
Map<String, String> packageParams = WxPayKit.prepayIdCreateSign(prepay_id, wxPayBean.getAppId(), wxPayBean.getPartnerKey());
Map<String, String> packageParams = WxPayKit.prepayIdCreateSign(prepay_id, wxPayBean.getAppId(), wxPayBean.getPartnerKey(),SignType.HMACSHA256);
String jsonStr = JSON.toJSONString(packageParams);
return new AjaxResult().success(jsonStr);
......
......@@ -267,21 +267,25 @@ public class WxPayKit {
}
/**
* 预付订单再次签名
* 公众号支付-预付订单再次签名<br/>
* 注意此处签名方式需与统一下单的签名类型一致<br/>
*
* @param prepay_id 预付订单号
* @param appId 应用编号
* @param partnerKey API Key
* @return {@link Map<String,String>} 再次签名后的 Map
*/
public static Map<String, String> prepayIdCreateSign(String prepay_id, String appId, String partnerKey) {
public static Map<String, String> prepayIdCreateSign(String prepay_id, String appId, String partnerKey, SignType signType) {
Map<String, String> packageParams = new HashMap<String, String>();
packageParams.put("appId", appId);
packageParams.put("timeStamp", String.valueOf(System.currentTimeMillis() / 1000));
packageParams.put("nonceStr", String.valueOf(System.currentTimeMillis()));
packageParams.put("package", "prepay_id=" + prepay_id);
packageParams.put("signType", "MD5");
String packageSign = WxPayKit.createSign(packageParams, partnerKey, SignType.MD5);
if (signType == null) {
signType = SignType.MD5;
}
packageParams.put("signType", signType.getType());
String packageSign = WxPayKit.createSign(packageParams, partnerKey, signType);
packageParams.put("paySign", packageSign);
return packageParams;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册