Ejemplo n.º 1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Request.Cookies.Remove("ErrorMsg");
            //充值开始
            // 设置 Response编码格式为GB2312
            Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");

            payCardUser  = Request.Form["yeepayCardUser"] ?? string.Empty;
            payCardMoney = Request.Form["yeepayCardMoney"] ?? string.Empty;
            payCardName  = Request.Form["yeepayCardName"] ?? string.Empty;
            if (string.IsNullOrEmpty(payCardMoney))
            {
                payCardMoney = "10";
            }
            if (!string.IsNullOrEmpty(payCardUser) && !string.IsNullOrEmpty(payCardMoney) && !string.IsNullOrEmpty(payCardName))
            {
                AccountsInfo accountsInfo = accountsfacade.GetAccountsByAccontsName(payCardUser);
                if (accountsInfo == null)
                {
                    HttpCookie UserCookie2 = new HttpCookie("ErrorMsg");
                    UserCookie2["error"] = HttpUtility.UrlEncode("用户名不存在");
                    UserCookie2.Expires  = DateTime.Now.AddMinutes(7);
                    Response.Cookies.Add(UserCookie2);
                    Response.Redirect("/showpayInfo.html");
                }

                try
                {
                    int.Parse(payCardMoney);
                }
                catch (Exception)
                {
                    return;
                }

                switch (payCardName)
                {
                case "JUNNET-NET":       //骏网一卡通
                    payCardInfo = "2";
                    break;

                case "SNDACARD-NET":      //盛大卡
                    payCardInfo = "3";
                    break;

                case "SZX-NET":       //神州行
                    payCardInfo = "4";
                    break;

                case "ZHENGTU-NET":      //征途卡
                    payCardInfo = "5";
                    break;

                case "QQCARD-NET":      //Q币卡
                    payCardInfo = "6";
                    break;

                case "UNICOM-NET":    //联通卡
                    payCardInfo = "7";
                    break;

                case "JIUYOU-NET":     //久游卡
                    payCardInfo = "8";
                    break;

                case "YPCARD-NET":       //易宝e卡通
                    payCardInfo = "9";
                    break;

                case "NETEASE-NET":      // 网易卡
                    payCardInfo = "10";
                    break;

                case "WANMEI-NET":       //完美卡
                    payCardInfo = "11";
                    break;

                case "SOHU-NET":      //搜狐卡
                    payCardInfo = "12";
                    break;

                case "TELECOM-NET":      //电信卡
                    payCardInfo = "13";
                    break;

                case "ZONGYOU-NET":        //纵游一卡通
                    payCardInfo = "14";
                    break;

                case "TIANXIA-NET":       //天下一卡通
                    payCardInfo = "15";
                    break;

                case "TIANHONG-NET":       //天宏一卡通
                    payCardInfo = "16";
                    break;

                case "BESTPAY-NET":       //翼支付
                    payCardInfo = "17";
                    break;

                default:
                    payCardInfo = "18";
                    break;
                }

                p2_Order = "DKCZ-" + DateTime.Now.ToString("yyyyMMddhhmmss");  //用户订单

                HttpCookie UserCookie = new HttpCookie("PayOrder");
                UserCookie["order"]      = p2_Order;
                UserCookie["orderMoney"] = payCardMoney;
                UserCookie["orderUser"]  = HttpUtility.UrlEncode(payCardUser);
                UserCookie.Expires       = DateTime.Now.AddMinutes(7);
                Response.Cookies.Add(UserCookie);

                OnLineOrder onlineOrder = new OnLineOrder();
                onlineOrder.Accounts    = payCardUser;
                onlineOrder.UserID      = accountsInfo.UserID;
                onlineOrder.OrderAmount = decimal.Parse(payCardMoney);
                onlineOrder.OrderID     = p2_Order;
                onlineOrder.OrderStatus = 0;
                onlineOrder.ShareID     = Convert.ToInt32(payCardInfo);
                onlineOrder.CardTotal   = 1;
                onlineOrder.CardTypeID  = Convert.ToInt32(payCardInfo);//游戏点卡充值
                onlineOrder.TelPhone    = "";
                onlineOrder.IPAddress   = GameRequest.GetUserIP();
                Message msg = treasurefacade.RequestOrder(onlineOrder);
                if (msg.Success)
                {
                    //p3_Amt交易金额  精确两位小数,最小值为0.01,为持卡人实际要支付的金额.
                    p3_Amt = payCardMoney;
                    //交易币种,固定值"CNY".
                    p4_Cur = "CNY";
                    //商品名称
                    p5_Pid = ConfigurationManager.AppSettings["shoppingInfo"];// Request.Form["yeepayBankp5_Pid"];
                    //商品种类
                    p6_Pcat = "1";
                    //商品描述
                    p7_Pdesc = "1";
                    //商户接收支付成功数据的地址,支付成功后易宝支付会向该地址发送两次成功通知.
                    p8_Url = ConfigurationManager.AppSettings["yeepayBankAndCardCallback"].ToString();
                    //送货地址
                    //为“1”: 需要用户将送货地址留在易宝支付系统;为“0”: 不需要,默认为 ”0”.
                    p9_SAF = "0";
                    //商户扩展信息
                    //商户可以任意填写1K 的字符串,支付成功时将原样返回.
                    pa_MP = "";
                    //银行编码
                    //默认为"",到易宝支付网关.若不需显示易宝支付的页面,直接跳转到各银行、神州行支付、骏网一卡通等支付页面,该字段可依照附录:银行列表设置参数值.
                    pd_FrpId = payCardName;
                    //默认为"1": 需要应答机制;
                    pr_NeedResponse = "1";
                    hmac            = Buy.CreateBuyHmac(p2_Order, p3_Amt, p4_Cur, p5_Pid, p6_Pcat, p7_Pdesc, p8_Url, p9_SAF, pa_MP, pd_FrpId, pr_NeedResponse);
                }
                else
                {
                    HttpCookie UserCookie2 = new HttpCookie("ErrorMsg");
                    UserCookie2["error"] = HttpUtility.UrlEncode(msg.Content);
                    UserCookie2.Expires  = DateTime.Now.AddMinutes(7);
                    Response.Cookies.Add(UserCookie2);
                    Response.Redirect("/showpayInfo.html");
                }
            }
        }
Ejemplo n.º 2
0
        public ActionResult PayReq()
        {
            string p1_MerId = Buy.GetMerId();
            string p2_Order;
            string p3_Amt;
            string p4_Cur;
            string p5_Pid;
            string p6_Pcat;
            string p7_Pdesc;
            string p8_Url;
            string p9_SAF;
            string pa_MP;
            string pd_FrpId;
            string pr_NeedResponse;
            string hmac;
            string reqURL_onLine = Buy.GetBuyUrl();

            // 设置 Response编码格式为GB2312
            Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
            //1
            //p2_Order	商户平台订单号
            //若不为"",提交的订单号必须在自身账户交易中唯一;为""时,易宝支付会自动生成随机的商户订单号.
            p2_Order = Request.Form["p2_Order"];
            //p3_Amt	交易金额  精确两位小数,最小值为0.01,为持卡人实际要支付的金额.
            p3_Amt = Request.Form["p3_Amt"];
            //p3_Amt = "0.01";
            //交易币种,固定值"CNY".
            p4_Cur = "CNY";
            //商品名称
            //用于支付时显示在易宝支付网关左侧的订单产品信息.
            p5_Pid = Request.Form["p5_Pid"];
            //商品种类
            p6_Pcat = Request.Form["p6_Pcat"];
            //2
            //商品描述
            p7_Pdesc = Request.Form["p7_Pdesc"];
            //商户接收支付成功数据的地址,支付成功后易宝支付会向该地址发送两次成功通知.
            p8_Url = Request.Form["p8_Url"];
            //送货地址
            //为“1”: 需要用户将送货地址留在易宝支付系统;为“0”: 不需要,默认为 ”0”.
            p9_SAF = "0";
            //商户扩展信息
            //商户可以任意填写1K 的字符串,支付成功时将原样返回.
            pa_MP = Request.Form["pa_MP"];
            //银行编码
            //默认为"",到易宝支付网关.若不需显示易宝支付的页面,直接跳转到各银行、神州行支付、骏网一卡通等支付页面,该字段可依照附录:银行列表设置参数值.
            pd_FrpId = Request.Form["pd_FrpId"];
            //3
            //应答机制
            //默认为"1": 需要应答机制;
            pr_NeedResponse = "1";
            hmac            = Buy.CreateBuyHmac(p2_Order, p3_Amt, p4_Cur, p5_Pid, p6_Pcat, p7_Pdesc, p8_Url, p9_SAF, pa_MP, pd_FrpId, pr_NeedResponse);

            ViewData["reqURL_onLine"]   = reqURL_onLine;
            ViewData["p1_MerId"]        = p1_MerId;
            ViewData["p2_Order"]        = p2_Order;
            ViewData["p3_Amt"]          = p3_Amt;
            ViewData["p4_Cur"]          = p4_Cur;
            ViewData["p5_Pid"]          = p5_Pid;
            ViewData["p6_Pcat"]         = p6_Pcat;
            ViewData["p7_Pdesc"]        = p7_Pdesc;
            ViewData["p8_Url"]          = p8_Url;
            ViewData["p9_SAF"]          = p9_SAF;
            ViewData["pa_MP"]           = pa_MP;
            ViewData["pd_FrpId"]        = pd_FrpId;
            ViewData["pr_NeedResponse"] = pr_NeedResponse;
            ViewData["hmac"]            = hmac;
            return(View());
        }
Ejemplo n.º 3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //充值开始
            Request.Cookies.Remove("ErrorMsg");
            // 设置 Response编码格式为GB2312
            Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");

            payBankUser   = Request.Form["yeepayBankUser"] ?? string.Empty;
            payBankMoney  = Request.Form["yeepayBankMoney"] ?? string.Empty;
            payBankName   = Request.Form["yeepayBankName"] ?? string.Empty;
            payOtherMoney = Request.Form["selfMoney"] ?? string.Empty;
            if (payBankMoney.Equals("0"))
            {
                payBankMoney = "100";
            }
            if (!string.IsNullOrEmpty(payOtherMoney))
            {
                payBankMoney = payOtherMoney;
            }
            if (!string.IsNullOrEmpty(payBankUser) && !string.IsNullOrEmpty(payBankMoney) && !string.IsNullOrEmpty(payBankName))
            {
                AccountsInfo accountsInfo = accountsfacade.GetAccountsByAccontsName(payBankUser);
                if (accountsInfo == null)
                {
                    HttpCookie UserCookie2 = new HttpCookie("ErrorMsg");
                    UserCookie2["error"] = HttpUtility.UrlDecode("用户名不存在");
                    UserCookie2.Expires  = DateTime.Now.AddMinutes(7);
                    Response.Cookies.Add(UserCookie2);
                    Response.Redirect("/showpayInfo.html");
                }

                try
                {
                    int.Parse(payBankMoney);
                }
                catch (Exception)
                {
                    return;
                }

                switch (payBankName)
                {
                case "ICBC-NET-B2C":       //工商银行
                    payBankInfo = "GSYH";
                    break;

                case "CMBCHINA-NET-B2C":      //招商银行
                    payBankInfo = "ZSYH";
                    break;

                case "ABC-NET-B2C":       //中国农业银行
                    payBankInfo = "NYYH";
                    break;

                case "CCB-NET-B2C":      //建设银行
                    payBankInfo = "JSYH";
                    break;

                case "BCCB-NET-B2C":      //北京银行
                    payBankInfo = "BJYH";
                    break;

                case "BOCO-NET-B2C":    //交通银行
                    payBankInfo = "JTYH";
                    break;

                case "CIB-NET-B2C":     //兴业银行
                    payBankInfo = "XYYH";
                    break;

                case "NJCB-NET-B2C":       //南京银行
                    payBankInfo = "NJYH";
                    break;

                case "CMBC-NET-B2C":      //中国民生银行
                    payBankInfo = "MSYH";
                    break;

                case "CEB-NET-B2C":       //光大银行
                    payBankInfo = "GDYH";
                    break;

                case "BOC-NET-B2C":      //中国银行
                    payBankInfo = "ZGYH";
                    break;

                case "PINGANBANK-NET":      //平安银行
                    payBankInfo = "PAYH";
                    break;

                case "CBHB-NET-B2C":        //渤海银行
                    payBankInfo = "BHYH";
                    break;

                case "ECITIC-NET-B2C":       //中兴银行
                    payBankInfo = "ZXYH";
                    break;

                case "SDB-NET-B2C":       //深圳发展银行
                    payBankInfo = "SZFZYH";
                    break;

                case "GDB-NET-B2C":       //广发银行
                    payBankInfo = "GFYH";
                    break;

                case "SPDB-NET-B2C":       //上海浦东发展银行
                    payBankInfo = "SHPDYH";
                    break;

                case "POST-NET-B2C":       //中国邮政
                    payBankInfo = "ZGYZYH";
                    break;

                case "HXB-NET-B2C":       //华夏银行
                    payBankInfo = "HXYH";
                    break;

                case "CZ-NET-B2C":       //浙商银行
                    payBankInfo = "ZSYH";
                    break;

                default:
                    payBankInfo = "WY";
                    break;
                }

                p2_Order = payBankInfo + "-" + DateTime.Now.ToString("yyyyMMddhhmmss");  //用户订单


                HttpCookie UserCookie = new HttpCookie("PayOrder");
                UserCookie["order"]      = p2_Order;
                UserCookie["orderMoney"] = payBankMoney;
                UserCookie["orderUser"]  = payBankUser;
                UserCookie.Expires       = DateTime.Now.AddMinutes(7);
                Response.Cookies.Add(UserCookie);

                OnLineOrder onlineOrder = new OnLineOrder();
                onlineOrder.Accounts    = payBankUser;
                onlineOrder.UserID      = accountsInfo.UserID;
                onlineOrder.OrderAmount = decimal.Parse(payBankMoney);
                onlineOrder.OrderID     = p2_Order;
                onlineOrder.OrderStatus = 0;
                onlineOrder.ShareID     = 20;
                onlineOrder.CardTotal   = 1;
                onlineOrder.CardTypeID  = 1;//易宝充值
                onlineOrder.TelPhone    = "";
                onlineOrder.IPAddress   = GameRequest.GetUserIP();
                Message msg = treasurefacade.RequestOrder(onlineOrder);
                if (msg.Success)
                {
                    //p3_Amt交易金额  精确两位小数,最小值为0.01,为持卡人实际要支付的金额.
                    p3_Amt = payBankMoney;
                    //交易币种,固定值"CNY".
                    p4_Cur = "CNY";
                    //商品名称
                    p5_Pid = ConfigurationManager.AppSettings["shoppingInfo"];// Request.Form["yeepayBankp5_Pid"];
                    //商品种类
                    p6_Pcat = "1";
                    //商品描述
                    p7_Pdesc = "1";
                    //商户接收支付成功数据的地址,支付成功后易宝支付会向该地址发送两次成功通知.
                    p8_Url = ConfigurationManager.AppSettings["yeepayBankAndCardCallback"].ToString();
                    //送货地址
                    //为“1”: 需要用户将送货地址留在易宝支付系统;为“0”: 不需要,默认为 ”0”.
                    p9_SAF = "0";
                    //商户扩展信息
                    //商户可以任意填写1K 的字符串,支付成功时将原样返回.
                    pa_MP = "sdfdf";
                    //银行编码
                    //默认为"",到易宝支付网关.若不需显示易宝支付的页面,直接跳转到各银行、神州行支付、骏网一卡通等支付页面,该字段可依照附录:银行列表设置参数值.
                    pd_FrpId = payBankName;
                    //默认为"1": 需要应答机制;
                    pr_NeedResponse = "1";

                    string s = Buy.GetMerId();

                    hmac = Buy.CreateBuyHmac(p2_Order, p3_Amt, p4_Cur, p5_Pid, p6_Pcat, p7_Pdesc, p8_Url, p9_SAF, pa_MP, pd_FrpId, pr_NeedResponse);
                }
                else
                {
                    HttpCookie UserCookie2 = new HttpCookie("ErrorMsg");
                    UserCookie2["error"] = HttpUtility.UrlDecode(msg.Content);
                    UserCookie2.Expires  = DateTime.Now.AddMinutes(7);
                    Response.Cookies.Add(UserCookie2);
                    Response.Redirect("/showpayInfo.html");
                }
            }
        }