Esempio n. 1
0
        /// <summary>
        /// 微信回调
        /// </summary>
        /// <returns></returns>
        public APIRst ResultNotify()
        {
            APIRst dd = new APIRst()
            {
                rst = true, data = ""
            };
            bool   rst = false;
            string out_trade_no = "", errTxt = "";

            try
            {
                WxPayAPI.ResultNotify resultNotify = new WxPayAPI.ResultNotify(System.Web.HttpContext.Current);
                rst = resultNotify.GetProcessNotify(out out_trade_no, out errTxt);
                if (rst == true)
                {
                    lock (lockObj)
                    {/*一条一条来*/
                        new YDS6000.WebApi.ResultNotify().Pay(out_trade_no);
                    }
                }
                if (rst == false)
                {
                    FileLog.WriteLog("微信支付回调未支付成功,商户单号:", out_trade_no);
                }
            }
            catch (Exception ex)
            {
                errTxt = ex.Message;
                FileLog.WriteLog("微信支付回调错误ResultNotify", ex.Message + ex.StackTrace);
            }
            return(dd);
        }
Esempio n. 2
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         /** ================微信支付回调界面========= */
         WxPayAPI.ResultNotify resultNotify = new WxPayAPI.ResultNotify(this);
         resultNotify.ProcessNotify();
     }
 }
Esempio n. 3
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            WxPayAPI.ResultNotify resultNotify = new WxPayAPI.ResultNotify(this);
            string[] strValues = resultNotify.ProcessNotify();
            if (strValues.Length == 2 && !string.IsNullOrEmpty(strValues[0]) && !string.IsNullOrEmpty(strValues[1]))
            {
                WxPayAPI.Log.Info("wx_Pay", "**************开始支付回调***************");
                this.OrderId = strValues[0];
                WxPayAPI.Log.Info("wx_Pay", "**************订单号:" + this.OrderId);
                this.Order = ShoppingProcessor.GetOrderInfo(this.OrderId);
                if (this.Order == null)
                {
                    WxPayAPI.Log.Info("wx_Pay", "**************根据支付回调的订单号得到订单实体失败***************");
                    base.Response.Write("success");
                    //ResponseWrite(true, "success");
                }
                else
                {
                    WxPayAPI.Log.Info("wx_Pay", "**************根据支付回调的订单号得到订单实体成功***************");
                    this.Order.GatewayOrderId = strValues[1];
                    WxPayAPI.Log.Info("wx_Pay", "**************交易流水号:" + this.Order.GatewayOrderId);
                    this.UserPayOrder();
                }
            }
            else
            {
                base.Response.Write("fail");
            }

            /*
             *          SiteSettings masterSettings = SettingsManager.GetMasterSettings(false);
             *          PayNotify payNotify = new NotifyClient(masterSettings.WeixinAppId, masterSettings.WeixinAppSecret, masterSettings.WeixinPartnerID, masterSettings.WeixinPartnerKey, masterSettings.WeixinPaySignKey).GetPayNotify(base.Request.InputStream);
             *          if (payNotify != null)
             *          {
             *  //WxPayAPI.Log.Debug(this.GetType().ToString(), payNotify.nonce_str);
             *  //WxPayAPI.Log.Debug(this.GetType().ToString(), payNotify.PayInfo.OutTradeNo);
             *                  this.OrderId = payNotify.PayInfo.OutTradeNo;
             *                  this.Order = ShoppingProcessor.GetOrderInfo(this.OrderId);
             *                  if (this.Order == null)
             *                  {
             *                          base.Response.Write("success");
             *                  }
             *                  else
             *                  {
             *                          this.Order.GatewayOrderId = payNotify.PayInfo.TransactionId;
             *                          this.UserPayOrder();
             *                  }
             * }
             */
        }