public void showDetailInfo(string orderId) { var orderBLL = new LVWEIBA.BLL.order_list(); var order = orderBLL.GetModel(orderId); string sql = ""; if (!string.IsNullOrEmpty(orderId)) { sql += " and order_id='" + orderId + "'"; } var bll = new LVWEIBA.DAL.order_Mx(); DataTable list = bll.GetDataMixedWithSpot(" 1=1 " + sql).Tables[0]; foreach (DataRow dr in list.Rows) { //状态 orderStateDB = order.order_zt; orderState = DealState(order.order_zt); //商品Id if (dr["productNum"] != null) { goodId = dr["productNum"].ToString(); } //sDate if (dr["BeginTime"] != null) { startDate = Convert.ToDateTime(dr["BeginTime"]).ToString("yyyy年MM月dd号"); } else { endDate = Convert.ToDateTime(dr["EndTime"]).ToString("yyyy年MM月dd号"); } if (orderStateDB != "DZF") { //线路负责人 if (dr["Master"] != null) { ticketMaster = dr["Master"].ToString() + " " + dr["MasterTel"].ToString(); } } //票数 ticketCount = dr["ProCount"].ToString(); marketPrice = dr["market_price"].ToString(); transferPrice = dr["Transaction_price"].ToString(); } }
protected void Page_Load(object sender, EventArgs e) { SortedDictionary <string, string> sPara = GetRequestPost(); if (sPara.Count > 0)//判断是否有带返回参数 { Notify aliNotify = new Notify(); bool verifyResult = aliNotify.Verify(sPara, Request.Form["notify_id"], Request.Form["sign"]); if (verifyResult)//验证成功 { ///////////////////////////////////////////////////////////////////////////////////////////////////////////// //请在这里加上商户的业务逻辑程序代码 //——请根据您的业务逻辑来编写程序(以下代码仅作参考)—— //获取支付宝的通知返回参数,可参考技术文档中服务器异步通知参数列表 //商户订单号 openId = Request.Form["body"]; string out_trade_no = Request.Form["out_trade_no"]; //支付宝交易号 string trade_no = Request.Form["trade_no"]; //交易状态 string trade_status = Request.Form["trade_status"]; //总额 string total_fee = Request.Form["total_fee"]; if (Request.Form["trade_status"] == "TRADE_FINISHED") { // } else if (Request.Form["trade_status"] == "TRADE_SUCCESS") { BaseClass.Dal.ChongzhiLog sl = new BaseClass.Dal.ChongzhiLog(); bool isOrderValid = sl.CZisok(out_trade_no, openId); log4netHelper.WriteDebugLog(typeof(notify_url), "订单notify", "订单号:" + out_trade_no + "处理状态:" + isOrderValid); if (isOrderValid) { string mid = openId; decimal money = decimal.Parse(total_fee) / 100; LVWEIBA.DAL.order_list oodd = new LVWEIBA.DAL.order_list(); LVWEIBA.Model.order_list oom = oodd.GetModel(out_trade_no); if (oom.order_zt != "DCX") { //正式状态 oom.order_zt = "DCX"; oodd.Update(oom); //发送短信通知用户和商户 var orderMx = new LVWEIBA.DAL.order_Mx().GetModel(out_trade_no); var member = new LVWEIBA.BLL.MemberInfo().GetModel(mid); //发送短信通知用户和商户(判断是门票还是尾单) if (orderMx.ProType != null && (orderMx.ProType.Equals("DZP") || orderMx.ProType.Equals("ZZP"))) { var bll = new LVWEIBA.DAL.ProviderSpot(); LVWEIBA.Model.ProviderSpot providerSpot = bll.GetModel(int.Parse(orderMx.productNum)); LVWEIBA.MessageService.NotifyUsersTicket(member.Tel, providerSpot.MasterTel, orderMx); providerSpot.Num = providerSpot.Num - orderMx.ProCount; bll.Update(providerSpot); log4netHelper.WriteDebugLog(typeof(notify_url), "订单notify", "修改余量: productNum is:" + orderMx.productNum + "TicketCount is:" + providerSpot.Num); } else { LVWEIBA.Model.LvULines lvModel = new LVWEIBA.DAL.LvULines().GetModel(orderMx.productNum); LVWEIBA.MessageService.NotifyUsers(member.Tel, lvModel.LineMasterMoble, orderMx); //修改线路余量 LVWEIBA.BLL.LvULines lvubLL = new LVWEIBA.BLL.LvULines(); if (lvModel != null) { lvModel.adultTicketCount = lvModel.adultTicketCount - orderMx.adultCount; lvModel.puppyTicketCount = lvModel.puppyTicketCount - orderMx.puppyCount; lvubLL.Update(lvModel); log4netHelper.WriteDebugLog(typeof(notify_url), "订单notify", "修改余量: productNum is:" + orderMx.productNum); } } } } } //——请根据您的业务逻辑来编写程序(以上代码仅作参考)—— Response.Write("success"); //请不要修改或删除 ///////////////////////////////////////////////////////////////////////////////////////////////////////////// } else//验证失败 { string out_trade_no = Request.Form["out_trade_no"]; moneyUnFreeze(out_trade_no, openId); couponUnUse(out_trade_no); Response.Write("fail"); } } else { Response.Write("无通知参数"); } }
public void showDetailInfo(string orderId) { var orderBLL = new LVWEIBA.BLL.order_list(); var order = orderBLL.GetModel(orderId); string sql = ""; if (!string.IsNullOrEmpty(orderId)) { sql += " and order_id='" + orderId + "'"; } var bll = new LVWEIBA.DAL.order_Mx(); DataTable list = bll.GetList(" 1=1 " + sql).Tables[0]; foreach (DataRow dr in list.Rows) { //状态 orderStateDB = order.order_zt; orderState = DealState(order.order_zt); //商品Id if (dr["productNum"] != null) { goodId = dr["productNum"].ToString(); } //sDate if (dr["Sdate"] != null) { startDate = dr["Sdate"].ToString(); } if (orderStateDB != "DZF") { //供应商 if (dr["Provider"] != null) { provider = dr["Provider"].ToString(); } //线路负责人 if (dr["LineMaster"] != null) { lineMaster = dr["LineMaster"].ToString() + " " + dr["LineMasterMoble"].ToString(); } //导游 if (dr["Leader"] != null) { leader = dr["Leader"].ToString() + " " + dr["LeaderMobil"].ToString(); } //集合时间 if (dr["JIheTime"] != null) { jeHeTime = dr["JIheTime"].ToString(); } if (dr["JiHePlace"] != null) { jeHePlace = dr["JiHePlace"].ToString(); } } //人数 member = dr["adultCount"].ToString() + "成人" + dr["puppyCount"] + "儿童"; marketPrice = dr["market_price"].ToString(); transferPrice = dr["Transaction_price"].ToString(); } }
protected void Page_Load(object sender, EventArgs e) { int lineid = (string.IsNullOrEmpty(Request.QueryString["lineid"]) ? 0 : int.Parse(Request.QueryString["lineid"])); UserAuthorizationModel userInfo = UserAuthorization.userLogin(this.Page); if (userInfo.openId == null || userInfo.openId == "") { openid = userInfo.mobile; } else { openid = userInfo.openId; } string oid = Request.QueryString["ddbm"]; log4netHelper.WriteDebugLog(typeof(index_indent_pay), "indent_pay", "进入支付 orderid is:" + oid + "用户Id:" + openid); LVWEIBA.Model.order_list oom = new LVWEIBA.Model.order_list(); oom = new LVWEIBA.DAL.order_list().GetModel(oid); LVWEIBA.Model.order_Mx omm = new LVWEIBA.DAL.order_Mx().GetModel(oid); string typeObject = omm.ProType; if (!String.IsNullOrEmpty(typeObject)) { if (typeObject.Equals("DZP")) { type = "mp"; } else { type = "wd"; } } //BaseClass.Common.LoggerUtil.printLog("type is:" + type); shichangjia = omm.market_price.ToString(); youhuijia = omm.Transaction_price.ToString(); LVWEIBA.Model.MemberList mmm = new LVWEIBA.Model.MemberList(); mmm = new LVWEIBA.DAL.MemberList().GetModel(openid); if (mmm == null) { moneyLeft = "0.00"; } else { moneyLeft = mmm.Money.ToString(); } LVWEIBA.DAL.LvULines dallines = new LVWEIBA.DAL.LvULines(); LVWEIBA.Model.LvULines mlines = dallines.GetModel(omm.productNum); //根据订单明细的线路编号获取线路的类别 if ((mlines != null && mlines.Kindof.Equals("jianhang")) || type.Equals("mp")) //建行分期或门票 { HiddenFieldchctt.Value = omm.Transaction_price.ToString().Replace(".", ""); Label1.Text = omm.Transaction_price.ToString();//优惠价 lbl_scsm.Text = ""; lbl_yhsm.Text = "(支付时直接按优惠价价支付)"; type = "jh"; } else { lbl_scsm.Text = "(支付时按市场价支付)"; lbl_yhsm.Text = "(返还差价之后的实际成交价)"; lbl_zyts.Text = @" 重要提示:该产品按市场价支付,旅行结束后48小时内 驴尾巴网将差价返还至会员现金账户,会员可自由选择提现 或二次消费。"; HiddenFieldchctt.Value = omm.market_price.ToString().Replace(".", ""); Label1.Text = omm.market_price.ToString();//市场价 } if (type == null) { type = "default"; } HUserHostAddress = Page.Request.UserHostAddress; //HiddenFieldchctt.Value = omm.Transaction_price.ToString().Replace(".", ""); //Label1.Text = omm.Transaction_price.ToString(); this.hid_order_id.Value = oid; this.hid_order_type.Value = type; }
protected void Page_Load(object sender, EventArgs e) { SortedDictionary <string, string> sPara = GetRequestGet(); if (sPara.Count > 0)//判断是否有带返回参数 { Notify aliNotify = new Notify(); // bool verifyResult = aliNotify.Verify(sPara, Request.QueryString["notify_id"], Request.QueryString["sign"]); bool verifyResult = true; if (verifyResult)//验证成功 { ///////////////////////////////////////////////////////////////////////////////////////////////////////////// //请在这里加上商户的业务逻辑程序代码 //——请根据您的业务逻辑来编写程序(以下代码仅作参考)—— //获取支付宝的通知返回参数,可参考技术文档中页面跳转同步通知参数列表 //商户订单号 string out_trade_no = Request.QueryString["out_trade_no"]; //支付宝交易号 string trade_no = Request.QueryString["trade_no"]; //交易状态 string trade_status = Request.QueryString["trade_status"]; string openId = Request.QueryString["body"]; //总额 string total_fee = Request.QueryString["total_fee"]; if (Request.QueryString["trade_status"] == "TRADE_FINISHED" || Request.QueryString["trade_status"] == "TRADE_SUCCESS") { //判断该笔订单是否在商户网站中已经做过处理 //如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序 //如果有做过处理,不执行商户的业务程序 try { BaseClass.Dal.ChongzhiLog sl = new BaseClass.Dal.ChongzhiLog(); bool isOrderValid = sl.CZisok(out_trade_no, openId); log4netHelper.WriteDebugLog(typeof(return_url), "订单notify", "订单号:" + out_trade_no + "处理状态:" + isOrderValid); LVWEIBA.DAL.order_list oodd = new LVWEIBA.DAL.order_list(); LVWEIBA.Model.order_list order = oodd.GetModel(out_trade_no); var isOrder = order != null && order.user_id == openId; if (isOrderValid || isOrder) { string mid = openId; decimal money = decimal.Parse(total_fee) / 100; LVWEIBA.Model.order_list oom = oodd.GetModel(out_trade_no); //正式状态 oom.order_zt = "DCX"; oodd.Update(oom); //发送短信通知用户和商户 var orderMx = new LVWEIBA.DAL.order_Mx().GetModel(out_trade_no); var member = new LVWEIBA.BLL.MemberInfo().GetModel(mid); //发送短信通知用户和商户(判断是门票还是尾单) if (orderMx.ProType != null && (orderMx.ProType.Equals("DZP") || orderMx.ProType.Equals("ZZP"))) { var bll = new LVWEIBA.DAL.ProviderSpot(); LVWEIBA.Model.ProviderSpot providerSpot = bll.GetModel(int.Parse(orderMx.productNum)); LVWEIBA.MessageService.NotifyUsersTicket(member.Tel, providerSpot.MasterTel, orderMx); providerSpot.Num = providerSpot.Num - orderMx.ProCount; bll.Update(providerSpot); log4netHelper.WriteDebugLog(typeof(return_url), "订单return", "修改余量: productNum is:" + orderMx.productNum + "TicketCount is:" + providerSpot.Num); } else { LVWEIBA.Model.LvULines lvModel = new LVWEIBA.DAL.LvULines().GetModel(orderMx.productNum); LVWEIBA.MessageService.NotifyUsers(member.Tel, lvModel.LineMasterMoble, orderMx); //修改线路余量 LVWEIBA.BLL.LvULines lvubLL = new LVWEIBA.BLL.LvULines(); if (lvModel != null) { lvModel.adultTicketCount = lvModel.adultTicketCount - orderMx.adultCount; lvModel.puppyTicketCount = lvModel.puppyTicketCount - orderMx.puppyCount; lvubLL.Update(lvModel); log4netHelper.WriteDebugLog(typeof(return_url), "订单return", "修改余量: productNum is:" + orderMx.productNum); } } } } catch (Exception) { moneyUnFreeze(out_trade_no, openId); couponUnUse(out_trade_no); } Response.Redirect("http://wx.lvwei8.com/index/indent_show.aspx?order_id=" + out_trade_no); } else { Response.Write("trade_status=" + Request.QueryString["trade_status"]); } //——请根据您的业务逻辑来编写程序(以上代码仅作参考)—— ///////////////////////////////////////////////////////////////////////////////////////////////////////////// } else//验证失败 { Response.Write("验证失败"); } } else { Response.Write("无返回参数"); } }
protected void Page_Load(object sender, EventArgs e) { string postStr = ""; TXT_Help th = new TXT_Help(); if (Request.HttpMethod.ToLower() == "post") { Stream s = System.Web.HttpContext.Current.Request.InputStream; byte[] b = new byte[s.Length]; s.Read(b, 0, (int)s.Length); postStr = Encoding.UTF8.GetString(b); XmlHelp xh = new XmlHelp(); SortedDictionary <string, string> sParams = xh.GetInfoFromXml(postStr); try { if (sParams["return_code"].ToString() == "SUCCESS") { BaseClass.Dal.ChongzhiLog sl = new BaseClass.Dal.ChongzhiLog(); bool isOrderValid = sl.CZisok(sParams["out_trade_no"].ToString(), sParams["openid"].ToString()); BaseClass.Common.LoggerUtil.printLog("订单:" + sParams["out_trade_no"].ToString() + "处理状态:" + isOrderValid); if (isOrderValid) { string mid = sParams["openid"].ToString(); decimal money = decimal.Parse(sParams["cash_fee"].ToString()) / 100; LVWEIBA.DAL.order_list oodd = new LVWEIBA.DAL.order_list(); LVWEIBA.Model.order_list oom = oodd.GetModel(sParams["out_trade_no"].ToString()); //正式状态 oom.order_zt = "DCX"; oodd.Update(oom); //发送短信通知用户和商户 var orderMx = new LVWEIBA.DAL.order_Mx().GetModel(sParams["out_trade_no"].ToString()); var member = new LVWEIBA.BLL.MemberInfo().GetModel(mid); //发送短信通知用户和商户(判断是门票还是尾单) if (orderMx.ProType != null && (orderMx.ProType.Equals("DZP") || orderMx.ProType.Equals("ZZP"))) { var bll = new LVWEIBA.DAL.ProviderSpot(); LVWEIBA.Model.ProviderSpot providerSpot = bll.GetModel(int.Parse(orderMx.productNum)); LVWEIBA.MessageService.NotifyUsersTicket(member.Tel, providerSpot.MasterTel, orderMx); providerSpot.Num = providerSpot.Num - orderMx.ProCount; bll.Update(providerSpot); BaseClass.Common.LoggerUtil.printLog("修改余量: productNum is:" + orderMx.productNum + "TicketCount is:" + providerSpot.Num); } else { LVWEIBA.Model.LvULines lvModel = new LVWEIBA.DAL.LvULines().GetModel(orderMx.productNum); LVWEIBA.MessageService.NotifyUsers(member.Tel, lvModel.LineMasterMoble, orderMx); //修改线路余量 LVWEIBA.BLL.LvULines lvubLL = new LVWEIBA.BLL.LvULines(); if (lvModel != null) { lvModel.adultTicketCount = lvModel.adultTicketCount - orderMx.adultCount; lvModel.puppyTicketCount = lvModel.puppyTicketCount - orderMx.puppyCount; lvubLL.Update(lvModel); BaseClass.Common.LoggerUtil.printLog("修改余量: productNum is:" + orderMx.productNum + "adultTicketCount is:" + lvModel.adultTicketCount + "puppyTicketCount is:" + lvModel.puppyTicketCount); } } //返回成功 Response.Write(returnOKMessage()); } else { th.ReFreshTXT(postStr, "D:\\msg\\zhifuErr\\", "错误CZ" + DateTime.Now.ToString("yyMMddHHmmssff") + ".txt"); Response.Write(returnFailMessage()); } } else { //一系列还原操作 moneyUnFreeze(sParams["out_trade_no"].ToString(), sParams["openid"].ToString()); couponUnUse(sParams["out_trade_no"].ToString()); Response.Write(returnFailMessage()); } } catch (Exception ex) { BaseClass.Common.LoggerUtil.printLog("订单" + sParams["out_trade_no"].ToString() + "处理错误," + "ex:" + ex.Message + ex.StackTrace); //一系列还原操作 moneyUnFreeze(sParams["out_trade_no"].ToString(), sParams["openid"].ToString()); couponUnUse(sParams["out_trade_no"].ToString()); Response.Write(returnFailMessage()); } } }