public static PaymentModeActionStatus CreatePaymentMode(PaymentModeInfo paymentMode) { PaymentModeActionStatus result; if (null == paymentMode) { result = PaymentModeActionStatus.UnknowError; } else { Globals.EntityCoding(paymentMode, true); result = new PaymentModeDao().CreateUpdateDeletePaymentMode(paymentMode, DataProviderAction.Create); } return(result); }
public static bool CreatePaymentMode(PaymentModeInfo paymentMode) { if (paymentMode == null) { return(false); } Globals.EntityCoding(paymentMode, true); PaymentModeDao paymentModeDao = new PaymentModeDao(); paymentMode.DisplaySequence = paymentModeDao.GetMaxDisplaySequence <PaymentModeInfo>(); bool flag = paymentModeDao.AddPayment(paymentMode); if (flag && paymentMode.Gateway == "hishop.plugins.payment.bankrequest") { paymentMode = new PaymentModeDao().GetPaymentMode(paymentMode.Gateway); new OrderDao().UpdateOrderWhenBankRequestInsert(paymentMode.ModeId, paymentMode.Name); } return(flag); }
protected override void AttachChildControls() { if (this.Page.Request.QueryString["orderId"] == null) { base.GotoResourceNotFound(); } this.orderId = this.Page.Request.QueryString["orderId"]; this.litOrderId = (System.Web.UI.WebControls.Literal) this.FindControl("litOrderId"); this.litOrderPrice = (FormatedMoneyLabel)this.FindControl("litOrderPrice"); this.litPaymentName = (System.Web.UI.WebControls.Literal) this.FindControl("litPaymentName"); this.btnSubMitOrder = (System.Web.UI.WebControls.Button) this.FindControl("btnSubMitOrder"); this.codePayImg = (System.Web.UI.HtmlControls.HtmlImage) this.FindControl("codePayImg"); this.hlinkOrderDetails = (System.Web.UI.WebControls.HyperLink) this.FindControl("hlinkOrderDetails"); this.hidd_ServerTimel = (System.Web.UI.HtmlControls.HtmlInputHidden) this.FindControl("hidd_ServerTimel"); this.hidd_ServerTimel.Value = DateTime.Now.ToString(); if (hlinkOrderDetails != null) { hlinkOrderDetails.Attributes.Add("href", "/user/OrderDetails.aspx?OrderId=" + orderId); } OrderInfo orderInfo = ShoppingProcessor.GetOrderInfo(this.orderId); PaymentModeDao payment = new PaymentModeDao(); PaymentModeInfo info = payment.GetPaymentMode(orderInfo.PaymentTypeId); //判断是否为微信扫码支付 //if (info.Settings == "1hSUSkKQ/ENo0JDZah8KKQweixin") if (info != null && !string.IsNullOrEmpty(info.Gateway) && info.Gateway.ToLower() == "Ecdev.plugins.payment.WxpayQrCode.QrCodeRequest".ToLower()) { string appId = ""; string appSecret = ""; string partnerId = ""; string partnerKey = ""; if (info.Settings != "") { string xml = HiCryptographer.Decrypt(info.Settings); try { System.Xml.XmlDocument xmlDocument = new System.Xml.XmlDocument(); xmlDocument.LoadXml(xml); appId = xmlDocument.GetElementsByTagName("AppId")[0].InnerText; partnerKey = xmlDocument.GetElementsByTagName("Key")[0].InnerText; appSecret = xmlDocument.GetElementsByTagName("AppSecret")[0].InnerText; partnerId = xmlDocument.GetElementsByTagName("MchId")[0].InnerText; } catch { ErrorLog.Write("微信扫码支付信息未设置"); this.ShowMessage("获取支付二维码失败,支付信息未设置!", false); } } else { ErrorLog.Write("微信扫码支付信息未设置"); this.ShowMessage("获取支付二维码失败,支付信息未设置!", false); } //\Storage\master\QRCode if (Directory.Exists(Globals.MapPath("/storage/master/QRCode")) == false)//如果不存在就创建file文件夹 { Directory.CreateDirectory(Globals.MapPath("/storage/master/QRCode")); } VCodePayHelper.imgPath = Globals.MapPath("/storage/master/QRCode"); //SiteSettings masterSettings = SettingsManager.GetMasterSettings(false); ////PayClient payClient = new PayClient(masterSettings.WeixinAppId, masterSettings.WeixinAppSecret, masterSettings.WeixinPartnerID, masterSettings.WeixinPartnerKey, masterSettings.WeixinPaySignKey); //VCodePayHelper.key = masterSettings.WeixinPartnerKey; ////创建微信支付二维码 //string vCodePayPath = VCodePayHelper.RequestWeixin(new Ecdev.Weixin.Pay.Domain.VCodePayEntity() //{ // appid = masterSettings.WeixinAppId, // //appid = "wx45cd46b5f561deee", // //mch_id = "D4DE77CE6F6C9E3A", // mch_id = masterSettings.WeixinPartnerID, // body = orderInfo.OrderId, // nonce_str = VCodePayHelper.CreateRandom(20), // out_trade_no = orderInfo.OrderId, // fee_type = "CNY", // //1 = 1分 // total_fee = (int)(orderInfo.GetTotal() * 100), // spbill_create_ip = "192.168.1.40", // notify_url = "http://" + base.Context.Request.Url.Host + "/pay/wx_Pay_notify_url.aspx", // product_id = orderInfo.OrderId.ToString() //}); ErrorLog.Write("微信扫码支付,开始统一下单,获取二维码"); string vCodePayPath = CreatePayQRCode(orderInfo, appId, partnerId); ErrorLog.Write("微信扫码支付,统一下单结果:" + vCodePayPath); if (!string.IsNullOrWhiteSpace(vCodePayPath) && vCodePayPath.EndsWith(".jpg")) { if (codePayImg != null) { OrderHelper.SetOrderPayStatus(orderInfo.OrderId, 1); codePayImg.Src = "/Storage/master/QRCode/" + vCodePayPath; } } else { ErrorLog.Write("获取支付二维码失败,原因:" + vCodePayPath); this.ShowMessage("获取支付二维码失败!", false); } this.btnSubMitOrder.Visible = false; } else { codePayImg.Visible = false; this.btnSubMitOrder.Click += new System.EventHandler(this.btnSubMitOrder_Click); } if (!this.Page.IsPostBack) { this.LoadOrderInfo(); } }