private void Confirm(string Merchant_trans_id, string sTrans_Id) { ConfirmTransactionResultInfo oConfirmInfo = new ConfirmTransactionResultInfo() { CreateDate = DateTime.Now }; try { string sConfirm = BanknetHelper.ConfirmTransactionResult(Merchant_trans_id, sTrans_Id, "0", ref oConfirmInfo);// quá lâu oConfirmInfo.ResultId = BanknetHelper.getCodeResult(sConfirm); oConfirmInfo.OutString = sConfirm; //if (oConfirmInfo.ResultId == "00") //{ // //ok //} //else //{ // //Response.Redirect("/Banknet/#" + Good_Code + "|F|N"); //} } catch (Exception ex) { oConfirmInfo.ResultId = ex.GetHashCode().ToString(); oConfirmInfo.OutString = ex.Message; //Response.Redirect("/Banknet/#" + Good_Code + "|F|N"); //throw; } finally { ConfirmTransactionResultData.instance.Add(oConfirmInfo); } }
protected void Page_Load(object sender, EventArgs e) { string Good_Code = Request.QueryString["code"]; if (string.IsNullOrEmpty(Good_Code)) { Response.Redirect("/Banknet/", true); } CacheInfo oCache = (CacheInfo)CacheProvider.Get(string.Format(KeyCache.KeyUserBanknet, Good_Code)); if (oCache == null) { Response.Redirect("/Banknet/", true); } QuerryBillStatusInfo oStatus = new QuerryBillStatusInfo() { CreateDate = DateTime.Now }; try { string sStatus = BanknetHelper.QuerryBillStatus(oCache.Merchant_trans_id, oCache.sTrans_Id, ref oStatus); oStatus.ResultId = BanknetHelper.getCodeResult(sStatus); oStatus.OutString = sStatus; } catch (Exception ex) { oStatus.ResultId = ex.GetHashCode().ToString(); oStatus.OutString = ex.Message; //throw; } finally { CacheProvider.Remove(string.Format(KeyCache.KeyUserBanknet, Good_Code)); QuerryBillStatusData.instance.Add(oStatus); Response.Redirect("/Banknet/#" + Good_Code + "|F"); } }
private void SetInfo(HttpContext context) { string vouchers = context.Request["vouchers"]; if (string.IsNullOrEmpty(vouchers)) { context.Response.Write(string.Format("{{\"error\":{0},\"msg\":\"{1}\"}}", 5, "Hãy nhập gói cước")); return; } var oUser = (CustomerGateInfo)context.Session[Config.GetSessionUser]; if (oUser == null) { context.Response.Write(string.Format("{{\"error\":{0},\"msg\":\"{1}\"}}", 6, "Hết phiên làm việc, hãy thực hiện lại")); return; } if (!Utility.isOnlyNumber(vouchers)) { context.Response.Write(string.Format("{{\"error\":{0},\"msg\":\"{1}\"}}", 7, "Gói cước không phù hợp")); return; } List <voucher> list = oUser.vouchers; voucher oVoucher = null; foreach (voucher item in list) { if (vouchers == item.vouchervalue) { oVoucher = item; break; } } if (oVoucher == null) { context.Response.Write(string.Format("{{\"error\":{0},\"msg\":\"{1}\"}}", 8, "Gói cước không phù hợp")); return; } string Good_Code = string.Format("{0:yyMMddHHmmssfff}", DateTime.Now) + oVoucher.duration; Good_Code = Security.GetMD5Hash(Good_Code); Good_Code = "THAV-" + Good_Code.Substring(0, 15).ToUpper(); string sSuccess = context.Request.Url.Scheme + "://" + context.Request.Url.Authority + "/Banknet/success.aspx?code=" + Good_Code; string sFail = context.Request.Url.Scheme + "://" + context.Request.Url.Authority + "/Banknet/fail.aspx?code=" + Good_Code; SendGoodInfo sendInfo = new SendGoodInfo() { UserId = oUser.subnum, vouchers = oVoucher.vouchervalue + " - " + oVoucher.vouchername + " - " + oVoucher.duration + " " + oVoucher.durationuomaltcode, Good_code = Good_Code, Xml_description = Config.Desc, Url_success = sSuccess, Url_fail = sFail, CreateDate = DateTime.Now }; try { string s = BanknetHelper.Send_GoodInfo(Good_Code, Config.Desc, vouchers, "0", "0", sSuccess, sFail, ref sendInfo); if (BanknetHelper.getCodeResult(s) != "010") { context.Response.Write(string.Format("{{\"error\":{0},\"msg\":\"{1}\"}}", 9, "Kết nối với cổng thanh toán Banknet gặp sự cố")); return; } string sUrl = ""; string sTrans_Id = ""; int iResult = BanknetHelper.GetUrlRedirection(s, out sUrl); if (iResult != 0) { context.Response.Write(string.Format("{{\"error\":{0},\"msg\":\"{1}\"}}", 10, "Kết nối với cổng thanh toán Banknet gặp sự cố")); return; } sTrans_Id = BanknetHelper.getTransIdFromUrl(sUrl); sendInfo.Trans_Id = sTrans_Id; //save cached CacheInfo oCacheInfo = new CacheInfo() { Voucher = oVoucher, sTrans_Id = sTrans_Id, Good_Code = Good_Code, User = oUser, Merchant_trans_id = sendInfo.Merchant_trans_id }; CacheProvider.AddWithTimeOut(string.Format(KeyCache.KeyUserBanknet, Good_Code), oCacheInfo, 720); // context.Response.Write(string.Format("{{\"error\":{0},\"msg\":\"{1}\"}}", 0, sUrl)); return; } catch (Exception ex) { sendInfo.ResultId = ex.GetHashCode().ToString(); sendInfo.OutString = ex.Message; context.Response.Write(string.Format("{{\"error\":{0},\"msg\":\"{1}\"}}", sendInfo.ResultId, sendInfo.OutString)); } finally { SendGoodData.instance.Add(sendInfo); } }