소스 검색

支付 新增 BridgeConfig 方法,可获得 prepay ID,及js支付时所需要的参数

统一下单 新增非必传参数
ciel yu 6 년 전
부모
커밋
546dce2396
1개의 변경된 파일16개의 추가작업 그리고 1개의 파일을 삭제
  1. 16 1
      pay/pay.go

+ 16 - 1
pay/pay.go

@@ -35,6 +35,10 @@ type Params struct {
 	OpenID     string
 	OpenID     string
 	TradeType  string
 	TradeType  string
 	SignType   string
 	SignType   string
+	Detail     string
+	Attach     string
+	GoodsTag   string
+	NotifyUrl  string
 }
 }
 
 
 // Config 是传出用于 js sdk 用的参数
 // Config 是传出用于 js sdk 用的参数
@@ -145,12 +149,23 @@ func (pcf *Pay) PrePayOrder(p *Params) (payOrder PreOrder, err error) {
 	param["body"] = p.Body
 	param["body"] = p.Body
 	param["mch_id"] = pcf.PayMchID
 	param["mch_id"] = pcf.PayMchID
 	param["nonce_str"] = nonceStr
 	param["nonce_str"] = nonceStr
-	param["notify_url"] = pcf.PayNotifyURL
 	param["out_trade_no"] = p.OutTradeNo
 	param["out_trade_no"] = p.OutTradeNo
 	param["spbill_create_ip"] = p.CreateIP
 	param["spbill_create_ip"] = p.CreateIP
 	param["total_fee"] = p.TotalFee
 	param["total_fee"] = p.TotalFee
 	param["trade_type"] = p.TradeType
 	param["trade_type"] = p.TradeType
 	param["openid"] = p.OpenID
 	param["openid"] = p.OpenID
+	param["detail"] = p.Detail
+	param["attach"] = p.Attach
+	param["goods_tag"] = p.GoodsTag
+	param["notify_url"] = pcf.PayNotifyURL
+	// 签名类型
+	if p.SignType != "" {
+		param["sign_type"] = p.SignType
+	}
+	// 通知地址
+	if p.NotifyUrl != "" {
+		param["notify_url"] = p.NotifyUrl
+	}
 
 
 	bizKey := "&key=" + pcf.PayKey
 	bizKey := "&key=" + pcf.PayKey
 	str := orderParam(param, bizKey)
 	str := orderParam(param, bizKey)