/// <summary> /// 跳转支付函数 /// </summary> /// <param name="Order_UID"></param> /// <param name="Retaion_UID"></param> /// <returns></returns> public ActionResult Checkout(string Order_UID, string Retaion_UID) { Model.SiteInfo siteinfo = Model.SiteInfo.GetModel(t => t.id != 0); ///////////////////////以下参数是需要设置的相关配置参数,设置后不会更改的/////////////////////////// AlipayConfig con = new AlipayConfig(); string partner = con.Partner; string key = con.Key; string seller_email = con.Seller_email; string input_charset = con.Input_charset; string notify_url = siteinfo.WebAddress + "/AlipayForOrder/Alipay_Notify"; string return_url = siteinfo.WebAddress + "/AlipayForOrder/Alipay_Return"; string show_url = con.Show_url; string sign_type = con.Sign_type; //########################################## ///////////////////////以下参数是需要通过下单时的订单数据传入进来获得//////////////////////////////// //应付金额 double?PayMoney = 0; //会员编号 string Member_UID = string.Empty; //订单编号集合 string OrderUIDLIST = string.Empty; //if (!string.IsNullOrEmpty(Retaion_UID)) //{ // List<Orders> order_list = Orders.GetModelList(t => t.O_Relation_UID == Retaion_UID).List; // string _dj_pay = string.Empty; // foreach (var item in order_list) // { // if (item.O_PayStyle == 3) // _dj_pay = "3"; // PayMoney += item.O_PayMoney; // Member_UID = item.Member_UID; // OrderUIDLIST += item.O_UID + ","; // } // PayMoney = string.IsNullOrEmpty(_dj_pay) ? PayMoney : PayMoney * 0.3; //} //else //{ // Orders m_order = Orders.GetModel(t => t.O_UID == Order_UID); // PayMoney = m_order.O_PayMoney; // PayMoney = m_order.O_PayStyle != 3 ? PayMoney : PayMoney * 0.3; // Member_UID = m_order.Member_UID; // OrderUIDLIST += m_order.O_UID + ","; //} if (PayMoney > 0 && !string.IsNullOrEmpty(OrderUIDLIST)) { #region 支付 //必填参数 //请与贵网站订单系统中的唯一订单号匹配 string out_trade_no = OrderUIDLIST; //订单名称,显示在支付宝收银台里的“商品名称”里,显示在支付宝的交易管理的“商品名称”的列表里。 string subject = "会员[" + Member_UID + "] 支付订单"; //订单描述、订单详细、订单备注,显示在支付宝收银台里的“商品描述”里 string body = ""; //订单总金额,显示在支付宝收银台里的“应付总额”里 string total_fee = PayMoney.ToDouble2().ToString("0.00"); //必填参数 - End //########################################## //扩展功能参数——默认支付方式 string paymethod = "bankPay"; //默认支付方式,四个值可选:bankPay(网银); cartoon(卡通); directPay(余额); CASH(网点支付),初始值 string defaultbank = ""; //默认网银代号,代号列表见http://club.alipay.com/read.php?tid=8681379 初始值 //string pay_mode = Request["pay_bank"]; //if (pay_mode == "directPay") //{ // paymethod = "directPay"; //} //else //{ // paymethod = "bankPay"; // defaultbank = pay_mode; //} //扩展功能参数——防钓鱼 //请慎重选择是否开启防钓鱼功能 //exter_invoke_ip、anti_phishing_key一旦被设置过,那么它们就会成为必填参数 //建议使用POST方式请求数据 string anti_phishing_key = ""; //防钓鱼时间戳 string exter_invoke_ip = ""; //获取客户端的IP地址,建议:编写获取客户端IP地址的程序 //如: //exter_invoke_ip = ""; //anti_phishing_key = AlipayFunction.Query_timestamp(partner); //获取防钓鱼时间戳函数 //扩展功能参数——其他 string extra_common_param = ""; //自定义参数,可存放任何内容(除=、&等特殊字符外),不会显示在页面上 string buyer_email = ""; //默认买家支付宝账号 //扩展功能参数——分润(若要使用,请按照注释要求的格式赋值) string royalty_type = ""; //提成类型,该值为固定值:10,不需要修改 string royalty_parameters = ""; //提成信息集,与需要结合商户网站自身情况动态获取每笔交易的各分润收款账号、各分润金额、各分润说明。最多只能设置10条 //各分润金额的总和须小于等于total_fee //提成信息集格式为:收款方Email_1^金额1^备注1|收款方Email_2^金额2^备注2 //如: //royalty_type = "10"; //royalty_parameters = "[email protected]^0.01^分润备注一|[email protected]^0.01^分润备注二"; ///////////////////////////////////////////////////////////////////////////////////////////////////// //构造请求函数,无需修改 AlipayService aliService = new AlipayService(partner, seller_email, return_url, notify_url, show_url, out_trade_no, subject, body, total_fee, paymethod, defaultbank, anti_phishing_key, exter_invoke_ip, extra_common_param, buyer_email, royalty_type, royalty_parameters, key, input_charset, sign_type); string sHtmlText = aliService.Build_Form(); //打印页面 return(Content(sHtmlText)); #endregion } return(Content("该订单流水号不存在!")); }
/// <summary> /// 跳转支付函数 /// </summary> /// <param name="m_uid">会员编号</param> /// <param name="money">充值金额</param> /// <param name="cate">支付类型【"充值"/"活动付款"】</param> /// <returns></returns> public ActionResult Checkout(string obj_uid, string M_UID, string cate, double?money) { if (!string.IsNullOrEmpty(obj_uid) && money > 0) { #region 充值/活动支付 ///////////////////////以下参数是需要设置的相关配置参数,设置后不会更改的/////////////////////////// AlipayConfig con = new AlipayConfig(); string partner = con.Partner; string key = con.Key; string seller_email = con.Seller_email; string input_charset = con.Input_charset; string notify_url = con.Notify_url; string return_url = con.Return_url; string show_url = con.Show_url; //# string sign_type = con.Sign_type; //########################################## ///////////////////////以下参数是需要通过下单时的订单数据传入进来获得//////////////////////////////// string m_username = ""; string actioncate = string.Empty; switch (cate) { } //必填参数 //请与贵网站订单系统中的唯一订单号匹配 string out_trade_no = obj_uid; //订单名称,显示在支付宝收银台里的“商品名称”里,显示在支付宝的交易管理的“商品名称”的列表里。 string tips = "会员[" + m_username + "]" + actioncate; string subject = tips; //订单描述、订单详细、订单备注,显示在支付宝收银台里的“商品描述”里 string body = cate; //订单总金额,显示在支付宝收银台里的“应付总额”里 string total_fee = money.ToDouble2().ToString("0.00"); //必填参数 - End //########################################## //扩展功能参数——默认支付方式 string paymethod = "bankPay"; //默认支付方式,四个值可选:bankPay(网银); cartoon(卡通); directPay(余额); CASH(网点支付),初始值 string defaultbank = ""; //默认网银代号,代号列表见http://club.alipay.com/read.php?tid=8681379 初始值 //string pay_mode = Request["pay_bank"]; //if (pay_mode == "directPay") //{ // paymethod = "directPay"; //} //else //{ // paymethod = "bankPay"; // defaultbank = pay_mode; //} //扩展功能参数——防钓鱼 //请慎重选择是否开启防钓鱼功能 //exter_invoke_ip、anti_phishing_key一旦被设置过,那么它们就会成为必填参数 //建议使用POST方式请求数据 string anti_phishing_key = ""; //防钓鱼时间戳 string exter_invoke_ip = ""; //获取客户端的IP地址,建议:编写获取客户端IP地址的程序 //如: //exter_invoke_ip = ""; //anti_phishing_key = AlipayFunction.Query_timestamp(partner); //获取防钓鱼时间戳函数 //扩展功能参数——其他 string extra_common_param = M_UID; //自定义参数,可存放任何内容(除=、&等特殊字符外),不会显示在页面上 string buyer_email = ""; //默认买家支付宝账号 //扩展功能参数——分润(若要使用,请按照注释要求的格式赋值) string royalty_type = ""; //提成类型,该值为固定值:10,不需要修改 string royalty_parameters = ""; //提成信息集,与需要结合商户网站自身情况动态获取每笔交易的各分润收款账号、各分润金额、各分润说明。最多只能设置10条 //各分润金额的总和须小于等于total_fee //提成信息集格式为:收款方Email_1^金额1^备注1|收款方Email_2^金额2^备注2 //如: //royalty_type = "10"; //royalty_parameters = "[email protected]^0.01^分润备注一|[email protected]^0.01^分润备注二"; ///////////////////////////////////////////////////////////////////////////////////////////////////// //构造请求函数,无需修改 AlipayService aliService = new AlipayService(partner, seller_email, return_url, notify_url, show_url, out_trade_no, subject, body, total_fee, paymethod, defaultbank, anti_phishing_key, exter_invoke_ip, extra_common_param, buyer_email, royalty_type, royalty_parameters, key, input_charset, sign_type); string sHtmlText = aliService.Build_Form(); //打印页面 return(Content(sHtmlText)); #endregion } return(Content("该充值流水号不存在!")); }