protected void Page_Load(object sender, EventArgs e) { if (Request.QueryString["iid"] != null && Request.QueryString["txtnum"] != null && Request.QueryString["remark"] != null) { Pet_XXL_Order order = new Pet_XXL_Order(); order.CreateTime = DateTime.Now; order.FromUserName = ""; order.GoodsName = "爱宠筹 - 为爱筹"; order.OrderNo = DateTime.Now.ToString("yyyyMMddHHmmssffff") + new Random().Next(1000, 9999) + Guid.NewGuid().ToString().Substring(0, 6); order.OrderState = 0; order.OutOrderNo = ""; order.Source = int.Parse(Request.Params["iid"]);//来源 自己平台 order.CatSource = 0; order.PetSource = 0; order.PayType = 3; order.UnitPrice = decimal.Parse(Request.Params["txtnum"]); order.TotalPrice = order.UnitPrice; order.CourierRemark = Request.Params["remark"] ?? "支持"; order.Remark = "0"; order.UrlPara = int.Parse(Request.QueryString["p"] ?? "1"); order.iswx = int.Parse(Request.QueryString["iswx"] ?? "1"); order.PJ = 0; Pet_JiuZhu_PeiJuan pj = nvbo.GetPeiJuan(DateTime.Now); Pet_JiuZhu_Info j = nvbo.GetJiuZhuInfo(int.Parse(Request.Params["iid"])); if (j != null && j.JZType == 1) { if (pj != null && pj.YJ < pj.PJ * 16 && order.TotalPrice >= 10 && DateTime.Now.Hour >= 10) //配捐配置不为空,并且配捐额度未满,并且捐款金额大于10元,10点开始 { Pet_JiuZhu_NotPeiJuan nt = nvbo.GetNotPeiJuan(j.ID, DateTime.Now.ToString("yyyy-MM-dd")); if (nt == null) //没有配置不参与配捐 { decimal cw = Math.Round(order.TotalPrice.Value / 6, 2); //宠物管家配捐金额 if (pj.YJ > pj.PJ * 16 / 2) //大于50%,采用随机的方式判断是否配捐 { Random r = new Random(DateTime.Now.Millisecond); int num = r.Next(0, 100); if (num % 2 == 0) //一半的概率配捐 { order.PJ = cw; } } else { order.PJ = cw; } if (order.PJ + pj.YJ > pj.PJ * 16) //如果配捐加上已捐大于额度,则配捐等于剩余额度 { order.PJ = pj.PJ * 16 - pj.YJ; } } } } int oid = nvbo.SavePetXXLOrder(order); orderno = order.OrderNo; je = order.TotalPrice.Value; remark = order.CourierRemark; WxPayData data = new WxPayData(); data.SetValue("body", order.GoodsName); //商品描述 data.SetValue("attach", "扫描支付"); //附加数据 data.SetValue("out_trade_no", order.OrderNo); //随机字符串 data.SetValue("total_fee", Convert.ToInt32(order.TotalPrice * 100)); //总金额 data.SetValue("time_start", DateTime.Now.ToString("yyyyMMddHHmmss")); //交易起始时间 data.SetValue("time_expire", DateTime.Now.AddMinutes(10).ToString("yyyyMMddHHmmss")); //交易结束时间 data.SetValue("goods_tag", "无"); //商品标记 data.SetValue("trade_type", "NATIVE"); //交易类型 data.SetValue("product_id", order.Source); //商品ID WxPayData result = new WxPayApi().UnifiedOrder(data); //调用统一下单接口 url = result.GetValue("code_url") == null ? "" : result.GetValue("code_url").ToString(); //获得统一下单接口返回的二维码链接 } else if (Request.QueryString["cid"] != null && Request.QueryString["txtnum"] != null && Request.QueryString["remark"] != null) { Pet_XXL_Order order = new Pet_XXL_Order(); order.CreateTime = DateTime.Now; order.FromUserName = ""; order.GoodsName = "爱宠筹 - 为爱筹"; order.OrderNo = DateTime.Now.ToString("yyyyMMddHHmmssffff") + new Random().Next(1000, 9999) + Guid.NewGuid().ToString().Substring(0, 6); order.OrderState = 0; order.OutOrderNo = ""; order.CatSource = int.Parse(Request.Params["cid"]);//来源 自己平台 order.Source = 0; order.PayType = 3; order.UnitPrice = decimal.Parse(Request.Params["txtnum"]); order.TotalPrice = order.UnitPrice; order.CourierRemark = Request.Params["remark"] ?? "支持"; order.Remark = "0"; order.UrlPara = int.Parse(Request.QueryString["p"] ?? "1"); order.iswx = int.Parse(Request.QueryString["iswx"] ?? "1"); order.PJ = 0; Pet_JiuZhu_PeiJuan pj = nvbo.GetPeiJuan(DateTime.Now); int oid = nvbo.SavePetXXLOrder(order); orderno = order.OrderNo; je = order.TotalPrice.Value; remark = order.CourierRemark; WxPayData data = new WxPayData(); data.SetValue("body", order.GoodsName); //商品描述 data.SetValue("attach", "扫描支付"); //附加数据 data.SetValue("out_trade_no", order.OrderNo); //随机字符串 data.SetValue("total_fee", Convert.ToInt32(order.TotalPrice * 100)); //总金额 data.SetValue("time_start", DateTime.Now.ToString("yyyyMMddHHmmss")); //交易起始时间 data.SetValue("time_expire", DateTime.Now.AddMinutes(10).ToString("yyyyMMddHHmmss")); //交易结束时间 data.SetValue("goods_tag", "无"); //商品标记 data.SetValue("trade_type", "NATIVE"); //交易类型 data.SetValue("product_id", order.Source); //商品ID WxPayData result = new WxPayApi().UnifiedOrder(data); //调用统一下单接口 url = result.GetValue("code_url") == null ? "" : result.GetValue("code_url").ToString(); //获得统一下单接口返回的二维码链接 } else if (Request.Params["orderno"] != null) { int num = 0; if (string.IsNullOrEmpty(Request.Params["orderno"])) { Response.Write("{\"st\":" + num + "}"); Response.End(); } else { num = nvbo.GetOrderByoderNo(Request.Params["orderno"]); Response.Write("{\"st\":" + num + "}"); Response.End(); } } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if ((Request.QueryString["FromUserName"] != null || Session["FromUserName"] != null) && (Request.QueryString["ToUserName"] != null || Session["ToUserName"] != null)) { string user = Request.QueryString["FromUserName"] == null ? Session["FromUserName"].ToString() : Request.QueryString["FromUserName"].ToString(); string user2 = Request.QueryString["ToUserName"] == null ? Session["ToUserName"].ToString() : Request.QueryString["ToUserName"].ToString(); Session["FromUserName"] = user; Session["ToUserName"] = user2; } if (Request.Params["para"] == null) { //BaseLoad(); Response.Write(" <input type='hidden' value='" + Server.UrlEncode(AbsoluteUri) + "' id='url' />"); j = nvbo.GetJiuZhuInfo(int.Parse(Request.Params["id"] == null ? Request.Params["state"] : Request.Params["id"])); } } if (Request.QueryString["para"] != null && Request.QueryString["para"] == "tj") { Pet_JiuZhu_Info j = nvbo.GetJiuZhuInfo(int.Parse(Request.Params["iid"])); if (j != null && j.EndTime < DateTime.Now) { Response.Write("{\"err_code\":\"" + "本次救助已结束,请救助其他项目" + "\",\"st\":1}"); Response.End(); } else { Pet_XXL_Order order = new Pet_XXL_Order(); order.CreateTime = DateTime.Now; order.GoodsName = "爱宠筹 - 为爱筹"; //order.Num = 1; order.OrderState = 0; order.OutOrderNo = ""; order.Source = int.Parse(Request.Params["iid"]);//来源 自己平台 order.CatSource = 0; order.PetSource = 0; order.PayType = Request.Params["zf"] == "微信支付" ? 1 : 2; //order.PostPrice = 0; order.UnitPrice = decimal.Parse(Request.Params["txtnum"]); order.TotalPrice = order.UnitPrice; //order.YNum = 0; //order.WNum = order.Num; order.CourierRemark = Request.Params["remark"]; order.Remark = "0"; order.UrlPara = int.Parse(Request.Params["p"] ?? "1"); order.iswx = int.Parse(Request.Params["iswx"]); if ((Request.QueryString["FromUserName"] != null || Session["FromUserName"] != null) && (Request.QueryString["ToUserName"] != null || Session["ToUserName"] != null)) { string user = Request.QueryString["FromUserName"] == null ? Session["FromUserName"].ToString() : Request.QueryString["FromUserName"].ToString(); string user2 = Request.QueryString["ToUserName"] == null ? Session["ToUserName"].ToString() : Request.QueryString["ToUserName"].ToString(); order.FromUserName = user; order.OrderNo = DateTime.Now.ToString("yyyyMMddHHmmssffff") + new Random().Next(1000, 9999) + (order.FromUserName.Length > 10 ? order.FromUserName.Substring(order.FromUserName.Length - 6, 6) : ""); } else if (order.PayType == 1) //如果不是微信打开,并且选择微信支付,则跳转到微信二维码支付页面 { order.FromUserName = "******"; //Response.Redirect("Test.aspx?iid=" + order.Source + "&txtnum=" + order.UnitPrice + "&remark=" + order.CourierRemark); } else { order.FromUserName = "******"; //支付宝用户 order.OrderNo = DateTime.Now.ToString("yyyyMMddHHmmssffff") + new Random().Next(1000, 9999) + Guid.NewGuid().ToString().Substring(0, 6); } if (order.FromUserName == "sm") { Response.Write("{\"err_code\":\"\",\"st\":5}"); Response.End(); } else if (order.TotalPrice < 1) { Response.Write("{\"err_code\":\"支付金额最少为一元\",\"st\":1}"); Response.End(); } else { if (order.TotalPrice > 200) { order.Remark = "1"; } order.PJ = 0; if (j.JZType == 1)//配捐 { Pet_JiuZhu_PeiJuan pj = nvbo.GetPeiJuan(DateTime.Now); if (pj != null && pj.YJ < pj.PJ * 16 && order.TotalPrice >= 10 && DateTime.Now.Hour >= 10) //配捐配置不为空,并且配捐额度未满,并且捐款金额大于10元,10点开始 { Pet_JiuZhu_NotPeiJuan nt = nvbo.GetNotPeiJuan(j.ID, DateTime.Now.ToString("yyyy-MM-dd")); if (nt == null) //没有配置不参与配捐 { decimal cw = Math.Round(order.TotalPrice.Value / 6, 2); //宠物管家配捐金额 if (pj.YJ > pj.PJ * 16 / 2) //大于50%,采用随机的方式判断是否配捐 { Random r = new Random(DateTime.Now.Millisecond); int num = r.Next(0, 100); if (num % 2 == 0) //一半的概率配捐 { order.PJ = cw; } } else { order.PJ = cw; } if (order.PJ + pj.YJ > pj.PJ * 16) //如果配捐加上已捐大于额度,则配捐等于剩余额度 { order.PJ = pj.PJ * 16 - pj.YJ; } } } } int oid = nvbo.SavePetXXLOrder(order); order.ID = oid; if (order.PayType == 1) { WX(order); } else { ZFB(order); } } } //} } }