public class TransfersPay
{
public string openid { get; set; }
public int amount { get; set; }
public string partner_trade_no { get; set; }
public string re_user_name { get; set; }
public string spbill_create_ip { get; set; }
public WxPayData GetTransfersApiParameters()
{
WxPayData apiParam = new WxPayData();
apiParam.SetValue("partner_trade_no", partner_trade_no);
apiParam.SetValue("openid", openid);
apiParam.SetValue("check_name", "NO_CHECK");
apiParam.SetValue("amount", amount);
apiParam.SetValue("desc", "提现");
apiParam.SetValue("spbill_create_ip", spbill_create_ip);
apiParam.SetValue("re_user_name", re_user_name);
return apiParam;
}
}
public static WxPayData Transfers(WxPayData inputData, int timeOut = 6)
{
var url = "https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers";
inputData.SetValue("mch_appid", WxPayConfig.APPID);//公众账号ID
inputData.SetValue("mchid", WxPayConfig.MCHID);//商户号
inputData.SetValue("nonce_str", WxPayApi.GenerateNonceStr());//随机字符串
inputData.SetValue("sign", inputData.MakeSign());//签名
string xml = inputData.ToXml();
var start = DateTime.Now;
string response = HttpService.Post(xml, url, true, timeOut);
// Portal.MVC.Logger.Info("WxPayApi"+ "UnfiedOrder response : " + response);
var end = DateTime.Now;
int timeCost = (int)((end - start).TotalMilliseconds);
WxPayData result = new WxPayData();
result.FromXml(response);
ReportCostTime(url, timeCost, result);//测速上报
return result;
}
//是否使用证书
if (isUseCert)
{
string path = HttpContext.Current.Request.PhysicalApplicationPath;
X509Certificate2 cert = new X509Certificate2(path + WxPayConfig.SSLCERT_PATH, WxPayConfig.SSLCERT_PASSWORD);
request.ClientCertificates.Add(cert);
Log.Debug("WxPayApi", "PostXml used cert");
}
[LoginValid]
public ActionResult CashTransfers(string orderNumber)
{
//var order = new Order(){Amount = 1};
// var openid = "oBSBmwQjqwjfzQlKsFNjxFLSixxx";
var user = _workContext.CurrentUser;
var order = _paymentService.GetOrderByOrderNumber(orderNumber);
var transfer = new TransfersPay
{
openid = user.OpenId,
amount = (int) order.Amount*100,
partner_trade_no = order.OrderNumber,
re_user_name = "stoneniqiu",
spbill_create_ip = _webHelper.GetCurrentIpAddress()
};
var data = transfer.GetTransfersApiParameters();
var result = WxPayApi.Transfers(data);
return Content(result.ToPrintStr());
}
[LoginValid]
public ActionResult CashTransfers(string orderNumber)
{
var user = _workContext.CurrentUser;
var order = _paymentService.GetOrderByOrderNumber(orderNumber);
if (string.IsNullOrEmpty(user.OpenId))
{
return Json(new PortalResult("请用微信登录!"));
}
if (order == null || order.OrderState != OrderState.Padding)
{
return Json(new PortalResult("订单有误!"));
}
var transfer = new TransfersPay
{
openid = user.OpenId,
amount = (int) order.Amount*100,
partner_trade_no = order.OrderNumber,
re_user_name = "stoneniqiu",
spbill_create_ip = _webHelper.GetCurrentIpAddress()
};
var data = transfer.GetTransfersApiParameters();
var result = WxPayApi.Transfers(data);
if (result.GetValue("result_code").ToString() == "SUCCESS")
{
return Json(new PortalResult(true, "提现成功"));
}
return Json(new PortalResult(false, result.GetValue("return_msg").ToString()));
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有