protected void Page_Load(object sender, EventArgs e) { Login(Request.Url.ToString()); if (Request.QueryString["order"] != null) { try { ordersysno = int.Parse(Request.QueryString["order"]); } catch { ShowError(""); } } else { ShowError(""); } ORD_CashMod m_order = ORD_CashBll.GetInstance().GetModel(ordersysno); if (m_order.CustomerSysNo != GetSession().CustomerEntity.SysNo) { ShowError("");//非当前用户的订单 } orderid = m_order.OrderID; price = m_order.PayAmount.ToString("¥0.00"); PayPannel1.m_order = m_order;; PayPannel1.initial(); }
public bool SetPaySucc(ORD_CashMod m_mod) { TransactionOptions options = new TransactionOptions(); options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted; options.Timeout = TransactionManager.DefaultTimeout; using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options)) { m_mod.CurrentID = ""; m_mod.PayTime = DateTime.Now; m_mod.Status = (int)AppEnum.CashOrderStatus.succed; ORD_CashBll.GetInstance().Update(m_mod); switch (m_mod.ProductType) { case (int)AppEnum.CashOrderType.consultpay: //咨询订单 QA_OrderMod m_order = QA_OrderBll.GetInstance().GetModel(m_mod.ProductSysNo); m_order.Status = (int)AppEnum.ConsultOrderStatus.payed; QA_OrderBll.GetInstance().Update(m_order); //生成收款单 if (m_mod.ProductType == (int)AppEnum.CashOrderType.consultpay) { ORD_CashMod rec_order = new ORD_CashMod(); QA_OrderMod tmp_order = QA_OrderBll.GetInstance().GetModel(m_mod.ProductSysNo); rec_order.CustomerSysNo = tmp_order.CustomerSysNo; rec_order.CurrentID = ""; rec_order.Discount = 1 - AppConst.ConsultDiscount; rec_order.PayAmount = m_mod.Price * rec_order.Discount; rec_order.PayType = m_mod.PayType; rec_order.Price = m_mod.Price; rec_order.ProductSysNo = m_mod.SysNo; rec_order.Status = (int)AppEnum.CashOrderStatus.confirming; rec_order.ProductType = (int)AppEnum.CashOrderType.consultget; rec_order.TS = DateTime.Now; rec_order.OrderID = "C" + m_mod.ProductType.ToString("0") + DateTime.Now.ToString("yyyyMMdd") + m_mod.ProductSysNo + CommonTools.ThrowRandom(0, 99999).ToString("00000"); rec_order.SysNo = ORD_CashBll.GetInstance().Add(rec_order); } //修改咨询购买数 QA_QuestionMod m_quest = new QA_QuestionMod(); m_quest = QA_QuestionBll.GetInstance().GetModel(m_order.QuestionSysNo); m_quest.BuyCount++; QA_QuestionBll.GetInstance().Update(m_quest); break; } scope.Complete(); return(true); } }
/// <summary> /// 增加一条数据 /// </summary> public int Add(ORD_CashMod model) { return(dal.Add(model)); }
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e) { Login(Request.Url.ToString()); if (e.CommandName == "Love") { if (!CheckCommentCookies(int.Parse(e.CommandArgument.ToString()))) { QA_AnswerMod m_answer = QA_AnswerBll.GetInstance().GetModel(int.Parse(e.CommandArgument.ToString())); m_answer.Love++; QA_AnswerBll.GetInstance().Update(m_answer); SetCommentCookies(int.Parse(e.CommandArgument.ToString())); ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addlove", "alert('您对该回答表示了赞同!');", true); BindList(); } else { ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addlove", "alert('您已对该回答发表了看法!');", true); } } else if (e.CommandName == "Hate") { if (!CheckCommentCookies(int.Parse(e.CommandArgument.ToString()))) { QA_AnswerMod m_answer = QA_AnswerBll.GetInstance().GetModel(int.Parse(e.CommandArgument.ToString())); m_answer.Hate++; QA_AnswerBll.GetInstance().Update(m_answer); SetCommentCookies(int.Parse(e.CommandArgument.ToString())); ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addhate", "alert('您对该回答表示了不赞同!');", true); BindList(); } else { ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addlove", "alert('您已对该回答发表了看法!');", true); } } //else if (e.CommandName == "Award") //{ // QA_QuestionMod m_quest = QA_QuestionBll.GetInstance().GetModel(SysNo); // int usedAward = QA_AnswerBll.GetInstance().GetUsedAward(SysNo); // ltrMax.Text = "该问题的总悬赏积分为:" + (m_quest.Award - usedAward).ToString(); // HiddenField1.Value = e.CommandArgument.ToString(); // ModalPopupExtender1.Show(); //} else if (e.CommandName == "Reply") { if (((TextBox)e.Item.FindControl("txtRe")).Text.Trim() == "") { ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addComment", "alert('请输入您的回复信息!');", true); return; } try { QA_CommentMod m_comment = new QA_CommentMod(); m_comment.AnswerSysNo = int.Parse(e.CommandArgument.ToString()); m_comment.Context = AppCmn.CommonTools.SystemInputFilter(((TextBox)e.Item.FindControl("txtRe")).Text.Trim()); m_comment.DR = (int)AppEnum.State.normal; m_comment.QuestionSysNo = SysNo; m_comment.TS = DateTime.Now; m_comment.CustomerSysNo = GetSession().CustomerEntity.SysNo; QA_CommentBll.GetInstance().AddComment(m_comment); RefreshSession(); ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addComment", "alert('发表看法成功!');", true); } catch { ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addComment", "alert('系统故障,请联系管理员');", true); } BindList(); } else if (e.CommandName == "Del") { QA_AnswerMod m_answer = QA_AnswerBll.GetInstance().GetModel(int.Parse(e.CommandArgument.ToString())); m_answer.DR = (int)AppEnum.State.deleted; QA_AnswerBll.GetInstance().Update(m_answer); ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addhate", "alert('成功删除该回答!');", true); BindList(); } else if (e.CommandName == "buy") { //生成订单 QA_OrderMod m_order = QA_OrderBll.GetInstance().GetModel(int.Parse(e.CommandArgument.ToString())); ORD_CashMod m_mod = new ORD_CashMod(); m_mod.CustomerSysNo = GetSession().CustomerEntity.SysNo; m_mod.CurrentID = ""; m_mod.Discount = 0; m_mod.PayAmount = m_order.Price; m_mod.PayType = AppConst.IntNull; m_mod.Price = m_order.Price; m_mod.ProductSysNo = m_order.SysNo; m_mod.Status = (int)AppEnum.CashOrderStatus.beforepay; m_mod.ProductType = (int)AppEnum.CashOrderType.consultpay;; m_mod.TS = DateTime.Now; m_mod.OrderID = "C" + m_mod.ProductType.ToString("0") + m_mod.TS.ToString("yyyyMMdd") + m_mod.ProductSysNo + CommonTools.ThrowRandom(0, 99999).ToString("00000"); m_mod.SysNo = ORD_CashBll.GetInstance().Add(m_mod); //m_qustion.BuyCount++;//支付成功后修改订单购买数 QA_QuestionBll.GetInstance().Update(m_qustion); Response.Redirect(AppConfig.HomeUrl() + "Order/ConsultOrder.aspx?order=" + m_mod.SysNo); } else if (e.CommandName == "score") { string score = ((HiddenField)e.Item.FindControl("HiddenField3")).Value; if (score == "") { ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "score", "alert('请先选择评价!');", true); return; } else { QA_OrderMod m_order = QA_OrderBll.GetInstance().GetModel(int.Parse(e.CommandArgument.ToString())); m_order.Score = int.Parse(score); m_order.Status = (int)AppEnum.ConsultOrderStatus.confirmed; QA_OrderBll.GetInstance().Update(m_order); ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "score", "alert('已评价成功!');", true); BindList(); } } }
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)//验证成功 { ///////////////////////////////////////////////////////////////////////////////////////////////////////////// //请在这里加上商户的业务逻辑程序代码 //——请根据您的业务逻辑来编写程序(以下代码仅作参考)—— //获取支付宝的通知返回参数,可参考技术文档中服务器异步通知参数列表 //商户订单号 string out_trade_no = Request.Form["out_trade_no"]; orderID = out_trade_no; //支付宝交易号 string trade_no = Request.Form["trade_no"]; //交易状态 string trade_status = Request.Form["trade_status"]; if (Request.Form["trade_status"] == "TRADE_FINISHED" || Request.Form["trade_status"] == "TRADE_SUCCESS") { succ = true; if (out_trade_no.Contains("C")) { ordertype = 1; } else if (out_trade_no.Contains("P")) { ordertype = 2; } ORD_CashMod m_mod = ORD_CashBll.GetInstance().GetModelByOrderID(out_trade_no); if (m_mod == null) { ShowError("");//订单号错误 } if (m_mod.Status == (int)AppEnum.CashOrderStatus.beforepay) { m_mod.CurrentID = trade_no;//记录支付流水号 ORD_CashBll.GetInstance().SetPaySucc(m_mod); } //判断该笔订单是否在商户网站中已经做过处理 //如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序 //如果有做过处理,不执行商户的业务程序 //注意: //该种交易状态只在两种情况下出现 //1、开通了普通即时到账,买家付款成功后。 //2、开通了高级即时到账,从该笔交易成功时间算起,过了签约时的可退款时限(如:三个月以内可退款、一年以内可退款等)后。 } //else if (Request.Form["trade_status"] == "TRADE_SUCCESS") //{ // //判断该笔订单是否在商户网站中已经做过处理 // //如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序 // //如果有做过处理,不执行商户的业务程序 // //注意: // //该种交易状态只在一种情况下出现——开通了高级即时到账,买家付款成功后。 //} else { LogManagement.getInstance().WriteTrace("订单" + orderID + "支付宝返回" + Request.QueryString["trade_status"], "PayReturnForAlipay", base.Request.UserHostAddress); } //——请根据您的业务逻辑来编写程序(以上代码仅作参考)—— Response.Write("success"); //请不要修改或删除 ///////////////////////////////////////////////////////////////////////////////////////////////////////////// } else//验证失败 { Response.Write("fail"); } } else { Response.Write("无通知参数"); } }
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e) { Login(Request.Url.ToString()); if (e.CommandName == "Love") { if (!CheckCommentCookies(int.Parse(e.CommandArgument.ToString()))) { QA_AnswerMod m_answer = QA_AnswerBll.GetInstance().GetModel(int.Parse(e.CommandArgument.ToString())); m_answer.Love++; QA_AnswerBll.GetInstance().Update(m_answer); SetCommentCookies(int.Parse(e.CommandArgument.ToString())); ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addlove", "alert('您对该回答表示了赞同!');", true); BindList(); } else { ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addlove", "alert('您已对该回答发表了看法!');", true); } } else if (e.CommandName == "Hate") { if (!CheckCommentCookies(int.Parse(e.CommandArgument.ToString()))) { QA_AnswerMod m_answer = QA_AnswerBll.GetInstance().GetModel(int.Parse(e.CommandArgument.ToString())); m_answer.Hate++; QA_AnswerBll.GetInstance().Update(m_answer); SetCommentCookies(int.Parse(e.CommandArgument.ToString())); ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addhate", "alert('您对该回答表示了不赞同!');", true); BindList(); } else { ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addlove", "alert('您已对该回答发表了看法!');", true); } } //else if (e.CommandName == "Award") //{ // QA_QuestionMod m_quest = QA_QuestionBll.GetInstance().GetModel(SysNo); // int usedAward = QA_AnswerBll.GetInstance().GetUsedAward(SysNo); // ltrMax.Text = "该问题的总悬赏积分为:" + (m_quest.Award - usedAward).ToString(); // HiddenField1.Value = e.CommandArgument.ToString(); // ModalPopupExtender1.Show(); //} else if (e.CommandName == "Reply") { if (((TextBox)e.Item.FindControl("txtRe")).Text.Trim() == "") { ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addComment", "alert('请输入您的回复信息!');", true); return; } try { QA_CommentMod m_comment = new QA_CommentMod(); m_comment.AnswerSysNo = int.Parse(e.CommandArgument.ToString()); m_comment.Context = AppCmn.CommonTools.SystemInputFilter(((TextBox)e.Item.FindControl("txtRe")).Text.Trim()); m_comment.DR = (int)AppEnum.State.normal; m_comment.QuestionSysNo = SysNo; m_comment.TS = DateTime.Now; m_comment.CustomerSysNo = GetSession().CustomerEntity.SysNo; QA_CommentBll.GetInstance().AddComment(m_comment); RefreshSession(); ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addComment", "alert('发表看法成功!');", true); } catch { ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addComment", "alert('系统故障,请联系管理员');", true); } BindList(); } else if (e.CommandName == "Del") { QA_AnswerMod m_answer = QA_AnswerBll.GetInstance().GetModel(int.Parse(e.CommandArgument.ToString())); m_answer.DR = (int)AppEnum.State.deleted; QA_AnswerBll.GetInstance().Update(m_answer); ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "addhate", "alert('成功删除该回答!');", true); BindList(); } else if (e.CommandName == "buy") { //生成订单 QA_OrderMod m_order = QA_OrderBll.GetInstance().GetModel(int.Parse(e.CommandArgument.ToString())); ORD_CashMod m_mod = new ORD_CashMod(); m_mod.CustomerSysNo = GetSession().CustomerEntity.SysNo; m_mod.CurrentID = ""; m_mod.Discount = 0; m_mod.PayAmount = m_order.Price; m_mod.PayType = AppConst.IntNull; m_mod.Price = m_order.Price; m_mod.ProductSysNo = m_order.SysNo; m_mod.Status = (int)AppEnum.CashOrderStatus.beforepay; m_mod.ProductType = (int)AppEnum.CashOrderType.consultpay; ; m_mod.TS = DateTime.Now; m_mod.OrderID = "C" + m_mod.ProductType.ToString("0") + m_mod.TS.ToString("yyyyMMdd") + m_mod.ProductSysNo+CommonTools.ThrowRandom(0,99999).ToString("00000"); m_mod.SysNo = ORD_CashBll.GetInstance().Add(m_mod); //m_qustion.BuyCount++;//支付成功后修改订单购买数 QA_QuestionBll.GetInstance().Update(m_qustion); Response.Redirect(AppConfig.HomeUrl() + "Order/ConsultOrder.aspx?order=" + m_mod.SysNo); } else if (e.CommandName == "score") { string score = ((HiddenField)e.Item.FindControl("HiddenField3")).Value; if (score == "") { ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "score", "alert('请先选择评价!');", true); return; } else { QA_OrderMod m_order = QA_OrderBll.GetInstance().GetModel(int.Parse(e.CommandArgument.ToString())); m_order.Score = int.Parse(score); m_order.Status = (int)AppEnum.ConsultOrderStatus.confirmed; QA_OrderBll.GetInstance().Update(m_order); ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "score", "alert('已评价成功!');", true); BindList(); } } }
/// <summary> /// 得到一个对象实体 /// </summary> public ORD_CashMod GetModel(int SysNo) { StringBuilder strSql = new StringBuilder(); strSql.Append("select SysNo, CustomerSysNo, ProductType, ProductSysNo, Price, PayType, Discount, PayAmount, TS, Status, OrderID, CurrentID, PayTime from dbo.ORD_Cash"); strSql.Append(" where SysNo=@SysNo "); SqlParameter[] parameters = { new SqlParameter("@SysNo", SqlDbType.Int, 4) }; parameters[0].Value = SysNo; ORD_CashMod model = new ORD_CashMod(); DataSet ds = SqlHelper.ExecuteDataSet(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["SysNo"].ToString() != "") { model.SysNo = int.Parse(ds.Tables[0].Rows[0]["SysNo"].ToString()); } if (ds.Tables[0].Rows[0]["CustomerSysNo"].ToString() != "") { model.CustomerSysNo = int.Parse(ds.Tables[0].Rows[0]["CustomerSysNo"].ToString()); } if (ds.Tables[0].Rows[0]["ProductType"].ToString() != "") { model.ProductType = int.Parse(ds.Tables[0].Rows[0]["ProductType"].ToString()); } if (ds.Tables[0].Rows[0]["ProductSysNo"].ToString() != "") { model.ProductSysNo = int.Parse(ds.Tables[0].Rows[0]["ProductSysNo"].ToString()); } if (ds.Tables[0].Rows[0]["Price"].ToString() != "") { model.Price = decimal.Parse(ds.Tables[0].Rows[0]["Price"].ToString()); } if (ds.Tables[0].Rows[0]["PayType"].ToString() != "") { model.PayType = int.Parse(ds.Tables[0].Rows[0]["PayType"].ToString()); } if (ds.Tables[0].Rows[0]["Discount"].ToString() != "") { model.Discount = decimal.Parse(ds.Tables[0].Rows[0]["Discount"].ToString()); } if (ds.Tables[0].Rows[0]["PayAmount"].ToString() != "") { model.PayAmount = decimal.Parse(ds.Tables[0].Rows[0]["PayAmount"].ToString()); } if (ds.Tables[0].Rows[0]["TS"].ToString() != "") { model.TS = DateTime.Parse(ds.Tables[0].Rows[0]["TS"].ToString()); } if (ds.Tables[0].Rows[0]["Status"].ToString() != "") { model.Status = int.Parse(ds.Tables[0].Rows[0]["Status"].ToString()); } model.OrderID = ds.Tables[0].Rows[0]["OrderID"].ToString(); model.CurrentID = ds.Tables[0].Rows[0]["CurrentID"].ToString(); if (ds.Tables[0].Rows[0]["PayTime"].ToString() != "") { model.PayTime = DateTime.Parse(ds.Tables[0].Rows[0]["PayTime"].ToString()); } return(model); } else { return(null); } }
/// <summary> /// 更新一条数据 /// </summary> public void Update(ORD_CashMod model) { dal.Update(model); }
/// <summary> /// 增加一条数据 /// </summary> public int Add(ORD_CashMod model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into ORD_Cash("); strSql.Append("CustomerSysNo,ProductType,ProductSysNo,Price,PayType,Discount,PayAmount,TS,Status,OrderID,CurrentID,PayTime)"); strSql.Append(" values ("); strSql.Append("@CustomerSysNo,@ProductType,@ProductSysNo,@Price,@PayType,@Discount,@PayAmount,@TS,@Status,@OrderID,@CurrentID,@PayTime)"); strSql.Append(";select @@IDENTITY"); SqlCommand cmd = new SqlCommand(strSql.ToString()); SqlParameter[] parameters = { new SqlParameter("@CustomerSysNo",SqlDbType.Int,4), new SqlParameter("@ProductType",SqlDbType.Int,4), new SqlParameter("@ProductSysNo",SqlDbType.Int,4), new SqlParameter("@Price",SqlDbType.Decimal,20), new SqlParameter("@PayType",SqlDbType.Int,4), new SqlParameter("@Discount",SqlDbType.Decimal,20), new SqlParameter("@PayAmount",SqlDbType.Decimal,20), new SqlParameter("@TS",SqlDbType.DateTime), new SqlParameter("@Status",SqlDbType.Int,4), new SqlParameter("@OrderID",SqlDbType.VarChar,50), new SqlParameter("@CurrentID",SqlDbType.VarChar,50), new SqlParameter("@PayTime",SqlDbType.DateTime), }; if (model.CustomerSysNo != AppConst.IntNull) parameters[0].Value = model.CustomerSysNo; else parameters[0].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[0]); if (model.ProductType != AppConst.IntNull) parameters[1].Value = model.ProductType; else parameters[1].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[1]); if (model.ProductSysNo != AppConst.IntNull) parameters[2].Value = model.ProductSysNo; else parameters[2].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[2]); if (model.Price != AppConst.DecimalNull) parameters[3].Value = model.Price; else parameters[3].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[3]); if (model.PayType != AppConst.IntNull) parameters[4].Value = model.PayType; else parameters[4].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[4]); if (model.Discount != AppConst.DecimalNull) parameters[5].Value = model.Discount; else parameters[5].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[5]); if (model.PayAmount != AppConst.DecimalNull) parameters[6].Value = model.PayAmount; else parameters[6].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[6]); if (model.TS != AppConst.DateTimeNull) parameters[7].Value = model.TS; else parameters[7].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[7]); if (model.Status != AppConst.IntNull) parameters[8].Value = model.Status; else parameters[8].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[8]); if (model.OrderID != AppConst.StringNull) parameters[9].Value = model.OrderID; else parameters[9].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[9]); if (model.CurrentID != AppConst.StringNull) parameters[10].Value = model.CurrentID; else parameters[10].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[10]); if (model.PayTime != AppConst.DateTimeNull) parameters[11].Value = model.PayTime; else parameters[11].Value = System.DBNull.Value; cmd.Parameters.Add(parameters[11]); return Convert.ToInt32(SqlHelper.ExecuteScalar(cmd, parameters)); }
/// <summary> /// 更新一条数据 /// </summary> public int Update(ORD_CashMod model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update ORD_Cash set "); SqlCommand cmd = new SqlCommand(); if (model.SysNo != AppConst.IntNull) { SqlParameter param = new SqlParameter("@SysNo", SqlDbType.Int, 4); param.Value = model.SysNo; cmd.Parameters.Add(param); } if (model.CustomerSysNo != AppConst.IntNull) { strSql.Append("CustomerSysNo=@CustomerSysNo,"); SqlParameter param = new SqlParameter("@CustomerSysNo", SqlDbType.Int, 4); param.Value = model.CustomerSysNo; cmd.Parameters.Add(param); } if (model.ProductType != AppConst.IntNull) { strSql.Append("ProductType=@ProductType,"); SqlParameter param = new SqlParameter("@ProductType", SqlDbType.Int, 4); param.Value = model.ProductType; cmd.Parameters.Add(param); } if (model.ProductSysNo != AppConst.IntNull) { strSql.Append("ProductSysNo=@ProductSysNo,"); SqlParameter param = new SqlParameter("@ProductSysNo", SqlDbType.Int, 4); param.Value = model.ProductSysNo; cmd.Parameters.Add(param); } if (model.Price != AppConst.DecimalNull) { strSql.Append("Price=@Price,"); SqlParameter param = new SqlParameter("@Price", SqlDbType.Decimal, 20); param.Value = model.Price; cmd.Parameters.Add(param); } if (model.PayType != AppConst.IntNull) { strSql.Append("PayType=@PayType,"); SqlParameter param = new SqlParameter("@PayType", SqlDbType.Int, 4); param.Value = model.PayType; cmd.Parameters.Add(param); } if (model.Discount != AppConst.DecimalNull) { strSql.Append("Discount=@Discount,"); SqlParameter param = new SqlParameter("@Discount", SqlDbType.Decimal, 20); param.Value = model.Discount; cmd.Parameters.Add(param); } if (model.PayAmount != AppConst.DecimalNull) { strSql.Append("PayAmount=@PayAmount,"); SqlParameter param = new SqlParameter("@PayAmount", SqlDbType.Decimal, 20); param.Value = model.PayAmount; cmd.Parameters.Add(param); } if (model.TS != AppConst.DateTimeNull) { strSql.Append("TS=@TS,"); SqlParameter param = new SqlParameter("@TS", SqlDbType.DateTime); param.Value = model.TS; cmd.Parameters.Add(param); } if (model.Status != AppConst.IntNull) { strSql.Append("Status=@Status,"); SqlParameter param = new SqlParameter("@Status", SqlDbType.Int, 4); param.Value = model.Status; cmd.Parameters.Add(param); } if (model.OrderID != AppConst.StringNull) { strSql.Append("OrderID=@OrderID,"); SqlParameter param = new SqlParameter("@OrderID", SqlDbType.VarChar, 50); param.Value = model.OrderID; cmd.Parameters.Add(param); } if (model.CurrentID != AppConst.StringNull) { strSql.Append("CurrentID=@CurrentID,"); SqlParameter param = new SqlParameter("@CurrentID", SqlDbType.VarChar, 50); param.Value = model.CurrentID; cmd.Parameters.Add(param); } if (model.PayTime != AppConst.DateTimeNull) { strSql.Append("PayTime=@PayTime,"); SqlParameter param = new SqlParameter("@PayTime", SqlDbType.DateTime); param.Value = model.PayTime; cmd.Parameters.Add(param); } strSql.Remove(strSql.Length - 1, 1); strSql.Append(" where SysNo=@SysNo "); cmd.CommandText = strSql.ToString(); return(SqlHelper.ExecuteNonQuery(cmd, null)); }
/// <summary> /// 更新一条数据 /// </summary> public int Update(ORD_CashMod model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update ORD_Cash set "); SqlCommand cmd = new SqlCommand(); if (model.SysNo != AppConst.IntNull) { SqlParameter param = new SqlParameter("@SysNo", SqlDbType.Int, 4); param.Value = model.SysNo; cmd.Parameters.Add(param); } if (model.CustomerSysNo != AppConst.IntNull) { strSql.Append("CustomerSysNo=@CustomerSysNo,"); SqlParameter param = new SqlParameter("@CustomerSysNo", SqlDbType.Int, 4); param.Value = model.CustomerSysNo; cmd.Parameters.Add(param); } if (model.ProductType != AppConst.IntNull) { strSql.Append("ProductType=@ProductType,"); SqlParameter param = new SqlParameter("@ProductType", SqlDbType.Int, 4); param.Value = model.ProductType; cmd.Parameters.Add(param); } if (model.ProductSysNo != AppConst.IntNull) { strSql.Append("ProductSysNo=@ProductSysNo,"); SqlParameter param = new SqlParameter("@ProductSysNo", SqlDbType.Int, 4); param.Value = model.ProductSysNo; cmd.Parameters.Add(param); } if (model.Price != AppConst.DecimalNull) { strSql.Append("Price=@Price,"); SqlParameter param = new SqlParameter("@Price", SqlDbType.Decimal, 20); param.Value = model.Price; cmd.Parameters.Add(param); } if (model.PayType != AppConst.IntNull) { strSql.Append("PayType=@PayType,"); SqlParameter param = new SqlParameter("@PayType", SqlDbType.Int, 4); param.Value = model.PayType; cmd.Parameters.Add(param); } if (model.Discount != AppConst.DecimalNull) { strSql.Append("Discount=@Discount,"); SqlParameter param = new SqlParameter("@Discount", SqlDbType.Decimal, 20); param.Value = model.Discount; cmd.Parameters.Add(param); } if (model.PayAmount != AppConst.DecimalNull) { strSql.Append("PayAmount=@PayAmount,"); SqlParameter param = new SqlParameter("@PayAmount", SqlDbType.Decimal, 20); param.Value = model.PayAmount; cmd.Parameters.Add(param); } if (model.TS != AppConst.DateTimeNull) { strSql.Append("TS=@TS,"); SqlParameter param = new SqlParameter("@TS", SqlDbType.DateTime); param.Value = model.TS; cmd.Parameters.Add(param); } if (model.Status != AppConst.IntNull) { strSql.Append("Status=@Status,"); SqlParameter param = new SqlParameter("@Status", SqlDbType.Int, 4); param.Value = model.Status; cmd.Parameters.Add(param); } if (model.OrderID != AppConst.StringNull) { strSql.Append("OrderID=@OrderID,"); SqlParameter param = new SqlParameter("@OrderID", SqlDbType.VarChar, 50); param.Value = model.OrderID; cmd.Parameters.Add(param); } if (model.CurrentID != AppConst.StringNull) { strSql.Append("CurrentID=@CurrentID,"); SqlParameter param = new SqlParameter("@CurrentID", SqlDbType.VarChar, 50); param.Value = model.CurrentID; cmd.Parameters.Add(param); } if (model.PayTime != AppConst.DateTimeNull) { strSql.Append("PayTime=@PayTime,"); SqlParameter param = new SqlParameter("@PayTime", SqlDbType.DateTime); param.Value = model.PayTime; cmd.Parameters.Add(param); } strSql.Remove(strSql.Length - 1, 1); strSql.Append(" where SysNo=@SysNo "); cmd.CommandText = strSql.ToString(); return SqlHelper.ExecuteNonQuery(cmd, null); }
/// <summary> /// 得到一个对象实体 /// </summary> public ORD_CashMod GetModel(int SysNo) { StringBuilder strSql = new StringBuilder(); strSql.Append("select SysNo, CustomerSysNo, ProductType, ProductSysNo, Price, PayType, Discount, PayAmount, TS, Status, OrderID, CurrentID, PayTime from dbo.ORD_Cash"); strSql.Append(" where SysNo=@SysNo "); SqlParameter[] parameters = { new SqlParameter("@SysNo", SqlDbType.Int,4 ) }; parameters[0].Value = SysNo; ORD_CashMod model = new ORD_CashMod(); DataSet ds = SqlHelper.ExecuteDataSet(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["SysNo"].ToString() != "") { model.SysNo = int.Parse(ds.Tables[0].Rows[0]["SysNo"].ToString()); } if (ds.Tables[0].Rows[0]["CustomerSysNo"].ToString() != "") { model.CustomerSysNo = int.Parse(ds.Tables[0].Rows[0]["CustomerSysNo"].ToString()); } if (ds.Tables[0].Rows[0]["ProductType"].ToString() != "") { model.ProductType = int.Parse(ds.Tables[0].Rows[0]["ProductType"].ToString()); } if (ds.Tables[0].Rows[0]["ProductSysNo"].ToString() != "") { model.ProductSysNo = int.Parse(ds.Tables[0].Rows[0]["ProductSysNo"].ToString()); } if (ds.Tables[0].Rows[0]["Price"].ToString() != "") { model.Price = decimal.Parse(ds.Tables[0].Rows[0]["Price"].ToString()); } if (ds.Tables[0].Rows[0]["PayType"].ToString() != "") { model.PayType = int.Parse(ds.Tables[0].Rows[0]["PayType"].ToString()); } if (ds.Tables[0].Rows[0]["Discount"].ToString() != "") { model.Discount = decimal.Parse(ds.Tables[0].Rows[0]["Discount"].ToString()); } if (ds.Tables[0].Rows[0]["PayAmount"].ToString() != "") { model.PayAmount = decimal.Parse(ds.Tables[0].Rows[0]["PayAmount"].ToString()); } if (ds.Tables[0].Rows[0]["TS"].ToString() != "") { model.TS = DateTime.Parse(ds.Tables[0].Rows[0]["TS"].ToString()); } if (ds.Tables[0].Rows[0]["Status"].ToString() != "") { model.Status = int.Parse(ds.Tables[0].Rows[0]["Status"].ToString()); } model.OrderID = ds.Tables[0].Rows[0]["OrderID"].ToString(); model.CurrentID = ds.Tables[0].Rows[0]["CurrentID"].ToString(); if (ds.Tables[0].Rows[0]["PayTime"].ToString() != "") { model.PayTime = DateTime.Parse(ds.Tables[0].Rows[0]["PayTime"].ToString()); } return model; } else { return null; } }
/// <summary> /// 增加一条数据 /// </summary> public int Add(ORD_CashMod model) { return dal.Add(model); }
/// <summary> /// 增加一条数据 /// </summary> public int Add(ORD_CashMod model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into ORD_Cash("); strSql.Append("CustomerSysNo,ProductType,ProductSysNo,Price,PayType,Discount,PayAmount,TS,Status,OrderID,CurrentID,PayTime)"); strSql.Append(" values ("); strSql.Append("@CustomerSysNo,@ProductType,@ProductSysNo,@Price,@PayType,@Discount,@PayAmount,@TS,@Status,@OrderID,@CurrentID,@PayTime)"); strSql.Append(";select @@IDENTITY"); SqlCommand cmd = new SqlCommand(strSql.ToString()); SqlParameter[] parameters = { new SqlParameter("@CustomerSysNo", SqlDbType.Int, 4), new SqlParameter("@ProductType", SqlDbType.Int, 4), new SqlParameter("@ProductSysNo", SqlDbType.Int, 4), new SqlParameter("@Price", SqlDbType.Decimal, 20), new SqlParameter("@PayType", SqlDbType.Int, 4), new SqlParameter("@Discount", SqlDbType.Decimal, 20), new SqlParameter("@PayAmount", SqlDbType.Decimal, 20), new SqlParameter("@TS", SqlDbType.DateTime), new SqlParameter("@Status", SqlDbType.Int, 4), new SqlParameter("@OrderID", SqlDbType.VarChar, 50), new SqlParameter("@CurrentID", SqlDbType.VarChar, 50), new SqlParameter("@PayTime", SqlDbType.DateTime), }; if (model.CustomerSysNo != AppConst.IntNull) { parameters[0].Value = model.CustomerSysNo; } else { parameters[0].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[0]); if (model.ProductType != AppConst.IntNull) { parameters[1].Value = model.ProductType; } else { parameters[1].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[1]); if (model.ProductSysNo != AppConst.IntNull) { parameters[2].Value = model.ProductSysNo; } else { parameters[2].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[2]); if (model.Price != AppConst.DecimalNull) { parameters[3].Value = model.Price; } else { parameters[3].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[3]); if (model.PayType != AppConst.IntNull) { parameters[4].Value = model.PayType; } else { parameters[4].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[4]); if (model.Discount != AppConst.DecimalNull) { parameters[5].Value = model.Discount; } else { parameters[5].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[5]); if (model.PayAmount != AppConst.DecimalNull) { parameters[6].Value = model.PayAmount; } else { parameters[6].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[6]); if (model.TS != AppConst.DateTimeNull) { parameters[7].Value = model.TS; } else { parameters[7].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[7]); if (model.Status != AppConst.IntNull) { parameters[8].Value = model.Status; } else { parameters[8].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[8]); if (model.OrderID != AppConst.StringNull) { parameters[9].Value = model.OrderID; } else { parameters[9].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[9]); if (model.CurrentID != AppConst.StringNull) { parameters[10].Value = model.CurrentID; } else { parameters[10].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[10]); if (model.PayTime != AppConst.DateTimeNull) { parameters[11].Value = model.PayTime; } else { parameters[11].Value = System.DBNull.Value; } cmd.Parameters.Add(parameters[11]); return(Convert.ToInt32(SqlHelper.ExecuteScalar(cmd, parameters))); }
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"]); if (verifyResult)//验证成功 { ///////////////////////////////////////////////////////////////////////////////////////////////////////////// //请在这里加上商户的业务逻辑程序代码 //——请根据您的业务逻辑来编写程序(以下代码仅作参考)—— //获取支付宝的通知返回参数,可参考技术文档中页面跳转同步通知参数列表 //商户订单号 string out_trade_no = Request.QueryString["out_trade_no"]; orderID = out_trade_no; //支付宝交易号 string trade_no = Request.QueryString["trade_no"]; //交易状态 string trade_status = Request.QueryString["trade_status"]; if (Request.QueryString["trade_status"] == "TRADE_FINISHED" || Request.QueryString["trade_status"] == "TRADE_SUCCESS") { succ = true; if (out_trade_no.Contains("C")) { ordertype = 1; } else if (out_trade_no.Contains("P")) { ordertype = 2; } ORD_CashMod m_mod = ORD_CashBll.GetInstance().GetModelByOrderID(out_trade_no); if (m_mod == null) { ShowError("");//订单号错误 } if (m_mod.Status == (int)AppEnum.CashOrderStatus.beforepay) { m_mod.CurrentID = trade_no;//记录支付流水号 ORD_CashBll.GetInstance().SetPaySucc(m_mod); } //判断该笔订单是否在商户网站中已经做过处理 //如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序 //如果有做过处理,不执行商户的业务程序 } else { LogManagement.getInstance().WriteTrace("订单" + orderID + "支付宝返回" + Request.QueryString["trade_status"], "PayReturnForAlipay", base.Request.UserHostAddress); } //打印页面 ShowResult(); //——请根据您的业务逻辑来编写程序(以上代码仅作参考)—— ///////////////////////////////////////////////////////////////////////////////////////////////////////////// } else//验证失败 { LogManagement.getInstance().WriteTrace("订单" + orderID + "支付宝返回验证失败", "PayReturnForAlipay", base.Request.UserHostAddress); } } else { LogManagement.getInstance().WriteTrace("支付宝返回无参数", "PayReturnForAlipay", base.Request.UserHostAddress); ShowError("请从正确的入口进入"); } }
public bool SetPaySucc(ORD_CashMod m_mod) { TransactionOptions options = new TransactionOptions(); options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted; options.Timeout = TransactionManager.DefaultTimeout; using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options)) { m_mod.CurrentID = ""; m_mod.PayTime = DateTime.Now; m_mod.Status = (int)AppEnum.CashOrderStatus.succed; ORD_CashBll.GetInstance().Update(m_mod); switch (m_mod.ProductType) { case (int)AppEnum.CashOrderType.consultpay://咨询订单 QA_OrderMod m_order = QA_OrderBll.GetInstance().GetModel(m_mod.ProductSysNo); m_order.Status = (int)AppEnum.ConsultOrderStatus.payed; QA_OrderBll.GetInstance().Update(m_order); //生成收款单 if (m_mod.ProductType == (int)AppEnum.CashOrderType.consultpay) { ORD_CashMod rec_order = new ORD_CashMod(); QA_OrderMod tmp_order = QA_OrderBll.GetInstance().GetModel(m_mod.ProductSysNo); rec_order.CustomerSysNo = tmp_order.CustomerSysNo; rec_order.CurrentID = ""; rec_order.Discount = 1 - AppConst.ConsultDiscount; rec_order.PayAmount = m_mod.Price * rec_order.Discount; rec_order.PayType = m_mod.PayType; rec_order.Price = m_mod.Price; rec_order.ProductSysNo = m_mod.SysNo; rec_order.Status = (int)AppEnum.CashOrderStatus.confirming; rec_order.ProductType = (int)AppEnum.CashOrderType.consultget; rec_order.TS = DateTime.Now; rec_order.OrderID = "C" + m_mod.ProductType.ToString("0") + DateTime.Now.ToString("yyyyMMdd") + m_mod.ProductSysNo + CommonTools.ThrowRandom(0, 99999).ToString("00000"); rec_order.SysNo = ORD_CashBll.GetInstance().Add(rec_order); } //修改咨询购买数 QA_QuestionMod m_quest = new QA_QuestionMod(); m_quest = QA_QuestionBll.GetInstance().GetModel(m_order.QuestionSysNo); m_quest.BuyCount++; QA_QuestionBll.GetInstance().Update(m_quest); break; } scope.Complete(); return true; } }