/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) { return; } String localHost = ResponseHandler.GetRequestUrl(this.Page); ResponseHandler.AddCookie(this.Page, "LocalUrl", localHost); ResponseHandler resHandler = new ResponseHandler(Context); if (CommonUntils.IsFromMobile(Context.Request.UserAgent)) { ColumnCount = 2; this.divBody.Style.Remove("width"); this.divBody.Style.Remove("margin-top"); this.divBody.Style.Add("width", "380px"); this.divBody.Style.Add("margin-top", "10px"); } //判断游戏账号 String key = "accounts".ToUpper(); String accounts = ""; if (resHandler.upperPairs.ContainsKey(key)) { accounts = resHandler.upperPairs[key]; } if (String.IsNullOrWhiteSpace(accounts)) { Response.Redirect("Message.aspx?message=充值账号不能为空."); return; } UserAccount userAccount = AccountUntils.GetInfo(accounts); if (userAccount == null) { Response.Redirect("Message.aspx?message=充值账号不存在, 请先注册账号."); return; } this.accounts.Text = accounts; //判断客户区组 key = "group".ToUpper(); String group = ""; if (resHandler.upperPairs.ContainsKey(key)) { group = resHandler.upperPairs[key]; } if (String.IsNullOrWhiteSpace(group)) { Response.Redirect("Message.aspx?message=客户区组不能为空."); return; } this.group.Text = group; InitOrderNO(); InitPayTypes(); InitPayMoneys(); }
/// <summary> /// /// </summary> /// <param name="param"></param> /// <returns></returns> public static Result1 getPostParam(RequestParam param, String sessionCode) { Result1 result = new Result1(); try { Decimal doubleMoney = 0; if (!Decimal.TryParse(param.pay_amount, out doubleMoney)) { result.status = "failed"; result.message = "支付金额出现异常,请稍候再试."; return(result); } if (doubleMoney <= 0) { result.status = "failed"; result.message = "支付金额出现异常,请稍候再试."; return(result); } if (String.IsNullOrEmpty(sessionCode) || String.IsNullOrEmpty(param.code) || sessionCode.ToUpper() != param.code.ToUpper()) { result.status = "failed"; result.message = "验证码错误,请重新输入."; return(result); } if (String.IsNullOrWhiteSpace(param.pay_orderid) || String.IsNullOrWhiteSpace(param.pay_amount) || String.IsNullOrWhiteSpace(param.group) || String.IsNullOrWhiteSpace(param.pay_bankcode) || String.IsNullOrWhiteSpace(param.code)) { result.status = "failed"; result.message = "提交数据出现异常,请稍候再试."; return(result); } PayType payType = ConfigUtils.PayTypes.FirstOrDefault(A => A.Key == param.pay_bankcode); if (payType == null) { result.status = "failed"; result.message = "不支持该支付类型,请重新提交."; return(result); } UserAccount userAccount = AccountUntils.GetInfo(param.accounts); if (userAccount == null) { result.status = "failed"; result.message = "充值账号不存在,请重新提交."; return(result); } //if (String.IsNullOrEmpty(userAccount.agent)) //{ // result.status = "failed"; // result.message = "代理不存在,无法充值."; // return result; //} if (String.IsNullOrEmpty(userAccount.agent)) { userAccount.agent = ""; } //写入历史订单表 Recharge recharge = new Recharge(); recharge.id = param.pay_orderid; recharge.group = param.group; recharge.accounts = param.accounts; recharge.agent = userAccount.agent; recharge.money = Double.Parse(doubleMoney.ToString()); recharge.time = TimeUntils.GetNow(); recharge.payStatus = 0; recharge.payType = param.pay_bankcode; //Post参数 SortedDictionary <string, string> pay_params = new SortedDictionary <string, string>(); pay_params.Add("pid", ConfigUtils.pid); pay_params.Add("type", recharge.payType); //平台分配商户号 pay_params.Add("out_trade_no", recharge.id); //订单号 pay_params.Add("notify_url", ConfigUtils.notifyurl); //服务端返回地址(POST返回数据) pay_params.Add("return_url", ConfigUtils.returnurl); //页面跳转返回地址(POST返回数据) pay_params.Add("name", "充值"); pay_params.Add("money", doubleMoney.ToString("F2")); //支付金额 pay_params.Add("sitename", ConfigUtils.sitename); String sign = CommonUntils.getSign(pay_params); pay_params.Add("sign", sign); pay_params.Add("sign_type", "MD5"); pay_params.Add("remark", Base64.Encode(recharge.ToJsonString())); String postMessage = pay_params.ToJsonString(); postMessage = Base64.Encode(postMessage); result.status = "1"; result.postUrl = "PayNet.aspx"; result.message = postMessage; return(result); } catch (Exception ex) { FileLogUtils.Error("getPostParam", ex.StackTrace); result.status = "failed"; result.message = "服务器出现异常,请稍候再试."; return(result); } }