public ActionResult GeneralPayParamByChongZhi(int User_ID, decimal FinishPrice) { try { if (User_ID <= 0) { return(FailNoLogin()); } string appid = CheckAPPID(); if (FinishPrice < 1) { throw new Exception("充值金额最小为1元"); } dm_basesettingEntity dm_BasesettingEntity = dM_BaseSettingIBLL.GetEntityByCache(appid); if (dm_BasesettingEntity == null) { return(Fail("基础配置获取失败!")); } //FinishPrice = 0.01M;//测试支付金额为0.01 string out_trade_no = DateTime.Now.ToString("yyyyMMddHHmmssfff") + User_ID.ToString().PadLeft(6, '0'); IAopClient client = new DefaultAopClient("https://openapi.alipay.com/gateway.do", dm_BasesettingEntity.alipay_appid, dm_BasesettingEntity.merchant_private_key, "json", "1.0", "RSA2", "utf-8", false, AliPayHelper.GetCertParams(dm_BasesettingEntity.alipay_appid, base.Server)); //IAopClient client = new DefaultAopClient("https://openapi.alipay.com/gateway.do", dm_BasesettingEntity.alipay_appid, dm_BasesettingEntity.merchant_private_key, "json", "1.0", "RSA2", dm_BasesettingEntity.alipay_public_key, "GBK", false); AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest(); request.SetNotifyUrl(dm_BasesettingEntity.alipay_notifyurl); request.SetReturnUrl(dm_BasesettingEntity.alipay_notifyurl); request.BizContent = GetBizContent1(User_ID, 99, "余额充值", FinishPrice, out_trade_no); AlipayTradeAppPayResponse response = client.SdkExecute(request); dm_alipay_recordEntity dm_Alipay_RecordEntity = new dm_alipay_recordEntity(); dm_Alipay_RecordEntity.user_id = User_ID; dm_Alipay_RecordEntity.total_amount = FinishPrice; dm_Alipay_RecordEntity.templateid = 99; dm_Alipay_RecordEntity.subject = "余额充值"; dm_Alipay_RecordEntity.out_trade_no = out_trade_no; dM_Alipay_RecordIBLL.SaveEntity(0, dm_Alipay_RecordEntity); return(Success("支付参数获取成功!", new { PayParam = response.Body })); } catch (Exception ex) { return(FailException(ex)); } }
/// <summary> /// 生成支付参数 /// </summary> /// <param name="user_id">用户ID</param> /// <param name="PackageType">套餐ID 1初级代理 2高级代理 3升级代理</param> /// <returns></returns> // GET: A_Pay public ActionResult GeneralPayParam(int user_id, int TemplateID) { try { string appid = CheckAPPID(); if (TemplateID <= 0) { return(Fail("套餐信息异常!")); } dm_alipay_templateEntity dm_Alipay_TemplateEntity = dM_Alipay_TemplateIBLL.GetEntityByCache(TemplateID, appid); if (dm_Alipay_TemplateEntity.IsEmpty()) { return(Fail("套餐信息异常!")); } dm_basesettingEntity dm_BasesettingEntity = dM_BaseSettingIBLL.GetEntityByCache(appid); if (dm_BasesettingEntity == null) { return(Fail("基础配置获取失败!")); } string out_trade_no = DateTime.Now.ToString("yyyyMMddHHmmssfff") + user_id.ToString().PadLeft(6, '0'); IAopClient client = new DefaultAopClient("https://openapi.alipay.com/gateway.do", dm_BasesettingEntity.alipay_appid, dm_BasesettingEntity.merchant_private_key, "json", "1.0", "RSA2", "utf-8", false, AliPayHelper.GetCertParams(dm_BasesettingEntity.alipay_appid, base.Server)); //IAopClient client = new DefaultAopClient("https://openapi.alipay.com/gateway.do", dm_BasesettingEntity.alipay_appid, dm_BasesettingEntity.merchant_private_key, "json", "1.0", "RSA2", dm_BasesettingEntity.alipay_public_key, "GBK", false); AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest(); request.SetNotifyUrl(dm_BasesettingEntity.alipay_notifyurl); request.SetReturnUrl(dm_BasesettingEntity.alipay_notifyurl); request.BizContent = GetBizContent1(user_id, TemplateID, dm_Alipay_TemplateEntity.name, dm_Alipay_TemplateEntity.finishprice, out_trade_no); AlipayTradeAppPayResponse response = client.SdkExecute(request); dm_alipay_recordEntity dm_Alipay_RecordEntity = new dm_alipay_recordEntity(); dm_Alipay_RecordEntity.user_id = user_id; dm_Alipay_RecordEntity.total_amount = dm_Alipay_TemplateEntity.finishprice; dm_Alipay_RecordEntity.templateid = TemplateID; dm_Alipay_RecordEntity.subject = dm_Alipay_TemplateEntity.name; dm_Alipay_RecordEntity.out_trade_no = out_trade_no; dM_Alipay_RecordIBLL.SaveEntity(0, dm_Alipay_RecordEntity); return(Success("支付参数获取成功!", new { PayParam = response.Body })); } catch (Exception ex) { return(FailException(ex)); } }
public Dictionary <string, string> BuildPayParams() { IAopClient alipayClient = GetAopClient(); AlipayTradeAppPayRequest alipayRequest = new AlipayTradeAppPayRequest(); alipayRequest.SetReturnUrl(Merchant.ReturnUrl.ToString()); alipayRequest.SetNotifyUrl(Merchant.NotifyUrl.ToString()); AlipayTradeAppPayModel model = new AlipayTradeAppPayModel(); model.Subject = Order.Subject; model.OutTradeNo = Order.OrderNo; model.TimeoutExpress = "30m"; model.TotalAmount = Order.OrderAmount.ToString(); model.ProductCode = "QUICK_MSECURITY_PAY"; alipayRequest.SetBizModel(model); Dictionary <string, string> resParam = new Dictionary <string, string>(); resParam.Add("body", alipayClient.pageExecute(alipayRequest).Body); return(resParam); }
/// <summary> /// 创建Sdk支付链接串(蚂蚁金服) /// </summary> /// <param name="directInfo">支付信息</param> /// <param name="config">config</param> /// <returns>请求连接</returns> public static string CreateDirectSdkPayByUser(DirectInfo directInfo, SdkPay.Config config) { const string url = SdkPay.Config.ServerUrl; string appId = config.GetAppId(); string privateKeyPem = config.GetPrivateKeyPem(); const string format = SdkPay.Config.Format; const string version = SdkPay.Config.Version; const string signType = SdkPay.Config.SignType; string publicKeyPem = config.GetPublicKeyPem(); const string charset = SdkPay.Config.Charset; const string productCode = SdkPay.Config.ProductCode; string pid = config.GetPid(); IAopClient client = new DefaultAopClient(url, appId, privateKeyPem, format, version, signType, publicKeyPem, charset, false); AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest(); if (!string.IsNullOrWhiteSpace(directInfo.Notify)) { request.SetNotifyUrl(directInfo.Notify); } if (!string.IsNullOrWhiteSpace(directInfo.Return)) { request.SetReturnUrl(directInfo.Return); } AlipayTradeAppPayModel model = new AlipayTradeAppPayModel { Body = directInfo.ExtraCommonParam, Subject = directInfo.Subject, TotalAmount = directInfo.TotalFee.ToString("0.00"), ProductCode = productCode, OutTradeNo = directInfo.OutTradeNo, TimeoutExpress = "30m", SellerId = pid }; request.SetBizModel(model); AlipayTradeAppPayResponse response = client.SdkExecute(request); var body = response.Body; return(body); }
/// <summary> /// 生成支付参数 /// </summary> /// <param name="user_id">用户ID</param> /// <param name="PackageType">套餐ID 1初级代理 2高级代理 3升级代理</param> /// <returns></returns> // GET: A_Pay public ActionResult GeneralPayParam(int user_id, int TemplateID) { try { string appid = CheckAPPID(); if (TemplateID <= 0) { return(Fail("套餐信息异常!")); } dm_alipay_templateEntity dm_Alipay_TemplateEntity = dM_Alipay_TemplateIBLL.GetEntityByCache(TemplateID, appid); if (dm_Alipay_TemplateEntity.IsEmpty()) { return(Fail("套餐信息异常!")); } dm_basesettingEntity dm_BasesettingEntity = dM_BaseSettingIBLL.GetEntityByCache(appid); if (dm_BasesettingEntity == null) { return(Fail("基础配置获取失败!")); } string out_trade_no = DateTime.Now.ToString("yyyyMMddHHmmssfff") + user_id.ToString().PadLeft(6, '0'); IAopClient client = new DefaultAopClient("https://openapi.alipaydev.com/gateway.do", dm_BasesettingEntity.alipay_appid, dm_BasesettingEntity.merchant_private_key, "json", "1.0", "RSA2", dm_BasesettingEntity.alipay_public_key, "GBK", false); AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest(); request.SetNotifyUrl(dm_BasesettingEntity.alipay_notifyurl); request.SetReturnUrl(dm_BasesettingEntity.alipay_notifyurl); request.BizContent = "{" + "\"timeout_express\":\"90m\"," + "\"total_amount\":\"" + dm_Alipay_TemplateEntity.finishprice + "\"," + "\"product_code\":\"QUICK_MSECURITY_PAY\"," + "\"body\":\"" + dm_Alipay_TemplateEntity.name + "\"," + "\"subject\":\"" + dm_Alipay_TemplateEntity.name + "\"," + "\"out_trade_no\":\"" + out_trade_no + "\"," + "\"time_expire\":\"" + DateTime.Now.AddMinutes(30).ToString("yyyy-MM-dd HH:mm:ss") + "\"," + "\"goods_type\":\"1\"," + //"\"promo_params\":\"{\\\"storeIdType\\\":\\\"1\\\"}\"," + "\"passback_params\":\"" + HttpUtility.UrlEncode(dm_Alipay_TemplateEntity.name) + "\"," + "\"extend_params\":{" + "\"sys_service_provider_id\":\"" + user_id + "\"," + "\"hb_fq_num\":\"3\"," + "\"hb_fq_seller_percent\":\"100\"," + "\"industry_reflux_info\":\"{\\\\\\\"scene_code\\\\\\\":\\\\\\\"metro_tradeorder\\\\\\\",\\\\\\\"channel\\\\\\\":\\\\\\\"xxxx\\\\\\\",\\\\\\\"scene_data\\\\\\\":{\\\\\\\"asset_name\\\\\\\":\\\\\\\"ALIPAY\\\\\\\"}}\"," + "\"card_type\":\"S0JP0000\"" + " }," + "\"merchant_order_no\":\"20201008001\"," + "\"enable_pay_channels\":\"pcredit,moneyFund,debitCardExpress\"," + "\"store_id\":\"NJ_001\"," + "\"specified_channel\":\"pcredit\"," + "\"disable_pay_channels\":\"pcredit,moneyFund,debitCardExpress\"," + " \"goods_detail\":[{" + " \"goods_id\":\"" + TemplateID + "\"," + "\"alipay_goods_id\":\"20010001\"," + "\"goods_name\":\"" + dm_Alipay_TemplateEntity.name + "\"," + "\"quantity\":1," + "\"price\":2000," + "\"goods_category\":\"34543238\"," + "\"categories_tree\":\"124868003|126232002|126252004\"," + "\"body\":\"" + dm_Alipay_TemplateEntity.name + "\"," + "\"show_url\":\"http://www.alipay.com/xxx.jpg\"" + " }]," + "\"ext_user_info\":{" + "\"name\":\"" + dm_Alipay_TemplateEntity.name + "\"," + "\"mobile\":\"16587658765\"," + "\"cert_type\":\"IDENTITY_CARD\"," + "\"cert_no\":\"362334768769238881\"," + "\"min_age\":\"18\"," + "\"fix_buyer\":\"F\"," + "\"need_check_info\":\"F\"" + " }," + "\"business_params\":\"{\\\"data\\\":\\\"123\\\"}\"," + "\"agreement_sign_params\":{" + "\"personal_product_code\":\"CYCLE_PAY_AUTH_P\"," + "\"sign_scene\":\"INDUSTRY|DIGITAL_MEDIA\"," + "\"external_agreement_no\":\"test20190701\"," + "\"external_logon_id\":\"13852852877\"," + "\"access_params\":{" + "\"channel\":\"ALIPAYAPP\"" + " }," + "\"sub_merchant\":{" + "\"sub_merchant_id\":\"2088123412341234\"," + "\"sub_merchant_name\":\"哆来米\"," + "\"sub_merchant_service_name\":\"能省钱更能赚钱\"," + "\"sub_merchant_service_description\":\"副业才有未来\"" + " }," + "\"period_rule_params\":{" + "\"period_type\":\"DAY\"," + "\"period\":3," + "\"execute_time\":\"2019-01-23\"," + "\"single_amount\":10.99," + "\"total_amount\":600," + "\"total_payments\":12" + " }" + " }" + " }"; AlipayTradeAppPayResponse response = client.SdkExecute(request); dm_alipay_recordEntity dm_Alipay_RecordEntity = new dm_alipay_recordEntity(); dm_Alipay_RecordEntity.user_id = user_id; dm_Alipay_RecordEntity.total_amount = dm_Alipay_TemplateEntity.finishprice; dm_Alipay_RecordEntity.templateid = TemplateID; dm_Alipay_RecordEntity.subject = dm_Alipay_TemplateEntity.name; dm_Alipay_RecordEntity.out_trade_no = out_trade_no; dM_Alipay_RecordIBLL.SaveEntity(0, dm_Alipay_RecordEntity); return(Success("支付参数获取成功!", new { PayParam = response.Body })); } catch (Exception ex) { return(FailException(ex)); } }