/// <summary> /// 页面加载 /// </summary> protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { int userId = GameRequest.GetQueryInt("UserID", 0); string orderId = GameRequest.GetQueryString("OrderID"); int payAmount = GameRequest.GetQueryInt("PayAmount", 0); StreamReader sr = new StreamReader(Request.InputStream); string receiptData = sr.ReadToEnd(); //苹果返回数据 string rValue = GetAppInfo(receiptData); //苹果返回对象 AppReceipt receipt = AppReceipt.DeserializeObject(rValue); if (receipt.Status == 0 && orderId == receipt.Receipt.transaction_id) { OnLinePayOrder order = new OnLinePayOrder { OrderID = orderId, UserID = userId, PayAddress = GameRequest.GetUserIP(), Amount = payAmount }; Message umsg = FacadeManage.aideTreasureFacade.FinishOnLineOrderIOS(order, receipt.Receipt.product_id); Response.Write(umsg.Success ? "0" : umsg.Content); } else { Response.Write("失败"); } } }
/// <summary> /// 页面加载 /// </summary> protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { // Log4Net.WriteInfoLog("零钱支付回掉进来了------query:" + GameRequest.Request.QueryString); LQPay.Notify notify = new LQPay.Notify(GameRequest.Request.QueryString); if (!string.IsNullOrEmpty(notify.Param)) { if (notify.IsChecked) { string[] pSplit = notify.Param.Split('|'); string retCode = pSplit[1]; if (retCode == "0000") //支付成返回值 { OnLinePayOrder order = new OnLinePayOrder { OrderID = pSplit[0], PayAddress = GameRequest.GetUserIP(), Amount = Convert.ToInt32(notify.ExtraParam.money) / 100M }; FacadeManage.aideTreasureFacade.FinishOnLineOrder(order); Response.Write("OK"); return; } } } Response.Write("FAIL"); } }
/// <summary> /// 在线充值 /// </summary> /// <param name="order">订单信息</param> /// <returns></returns> public Message FinishOnLineOrder(OnLinePayOrder order) { var parms = new List <DbParameter> { Database.MakeInParam("strOrdersID", order.OrderID), Database.MakeInParam("PayAmount", order.Amount), Database.MakeOutParam("strErrorDescribe", typeof(string), 127) }; return(MessageHelper.GetMessage(Database, "NET_PW_FinishOnLineOrder", parms)); }
public JFTH5Notify(OnLinePayOrder order) { p1_yingyongnum = Config.JFTID; p2_ordernumber = order.OrderID; p3_money = order.Amount.ToString("F2"); p4_zfstate = "1"; p5_orderid = Fetch.ConvertDateTimeToUnix(DateTime.Now); p6_productcode = order.ShareID == 303 ? "ZFB" : "WX"; p8_charset = "UTF-8"; p9_signtype = "1"; p10_sign = MarkSign(); }
/// <summary> /// 在线充值(苹果) /// </summary> /// <param name="order">订单信息</param> /// <param name="appleid">苹果产品标识</param> /// <returns></returns> public Message FinishOnLineOrderIOS(OnLinePayOrder order, string appleid) { var parms = new List <DbParameter> { Database.MakeInParam("strOrdersID", order.OrderID), Database.MakeInParam("PayAmount", order.Amount), Database.MakeInParam("dwUserID", order.UserID), Database.MakeInParam("strAppleID", appleid), Database.MakeInParam("strIPAddress", order.PayAddress), Database.MakeOutParam("strErrorDescribe", typeof(string), 127) }; return(MessageHelper.GetMessage(Database, "NET_PW_FinishOnLineOrderIOS", parms)); }
/// <summary> /// 钻石充值下单 /// </summary> /// <param name="order">订单信息</param> /// <returns></returns> public Message CreatePayOrderInfo(OnLinePayOrder order) { List <DbParameter> prams = new List <DbParameter> { Database.MakeInParam("dwUserID", order.UserID), Database.MakeInParam("dwShareID", order.ShareID), Database.MakeInParam("dwConfigID", order.ConfigID), Database.MakeInParam("strOrderID", order.OrderID), Database.MakeInParam("strIPAddress", order.OrderAddress), Database.MakeOutParam("strErrorDescribe", typeof(string), 127) }; return(MessageHelper.GetMessageForObject <OnLinePayOrder>(Database, "NET_PW_CreateOnLineOrder", prams)); }
public LQPayRequest(OnLinePayOrder onLinePayOrder, string type = "weixin") : this(onLinePayOrder.OrderID) { //LQPayContent content = new LQPayContent() //{ // channelType = type, // body = $"{onLinePayOrder.Score} 颗 {EnumDescription.GetFieldText(AppConfig.PayScoreType.Diamond)}", // money = (onLinePayOrder.Amount * 100).ToString("F0"), // userId = onLinePayOrder.GameID.ToString(), // userIp = GameRequest.GetUserIP(), // userSourceType = "Android", // channelCode = "" //}; //AddParamValue("pay_content", content.ToString().Replace("\\", "")); }
public LQPayRequest(OnLinePayOrder onLinePayOrder, string type = "weixin") : this(onLinePayOrder.OrderID) { LQPayContent content = new LQPayContent() { channelType = type, body = onLinePayOrder.Diamond + "颗钻石", money = (onLinePayOrder.Amount * 100).ToString("F0"), userId = onLinePayOrder.GameID.ToString(), userIp = GameRequest.GetUserIP(), userSourceType = "Android", channelCode = "" }; AddParamValue("pay_content", content.ToString().Replace("\\", "")); }
/// <summary> /// 充值通用查询接口 /// </summary> /// <param name="orderid"></param> private static void GetPayOrderStatus(string orderid) { OnLinePayOrder olOrder = FacadeManage.aideTreasureFacade.GetPayOnLinePayOrder(orderid); if (olOrder == null || olOrder.OrderStatus != 1) { _ajv.SetDataItem("OrderID", orderid); _ajv.SetDataItem("PayStatus", olOrder != null ? "未支付" : "订单不存在"); } else { _ajv.SetDataItem("OrderID", orderid); _ajv.SetDataItem("PayStatus", "已支付"); _ajv.SetDataItem("PayAmount", olOrder.Amount); _ajv.SetDataItem("Diamond", olOrder.Diamond); } _ajv.SetValidDataValue(true); }
/// <summary> /// 页面加载 /// </summary> protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) { return; } string orderId = GameRequest.Request.QueryString["orderId"]; OnLinePayOrder order = FacadeManage.aideTreasureFacade.GetPayOnLinePayOrder(orderId); if (order != null && order.OrderStatus == 1) { string msg = "【" + orderId + "】充值成功!"; Response.Redirect("/Mobile/Index.aspx?action=payreturn&msg=" + msg); return; } Response.Redirect("/Mobile/Index.aspx?action=payreturn&msg=充值失败"); }
/// <summary> /// 页面加载 /// </summary> protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { WxPayHelper wx = new WxPayHelper(); string returnMsg = "<xml> <return_code><![CDATA[{0}]]></return_code> <return_msg><![CDATA[{1}]]></return_msg> </xml>"; SortedDictionary <string, object> dic = wx.GetReturnData(); Log4Net.WriteInfoLog("收到微信App支付回调:" + new JavaScriptSerializer().Serialize(dic)); string sign = dic["sign"].ToString(); if (dic["return_code"].ToString() == "SUCCESS") { string signLocal = wx.MakeSign(dic, ApplicationSettings.Get("WXAPPKEY")); if (sign == signLocal) { decimal amount = Convert.ToDecimal(dic["total_fee"]) / 100M; if (dic["result_code"].ToString() == "SUCCESS") { OnLinePayOrder order = new OnLinePayOrder { OrderID = dic["out_trade_no"].ToString(), PayAddress = GameRequest.GetUserIP(), Amount = amount }; FacadeManage.aideTreasureFacade.FinishOnLineOrder(order); Response.Write(string.Format(returnMsg, "SUCCESS", "支付成功!")); } else { Response.Write(string.Format(returnMsg, "FAIL", "微信交易失败!")); } } else { Response.Write(string.Format(returnMsg, "FAIL", "签名错误!")); } } else { Response.Write(string.Format(returnMsg, "FAIL", "微信交易失败!")); } } }
/// <summary> /// 页面加载 /// </summary> protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) { return; } Helper.JFTPay.JFTH5Notify notify = new Helper.JFTPay.JFTH5Notify(GameRequest.Request); //验证签名且支付状态为成功 if (notify.VerifySign() && notify.p4_zfstate == "1") { OnLinePayOrder order = new OnLinePayOrder { OrderID = notify.p2_ordernumber, Amount = Convert.ToDecimal(notify.p3_money) }; //尝试完成订单 FacadeManage.aideTreasureFacade.FinishOnLineOrder(order); //GET为同步返回模式 if (Request.HttpMethod == "GET") { //查询订单状态 OnLinePayOrder orderQuery = FacadeManage.aideTreasureFacade.GetPayOnLinePayOrder(notify.p2_ordernumber); //订单完成则 if (orderQuery != null && orderQuery.OrderStatus == 1) { string msg = "【" + notify.p2_ordernumber + "】充值成功!"; Response.Redirect("/Mobile/Index.aspx?action=payreturn&msg=" + msg); return; } Response.Redirect("/Mobile/Index.aspx?action=payreturn&msg=请稍后再查询"); return; } //回写给通知回调 Response.Write("success"); } else { Response.Write("fail"); } }
public LQPayRequest(OnLinePayOrder onlineOrder, string uuid, string userid) : this(onlineOrder.OrderID) { //LQPrePayContent content = new LQPrePayContent() //{ // code = "001", // comment = $"{onlineOrder.Score} 颗 {EnumDescription.GetFieldText(AppConfig.PayScoreType.Diamond)}", // name = "钻石", // price = (onlineOrder.Amount / onlineOrder.Score * 100).ToString("F0"), // quality = onlineOrder.Score.ToString(), // realMoney = (onlineOrder.Amount * 100).ToString("F0"), // rebateMoney = "0", // totalMoney = (onlineOrder.Amount * 100).ToString("F0"), // showUrl = "", // unit = "颗" //}; //AddParamValue("uuid", uuid); //AddParamValue("user_id", userid); //AddParamValue("total_money", (onlineOrder.Amount * 100).ToString("F0")); //AddParamValue("rebate_money", "0"); //AddParamValue("real_money", (onlineOrder.Amount * 100).ToString("F0")); //AddParamValue("pay_content", "[" + content + "]"); }
/// <summary> /// 获取微信预支付信息包 /// </summary> /// <returns></returns> private static string GetWxPayPackage(OnLinePayOrder orderReturn, string paytype, string openid, string authority) { string domain = string.IsNullOrEmpty(AppConfig.FrontSiteDomain) ? authority : AppConfig.FrontSiteDomain; WxPayInfo wx = new WxPayInfo { AppID = ApplicationSettings.Get(paytype == "wx" ? "WXAPPID" : "WXNATIVEAPPID"), AppSecret = ApplicationSettings.Get(paytype == "wx" ? "WXAPPSECRET" : "WXNATIVESECRET"), // ReSharper disable once SpecifyACultureInStringConversionExplicitly Body = orderReturn.Amount.ToString(), Key = ApplicationSettings.Get(paytype == "wx" ? "WXAPPKEY" : "WXNATIVEKEY"), Mchid = ApplicationSettings.Get(paytype == "wx" ? "WXAPPMCHID" : "WXNATIVEMCHID"), NotifyUrl = "http://" + domain + "/Notify/" + (paytype == "wx" ? "WxApp.aspx" : "WxWeb.aspx"), OpenId = openid, OutTradeNo = orderReturn.OrderID, TotalFee = (orderReturn.Amount * 100).ToString("F0"), TradeType = paytype == "wx" ? "APP" : "JSAPI" }; WxPayHelper helper = new WxPayHelper(wx); return(helper.GetPrepayIDSign()); }
/// <summary> /// 页面加载 /// </summary> protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { SortedDictionary <string, string> sPara = AlipayHelper.GetRequestPost(); Log4Net.WriteInfoLog("收到支付宝支付回调:" + new JavaScriptSerializer().Serialize(sPara)); if (sPara.Count > 0)//判断是否有带返回参数 { bool verifyResult = AlipayHelper.Verify(sPara, Request.Form["notify_id"], Request.Form["sign"], Request.Form["sign_type"]); if (verifyResult) { string outTradeNo = Request.Form["out_trade_no"]; string tradeStatus = Request.Form["trade_status"]; if (tradeStatus == "TRADE_SUCCESS" || tradeStatus == "TRADE_FINISHED") { OnLinePayOrder order = new OnLinePayOrder { OrderID = outTradeNo, PayAddress = GameRequest.GetUserIP(), Amount = Convert.ToDecimal(Request.Form["total_fee"]) }; FacadeManage.aideTreasureFacade.FinishOnLineOrder(order); } Response.Write("success"); } else { Response.Write("fail"); } } else { Response.Write("无通知参数"); } } }
public LQPayRequest(OnLinePayOrder onlineOrder, string uuid, string userid) : this(onlineOrder.OrderID) { LQPrePayContent content = new LQPrePayContent() { code = "001", comment = onlineOrder.Diamond + "颗 钻石", name = "钻石", price = ((onlineOrder.Amount / onlineOrder.Diamond) * 100).ToString("F0"), quality = onlineOrder.Diamond.ToString(), realMoney = (onlineOrder.Amount * 100).ToString("F0"), rebateMoney = "0", totalMoney = (onlineOrder.Amount * 100).ToString("F0"), showUrl = "", unit = "颗" }; AddParamValue("uuid", uuid); AddParamValue("user_id", userid); AddParamValue("total_money", (onlineOrder.Amount * 100).ToString("F0")); AddParamValue("rebate_money", "0"); AddParamValue("real_money", (onlineOrder.Amount * 100).ToString("F0")); AddParamValue("pay_content", "[" + content + "]"); }
/// <summary> /// 页面加载 /// </summary> protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) { return; } Helper.JFTPay.JFTH5Notify notify = new Helper.JFTPay.JFTH5Notify(GameRequest.Request); //验证签名且支付状态为成功 if (notify.VerifySign() && notify.p4_zfstate == "1") { OnLinePayOrder order = new OnLinePayOrder { OrderID = notify.p2_ordernumber, Amount = Convert.ToDecimal(notify.p3_money) }; FacadeManage.aideTreasureFacade.FinishOnLineOrder(order); Response.Write("success"); } else { Response.Write("fail"); } }
/// <summary> /// 钻石充值下单 /// </summary> /// <param name="configid"></param> /// <param name="paytype"></param> /// <param name="openid"></param> /// <param name="subtype"></param> /// <returns>AjaxJsonValid</returns> private static AjaxJsonValid CreatePayOrder(int configid, string paytype, string openid, string subtype) { //下单信息 OnLinePayOrder order = new OnLinePayOrder { UserID = _userid, ConfigID = configid, OrderAddress = GameRequest.GetUserIP() }; switch (paytype) { case "wx": order.ShareID = 101; order.OrderID = Fetch.GetOrderIDByPrefix("WXAPP"); break; case "zfb": order.ShareID = 201; order.OrderID = Fetch.GetOrderIDByPrefix("ZFBAPP"); break; case "hwx": order.ShareID = 102; order.OrderID = Fetch.GetOrderIDByPrefix("HWX"); break; case "lq": order.ShareID = 301; order.OrderID = Fetch.GetOrderIDByPrefix("360LQ"); break; case "jft": switch (subtype) { case "wx": order.ShareID = 302; order.OrderID = Fetch.GetOrderIDByPrefix("JFTH5WX"); break; case "zfb": order.ShareID = 303; order.OrderID = Fetch.GetOrderIDByPrefix("JFTH5ZFB"); break; default: order.ShareID = 300; order.OrderID = Fetch.GetOrderIDByPrefix("JFT"); break; } break; default: _ajv.code = (int)ApiCode.VertyParamErrorCode; _ajv.msg = string.Format(EnumHelper.GetDesc(ApiCode.VertyParamErrorCode), " paytype(充值类型) 错误"); return(_ajv); } //下单操作 Message umsg = FacadeManage.aideTreasureFacade.CreatePayOrderInfo(order, _device); if (umsg.Success) { OnLinePayOrder orderReturn = umsg.EntityList[0] as OnLinePayOrder; if (paytype == "wx" || paytype == "hwx") { _ajv.SetDataItem("PayPackage", GetWxPayPackage(orderReturn, paytype, openid, GameRequest.GetCurrentFullHost())); } else if (paytype == "lq") { LQPay.LQPayRequest request = new LQPay.LQPayRequest(orderReturn, subtype == "zfb" ? "alipay" : "weixin"); _ajv.SetDataItem("PayUrl", HttpUtility.UrlDecode(LQPay.GetPayPackage(request.ToUrl("PayUrl")))); } else if (paytype == "jft") { JFTPay.JFTH5Request request = new JFTPay.JFTH5Request(orderReturn?.OrderID, orderReturn?.Amount.ToString("F2"), subtype == "zfb" ? "ZFB" : "WX", orderReturn?.GameID.ToString(), Utility.UserIP.Replace(".", "_")) { p25_terminal = string.IsNullOrEmpty(GameRequest.GetString("terminaltype")) ? "3" : GameRequest.GetString("terminaltype") }; //需要手机传 IOS:2 Android:3 if (AppConfig.Mode == AppConfig.CodeMode.Dev) //测试开发用,正式时请注释掉此段代码 { JFTPay.JFTH5Notify notify = new JFTPay.JFTH5Notify(orderReturn); _ajv.SetDataItem("ReturnUrlForTest", notify.TestNotifyUrl()); } _ajv.SetDataItem("PayUrl", JFTPay.Config.JFTH5Url); _ajv.SetDataItem("Params", request.UrlParams()); } _ajv.SetDataItem("OrderID", orderReturn?.OrderID ?? ""); } _ajv.SetValidDataValue(umsg.Success); _ajv.code = umsg.MessageID; _ajv.msg = umsg.Content; return(_ajv); }
/// <summary> /// 钻石充值下单 /// </summary> /// <param name="configid"></param> /// <param name="paytype"></param> /// <param name="openid"></param> /// <param name="subtype"></param> /// <returns>AjaxJsonValid</returns> private static AjaxJsonValid CreatePayOrder(int configid, string paytype, string openid, string subtype) { //下单信息 OnLinePayOrder order = new OnLinePayOrder { UserID = _userid, ConfigID = configid, OrderAddress = GameRequest.GetUserIP() }; switch (paytype) { case "wx": order.ShareID = 101; order.OrderID = Fetch.GetOrderIDByPrefix("WXAPP"); break; case "zfb": order.ShareID = 201; order.OrderID = Fetch.GetOrderIDByPrefix("ZFBAPP"); break; case "hwx": order.ShareID = 102; order.OrderID = Fetch.GetOrderIDByPrefix("HWX"); break; case "lq": order.ShareID = 301; order.OrderID = Fetch.GetOrderIDByPrefix("360LQ"); break; default: _ajv.code = (int)ApiCode.VertyParamErrorCode; _ajv.msg = string.Format(EnumHelper.GetDesc(ApiCode.VertyParamErrorCode), " paytype(充值类型) 错误"); return(_ajv); } //下单操作 Message umsg = FacadeManage.aideTreasureFacade.CreatePayOrderInfo(order, _device); if (umsg.Success) { OnLinePayOrder orderReturn = umsg.EntityList[0] as OnLinePayOrder; if (paytype == "wx" || paytype == "hwx") { _ajv.SetDataItem("PayPackage", GetWxPayPackage(orderReturn, paytype, openid, GameRequest.GetCurrentFullHost())); } else if (paytype == "lq") { LQPay.LQPayRequest request = new LQPay.LQPayRequest(orderReturn, subtype == "zfb" ? "alipay" : "weixin"); _ajv.SetDataItem("PayUrl", HttpUtility.UrlDecode(LQPay.GetPayPackage(request.ToUrl("PayUrl")))); } _ajv.SetDataItem("OrderID", orderReturn?.OrderID ?? ""); } _ajv.SetValidDataValue(umsg.Success); _ajv.code = umsg.MessageID; _ajv.msg = umsg.Content; return(_ajv); }
/// <summary> /// 在线充值(苹果) /// </summary> /// <param name="order">订单信息</param> /// <param name="appleid">苹果产品标识</param> /// <returns></returns> public Message FinishOnLineOrderIOS(OnLinePayOrder order, string appleid) { return(treasureData.FinishOnLineOrderIOS(order, appleid)); }
/// <summary> /// 在线充值 /// </summary> /// <param name="order">订单信息</param> /// <returns></returns> public Message FinishOnLineOrder(OnLinePayOrder order) { return(treasureData.FinishOnLineOrder(order)); }
/// <summary> /// 钻石充值下单 /// </summary> /// <param name="order">订单信息</param> /// <returns></returns> public Message CreatePayOrderInfo(OnLinePayOrder order, string device = "") { return(treasureData.CreatePayOrderInfo(order, device)); }
/// <summary> /// 钻石充值下单 /// </summary> /// <param name="order">订单信息</param> /// <returns></returns> public Message CreatePayOrderInfo(OnLinePayOrder order) { return(treasureData.CreatePayOrderInfo(order)); }