public JsonResult SaveOrder(Model.TD_Donation_Order order) { order.PayType = Constants.PayType.WeiXin; var member = MemberData.GetMember(); order.MemberID = member.MemberID; order.OpenID = member.OpenID; order.HeaderImage = member.HeaderImage; order.NickName = member.NickName; order.DonationType = (int)Constants.DonationType.RXYS1; order.DonationID = Constants.DonationID.RXYS1; order.OrgID = int.Parse(DESEncrypt.Decrypt(ViewBag.EnOrgID)); int result = orderBLL.Save(order); if (result > 0) { string url = string.Empty; if (order.PayType == Constants.PayType.WeiXin) { url = "/WeiXinPay/PayForDonation?oid=" + ViewBag.EnOrgID + "&orderid=" + order.OrderID + "&url=" + HttpUtility.UrlEncode("/Donation/RXYS1/Index?oid=" + ViewBag.EnOrgID); } return(GetSucceedResult(new { url = url }, "")); } else { return(GetErrorResult("保存失败,请稍候再试")); } }
public int Save(Model.TD_Donation_Order order) { string tranID = MySqlHelperUtil.BeginTran(); try { string orderID = GetOrderID(); order.OrderID = orderID; order.PayNo = orderID; order.IsPay = "0"; order.OrderTime = DateTime.Now; decimal result = dal.Add(order, tranID); if (result == 0) { MySqlHelperUtil.RollbackTran(tranID); return(0); } MySqlHelperUtil.CommitTran(tranID); return(1); } catch (Exception ex) { MySqlHelperUtil.RollbackTran(tranID); return(0); } }
private Model.TD_WeiXin_Member GetCurrentMember(Model.TD_Donation_Order model, IList <Model.TD_WeiXin_Member> members) { foreach (var member in members) { if (member.MemberID == model.MemberID) { return(member); } } return(null); }
public int PayOrder(Model.TD_Donation_Order model, string tranID) { string sql = "UPDATE TD_Donation_Order SET PayTime=@PayTime,IsPay=@IsPay WHERE OrderID=@OrderID"; MySqlParameter[] parameters = { new MySqlParameter("@PayTime", model.PayTime), new MySqlParameter("@IsPay", model.IsPay), new MySqlParameter("@OrderID", model.OrderID) }; return(MySqlHelperUtil.ExecuteNonQuery(tranID, sql, parameters)); }
public int SyncDonation(Model.TD_Order_WeiXinPay model, string orderID) { Model.TD_Donation_Order order = donationOrderBLL.GetModel(orderID); if (order == null) { return(0); } if (order.IsPay == "1") { return(0); } DateTime now = DateTime.Now; order.PayTime = now; order.IsPay = "1"; string tranID = MySqlHelperUtil.BeginTran(); try { decimal result = dal.Sync(model, tranID); if (result == 0) { MySqlHelperUtil.RollbackTran(tranID); return(0); } result = donationOrderBLL.PayOrder(order, tranID); if (result == 0) { MySqlHelperUtil.RollbackTran(tranID); return(0); } MySqlHelperUtil.CommitTran(tranID); return(1); } catch { MySqlHelperUtil.RollbackTran(tranID); return(0); } }
public ActionResult PayForDonation(string orderid, string url) { var member = MemberData.GetMember(); var now = DateTime.Now; if (string.IsNullOrEmpty(orderid)) { return(GotoErrorResult("未找到该订单")); } Model.TD_Donation_Order model = donationOrderBLL.GetModel(orderid); if (model == null) { return(GotoErrorResult("未找到该订单")); } if (model.IsPay == "0") { bool exists = weiXinPayBLL.OrderIsPay(model.OrderID, 1); if (exists) { return(GotoErrorResult("订单已微信支付,请联系平台")); } string ip = Request.UserHostAddress; WeiXinPort port = new WeiXinPort(); try { port.InitSignature(HttpContext.Request.Url.AbsoluteUri); string domain = Request.Url.Scheme + "://" + Request.Url.Authority; port.InitPaySignature(model.OrderID.ToString(), model.Fee.Value, member.OpenID, domain, ip); if (!string.IsNullOrEmpty(port.ErrorMessage)) { return(GotoErrorResult(port.ErrorMessage)); } Model.TD_Order_WeiXinPay weiXinPay = new Model.TD_Order_WeiXinPay(); weiXinPay.OrderID = model.OrderID.ToString(); weiXinPay.Timestamp = port.Timestamp; weiXinPay.NonceStr = port.NonceStr; weiXinPay.Package = port.Package; weiXinPay.Status = 0; weiXinPay.PayTime = now; weiXinPayBLL.Add(weiXinPay); ViewBag.ThirdPortConfig = new ThirdSharedInfo() { AppID = port.AppID, NonceStr = port.NonceStr, Timestamp = port.Timestamp, Package = port.Package, SignType = port.SignType, Signature = port.Signature, PaySignature = port.PaySignature }; } catch { } ViewBag.BackURL = HttpUtility.UrlEncode(url); return(View(model)); } else { return(GotoErrorResult("订单状态有误")); } }
public int PayOrder(Model.TD_Donation_Order model, string tranID) { return(dal.PayOrder(model, tranID)); }