来源:自学PHP网 时间:2015-04-14 12:38 作者: 阅读:次
[导读] 用户支付完成后,V2版本微信支付需要调用发货接口,否则微信会告警并且用户也可以进行维权,总之会有灰常多的事情: 1 public void DeliverNotify() 2 { 3...
用户支付完成后,V2版本微信支付需要调用发货接口,否则微信会告警并且用户也可以进行维权,总之会有灰常多的事情: 1 public void DeliverNotify() 2 { 3 string openId = string.Empty; //买家openid 4 string transactionId = string.Empty;//微信交易单号 5 string orderNo = string.Empty;//我们自己的订单号,文档中的out_trade_no 6 7 8 WxPayModel model = WxPayModel.Create(); 9 string postData = model.CreateDeliverNotifyPackage(openId, transactionId, orderNo); 10 WeiXinHelper.DeliverNotify(postData); 11 } 下面是创建发货通知json的方法: 1 /// <summary> 2 /// 创建发货成功 Package (已测试通过) 3 /// </summary> 4 /// <returns></returns> 5 public string CreateDeliverNotifyPackage(string openId, string transId, string out_trade_no) 6 { 7 Dictionary<string, string> nativeObj = new Dictionary<string, string>(); 8 9 nativeObj.Add("appid", AppId); 10 nativeObj.Add("openid", openId); 11 nativeObj.Add("transid", transId); 12 nativeObj.Add("out_trade_no", out_trade_no); 13 nativeObj.Add("deliver_timestamp", ((DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000).ToString()); 14 nativeObj.Add("deliver_status", "1"); 15 nativeObj.Add("deliver_msg", "ok"); 16 nativeObj.Add("app_signature", GetBizSign(nativeObj)); 17 nativeObj.Add("sign_method", "sha1"); 18 19 var entries = nativeObj.Select(d => string.Format("\"{0}\": \"{1}\"", d.Key, d.Value)); 20 21 return "{" + string.Join(",", entries.ToArray()) + "}"; 22 } |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com