/// <summary> /// 申请退款 /// </summary> /// <param name="transaction_id">微信单号</param> /// <param name="total_fee">退款金额</param> /// <param name="tradeNo">退款单号</param> /// <returns></returns> public JsonResult Refund(string transaction_id, string total_fee, string tradeNo) { var outTradeNo = string.Empty; var models = new ReturnResultModel <string>(); WxPayData data = new WxPayData(); var totalFee = (int)(decimal.Parse(total_fee) * 100); data.SetValue("transaction_id", transaction_id); data.SetValue("total_fee", totalFee); //订单总金额 data.SetValue("refund_fee", totalFee); //退款金额 if (string.IsNullOrEmpty(tradeNo)) { outTradeNo = WxPayApi.GenerateOutTradeNo(); data.SetValue("out_refund_no", outTradeNo);//随机生成商户退款单号 } else { data.SetValue("out_refund_no", tradeNo); //随机生成商户退款单号 } WxPayData result = WeChatTools.Refund(data); //提交退款申请给API,接收返回数据 if (result.GetValue("return_code").ToString() == "SUCCESS" && result.GetValue("result_code").ToString() == "SUCCESS") { models.IsSuccess = true; models.ResponseInfo = "1"; _weChatRevenueLogic.UpdateStatus(transaction_id); } else { models.IsSuccess = false; models.ResponseInfo = result.GetValue("return_msg").ToString(); models.ReturnMsg = outTradeNo; } return(Json(models)); }
public JsonResult UpLoadPush(string pushFile) { UploadFile uf = new UploadFile(); uf.SetMaxSizeM(1000); //上传文件大小 string url = "/UpLoadFile/"; //文件保存路径 string saveFolder = Server.MapPath(url); uf.SetFileDirectory(saveFolder); string filesName = System.Web.HttpContext.Current.Request.Params["pushFile"]; HttpPostedFile file = System.Web.HttpContext.Current.Request.Files[filesName]; var reponseMessage = uf.Save(file, "PushObjectImport"); //保存文件 UploadHelper uploadHelper = new UploadHelper(); string readPath = Server.MapPath("/UpLoadFile/PushObjectImport/" + reponseMessage.FileName); DataTable dt = uploadHelper.GetDataByExcel(readPath); System.IO.File.Delete(readPath); var models = new ReturnResultModel <string>(); try { string msg = ""; models.IsSuccess = _dl.SaveUploadPushMSg(dt, ref msg); models.ResponseInfo = models.IsSuccess ? "1" : "0"; models.ReturnMsg = msg; } catch (Exception ex) { models.ResponseInfo = ex.Message; } return(Json(models, JsonRequestBehavior.AllowGet)); }