public static BitmapSource GetQRCode(string content, int size, string paytype) { Bitmap bitmap = QRCodeHelper.Create(content, size); IntPtr hbitmap = bitmap.GetHbitmap(); bool flag = paytype == "weixin"; Bitmap bitmap2; if (flag) { bitmap2 = new Bitmap(AppDomain.CurrentDomain.BaseDirectory + "pic\\qrcode1.png"); } else { bitmap2 = new Bitmap(AppDomain.CurrentDomain.BaseDirectory + "pic\\qrcode2.png"); } IntPtr hbitmap2 = bitmap2.GetHbitmap(); Bitmap bitmap3 = QRCodeHelper.MergeQrImg(bitmap, bitmap2, 0.23); IntPtr hbitmap3 = bitmap3.GetHbitmap(); BitmapSource result = Imaging.CreateBitmapSourceFromHBitmap(hbitmap3, IntPtr.Zero, Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions()); PayHelper.DeleteObject(hbitmap3); PayHelper.DeleteObject(hbitmap2); PayHelper.DeleteObject(hbitmap); bitmap3.Dispose(); bitmap2.Dispose(); bitmap.Dispose(); return(result); }
private bool CreateCode() { bool result; try { bool flag = !PayHelper.IsLogin; if (flag) { LoginResponseModel loginResponseModel; PayHelper.Login(out loginResponseModel); } bool isLogin = PayHelper.IsLogin; if (isLogin) { this.odNo = ConfigHelper.GetConfigValue("pay", "odNoHead").PadLeft(2, '0') + ConfigHelper.GetConfigValue("window", "deviceNo").PadLeft(2, '0') + ConfigHelper.GetConfigValue("window", "busNo").PadLeft(2, '0') + DateTime.Now.ToString("yyMMddHHmmss"); // PayHelper.CodeSize = (int)this.zXingImg.Height; string text; BitmapSource source; bool flag2 = PayHelper.CsbWeixinPay(this.odNo, this.parent.SelfHelpInfo.TicketPriceTotal * 100m, out this.refNo, out this.txnId, out text, out source); bool flag3 = flag2; if (flag3) { // this.zXingImg.Source = source; result = true; return(result); } // this.zXingImg.Source = null; } result = false; } catch (Exception var_9_103) { result = false; } return(result); }
private bool CreateCode() { bool result; try { bool flag = !PayHelper.IsLogin; if (flag) { LoginResponseModel loginResponseModel; PayHelper.Login(out loginResponseModel); } bool isLogin = PayHelper.IsLogin; if (isLogin) { // PayHelper.CodeSize = (int)this.zXingImg.Height; string text; BitmapSource source; bool flag2 = PayHelper.CsbZhiFuBaopay(this.odNo, this.parent.SelfHelpInfo.TicketPriceTotal * 100m, out this.refNo, out this.txnId, out text, out source); bool flag3 = flag2; if (flag3) { //this.zXingImg.Source = source; result = true; return(result); } // this.zXingImg.Source = null; } result = false; } catch { result = false; } return(result); }
static PayHelper() { PayHelper.CodeSize = 260; PayHelper.batchNo = string.Empty; PayHelper.InitCofig(); }
public static bool CsbZhiFuBaopay(string odNo, decimal amount, out string refNo, out string txnId, out string response, out BitmapSource img) { img = null; refNo = string.Empty; txnId = string.Empty; response = string.Empty; bool result; try { CsbZhiFuBaopayService csbZhiFuBaopayService = new CsbZhiFuBaopayService(); csbZhiFuBaopayService.odNo = odNo; csbZhiFuBaopayService.transAmount = amount; bool flag = false; JArray jArray; while (true) { string text = csbZhiFuBaopayService.DefContent(); response = text; jArray = (JsonConvert.DeserializeObject(text) as JArray); bool flag2 = jArray == null; if (flag2) { break; } bool flag3 = jArray.First["responseCode"].ToString() != "0"; if (!flag3) { goto IL_D2; } bool flag4 = jArray.First["responseCode"].ToString() == "21"; if (!flag4) { goto IL_CA; } bool flag5 = !flag; if (!flag5) { goto IL_C9; } flag = true; LoginResponseModel loginResponseModel; bool flag6 = PayHelper.Login(out loginResponseModel); if (!flag6) { goto IL_C8; } } result = false; return(result); IL_C8: IL_C9: IL_CA: result = false; return(result); IL_D2: bool flag7 = jArray.First != null && jArray.First["data"] != null; if (flag7) { JArray jArray2 = JsonConvert.DeserializeObject("[" + jArray.First["data"].ToString() + "]") as JArray; bool flag8 = jArray2 == null; if (flag8) { result = false; } else { bool flag9 = jArray2.First["qrcodeResult"].ToString() != "SUCCESS"; if (flag9) { result = false; } else { refNo = jArray2.First["refNo"].ToString(); txnId = jArray.First["txnId"].ToString(); img = PayHelper.GetQRCode(jArray2.First["qrcode"].ToString(), PayHelper.CodeSize, "alipay"); result = true; } } } else { result = false; } } catch (Exception var_15_1C9) { result = false; } return(result); }