protected void BindList() { DataTable m_dt = new DataTable(); int total = 0; switch (tab) { case 0: DropDownList1.DataSource = AppEnum.GetCashReturnReason(); DropDownList1.DataTextField = "value"; DropDownList1.DataValueField = "key"; DropDownList1.DataBind(); break; case 1: m_dt = ORD_ReturnCashBll.GetInstance().GetList(pagesize, pageindex, GetSession().CustomerEntity.SysNo, AppConst.IntNull, AppConst.IntNull, AppConst.IntNull, "", ref total); m_dt.Columns.Add("content"); m_dt.Columns.Add("target"); for (int i = 0; i < m_dt.Rows.Count; i++) { if ((m_dt.Rows[i]["producttype"].ToString() == ((int)AppEnum.CashOrderType.consultget).ToString() || m_dt.Rows[i]["producttype"].ToString() == ((int)AppEnum.CashOrderType.consultpay).ToString()) && m_dt.Rows[i]["productsysno"] != null && m_dt.Rows[i]["productsysno"].ToString() != "") { try { DataTable tmp_dt = QA_OrderBll.GetInstance().GetOrderDetail(int.Parse(m_dt.Rows[i]["productsysno"].ToString())); if (tmp_dt.Rows.Count > 0) { m_dt.Rows[i]["content"] = AppEnum.GetCashOrderType(int.Parse(m_dt.Rows[i]["producttype"].ToString())); if (m_dt.Rows[i]["producttype"].ToString() == ((int)AppEnum.CashOrderType.consultget).ToString()) { m_dt.Rows[i]["target"] = tmp_dt.Rows[0]["questuname"].ToString(); } else if (m_dt.Rows[i]["producttype"].ToString() == ((int)AppEnum.CashOrderType.consultpay).ToString()) { m_dt.Rows[i]["target"] = tmp_dt.Rows[0]["orderuname"].ToString(); } } } catch { } } } Repeater2.DataSource = m_dt; Repeater2.DataBind(); break; } Pager1.url = "MyAccount.aspx?tab=" + tab + "&pn="; Pager1.totalrecord = total; if (total % AppConst.PageSize == 0) { this.Pager1.total = total / pagesize; } else { this.Pager1.total = total / pagesize + 1; } this.Pager1.index = pageindex; this.Pager1.numlenth = 3; }
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); } }
protected void Page_Load(object sender, EventArgs e) { WebForMain.Master.Main m_master = (WebForMain.Master.Main)Master; m_master.SetTab(1); Login(Request.Url.ToString()); if (Request.QueryString["id"] != null) { try { SysNo = int.Parse(Request.QueryString["id"]); m_qustion = QA_QuestionBll.GetInstance().GetModel(SysNo); //DataBind(); } catch { ShowError(""); } } else if (Page.RouteData.Values["id"] != null && Page.RouteData.Values["id"].ToString() != "") { try { SysNo = int.Parse(Page.RouteData.Values["id"].ToString()); m_qustion = QA_QuestionBll.GetInstance().GetModel(SysNo); //DataBind(); } catch { ShowError(""); } } else { if (Request.QueryString["order"] != null) { try { order = int.Parse(Request.QueryString["order"]); old_order = QA_OrderBll.GetInstance().GetModel(order); SysNo = old_order.QuestionSysNo; m_qustion = QA_QuestionBll.GetInstance().GetModel(SysNo); //DataBind(); } catch { ShowError(""); } } else if (Page.RouteData.Values["order"] != null && Page.RouteData.Values["order"].ToString() != "") { try { order = int.Parse(Page.RouteData.Values["order"].ToString()); old_order = QA_OrderBll.GetInstance().GetModel(order); SysNo = old_order.QuestionSysNo; m_qustion = QA_QuestionBll.GetInstance().GetModel(SysNo); //DataBind(); } catch { ShowError(""); } } else { ShowError(""); } } if (m_qustion.CateSysNo != 17)//不是付费咨询则弹出 { ShowError(""); } if (!IsPostBack) { BindData(); } //Page.ClientScript.RegisterStartupScript(this.GetType(), "SetDocument", "SetDocument();", true); }
protected void LinkButton1_Click(object sender, EventArgs e) { Login(Request.Url.ToString()); if (order == 0) { #region 判断输入项 decimal price = 0; try { price = decimal.Parse(TextBox3.Text.Trim()); pricetip.InnerHtml = ""; } catch { pricetip.InnerHtml = "<samp>预计消费金额只可填写数字,请重新输入</samp>"; } int words = 0; try { words = int.Parse(TextBox2.Text.Trim()); wordstip.InnerHtml = ""; } catch { wordstip.InnerHtml = "<samp>最少字数只可填写数字,请重新输入</samp>"; } #endregion QA_AnswerMod m_answer = new QA_AnswerMod(); m_answer.Award = 0; m_answer.Context = ""; if (GetSession().CustomerEntity == null || GetSession().CustomerEntity.SysNo == AppConst.IntNull) { m_answer.CustomerSysNo = 0; } else { m_answer.CustomerSysNo = GetSession().CustomerEntity.SysNo; } m_answer.DR = (int)AppEnum.State.normal; m_answer.Hate = 0; m_answer.Love = 0; m_answer.QuestionSysNo = SysNo; m_answer.Title = ""; m_answer.TS = DateTime.Now; QA_OrderMod m_order = new QA_OrderMod(); m_order.CustomerSysNo = m_answer.CustomerSysNo; m_order.Description = txtDescription.Text.Trim(); m_order.Price = price; m_order.QuestionSysNo = m_answer.QuestionSysNo; m_order.Score = AppConst.IntNull; m_order.Status = (int)AppEnum.ConsultOrderStatus.beforepay; m_order.Trial = txtTrial.Text.Trim(); m_order.TS = DateTime.Now; m_order.Words = words; try { QA_OrderBll.GetInstance().SetOrder(m_order, m_answer); Page.ClientScript.RegisterStartupScript(this.GetType(), "ok", "alert('报价发布成功!');location.href='" + AppConfig.HomeUrl() + "Quest/Consult/" + SysNo + "'", true); } catch (Exception ex) { Page.ClientScript.RegisterStartupScript(this.GetType(), "nook", "alert('系统故障,发布失败!');", true); } } else { QA_AnswerMod m_answer = QA_AnswerBll.GetInstance().GetModel(old_order.AnswerSysNo); m_answer.Context = txtContext.Text; old_order.Status = (int)AppEnum.ConsultOrderStatus.beforeconfirm; try { QA_AnswerBll.GetInstance().Update(m_answer); QA_OrderBll.GetInstance().Update(old_order); Page.ClientScript.RegisterStartupScript(this.GetType(), "ok", "alert('解答提交成功!');location.href='" + AppConfig.HomeUrl() + "Quest/Consult/" + SysNo + "'", true); } catch (Exception ex) { Page.ClientScript.RegisterStartupScript(this.GetType(), "nook", "alert('系统故障,提交失败!');", true); } } }
protected void BindList() { DataTable m_dt = new DataTable(); int total = 0; switch (tab) { case 0: ltrPoint.Text = GetSession().CustomerEntity.Point.ToString(); m_dt = ORD_PointBll.GetInstance().GetList(pagesize, pageindex, GetSession().CustomerEntity.SysNo, AppConst.IntNull, AppConst.IntNull, AppConst.IntNull, "", ref total); m_dt.Columns.Add("content"); for (int i = 0; i < m_dt.Rows.Count; i++) { m_dt.Rows[i]["content"] = AppEnum.GetPointOrderType(int.Parse(m_dt.Rows[i]["type"].ToString())); if (m_dt.Rows[i]["type"].ToString() == ((int)AppEnum.PointOrderType.appconsume).ToString()) { m_dt.Rows[i]["content"] += "应用-" + AppEnum.GetApps(int.Parse(m_dt.Rows[i]["productsysno"].ToString())); } else if (m_dt.Rows[i]["type"].ToString() == ((int)AppEnum.PointOrderType.questaward).ToString()) { m_dt.Rows[i]["content"] = "悬赏-" + "<a href='" + AppConfig.HomeUrl() + "Quest/Question/" + m_dt.Rows[i]["productsysno"].ToString() + "' target='_blank'>" + CommonTools.CutStr(m_dt.Rows[i]["content"].ToString(), 10) + "</a>"; } } Repeater1.DataSource = m_dt; Repeater1.DataBind(); break; case 1: ltrCash.Text = GetSession().CustomerEntity.Credit.ToString(); m_dt = ORD_CashBll.GetInstance().GetList(pagesize, pageindex, GetSession().CustomerEntity.SysNo, AppConst.IntNull, AppConst.IntNull, AppConst.IntNull, "", ref total); m_dt.Columns.Add("content"); m_dt.Columns.Add("target"); for (int i = 0; i < m_dt.Rows.Count; i++) { if ((m_dt.Rows[i]["producttype"].ToString() == ((int)AppEnum.CashOrderType.consultget).ToString() || m_dt.Rows[i]["producttype"].ToString() == ((int)AppEnum.CashOrderType.consultpay).ToString()) && m_dt.Rows[i]["productsysno"] != null && m_dt.Rows[i]["productsysno"].ToString() != "") { try { DataTable tmp_dt = QA_OrderBll.GetInstance().GetOrderDetail(int.Parse(m_dt.Rows[i]["productsysno"].ToString())); if (tmp_dt.Rows.Count > 0) { m_dt.Rows[i]["content"] = AppEnum.GetCashOrderType(int.Parse(m_dt.Rows[i]["producttype"].ToString())); if (m_dt.Rows[i]["producttype"].ToString() == ((int)AppEnum.CashOrderType.consultget).ToString()) { m_dt.Rows[i]["target"] = tmp_dt.Rows[0]["questuname"].ToString(); } else if (m_dt.Rows[i]["producttype"].ToString() == ((int)AppEnum.CashOrderType.consultpay).ToString()) { m_dt.Rows[i]["target"] = tmp_dt.Rows[0]["orderuname"].ToString(); } } } catch { } } } Repeater2.DataSource = m_dt; Repeater2.DataBind(); break; } Pager1.url = "MyAccount.aspx?tab=" + tab + "&pn="; Pager1.totalrecord = total; if (total % AppConst.PageSize == 0) { this.Pager1.total = total / pagesize; } else { this.Pager1.total = total / pagesize + 1; } this.Pager1.index = pageindex; this.Pager1.numlenth = 3; }
protected void BindList() { DataTable tmpdt = QA_AnswerBll.GetInstance().GetSimpleListByQuest(SysNo); tmpdt.Columns.Add("isorder"); #region 绑定报价列表 if (GetSession().CustomerEntity.SysNo == m_qustion.CustomerSysNo) { myprice.Visible = false; } DataTable m_dt1 = QA_OrderBll.GetInstance().GetListByQuest(SysNo); m_dt1.Columns.Add("color"); m_dt1.Columns.Add("floor"); for (int i = 0; i < m_dt1.Rows.Count; i++) { switch (int.Parse(m_dt1.Rows[i]["status"].ToString())) { case 1: m_dt1.Rows[i]["color"] = "#000"; break; case 2: case 3: case 4: m_dt1.Rows[i]["color"] = "#008c03"; break; case 0: case 5: m_dt1.Rows[i]["color"] = "#f00"; break; } //若已有报价单且未购买则不允许发布第二个价单 if (m_dt1.Rows[i]["CustomerSysNo"].ToString() == GetSession().CustomerEntity.SysNo.ToString() && int.Parse(m_dt1.Rows[i]["status"].ToString()) == 1) { myprice.Visible = false; } #region 设置锚点 for (int j = 0; j < tmpdt.Rows.Count; j++) { if (tmpdt.Rows[j]["SysNo"].ToString() == m_dt1.Rows[i]["answersysno"].ToString()) { if (j >= pagesize) { Regex r = new Regex(@"pn\d+?&"); m_dt1.Rows[i]["floor"] = r.Replace(Request.Url.ToString(), "") + "&pn=" + j / pageindex + "#f" + (j % pageindex).ToString(); } else { m_dt1.Rows[i]["floor"] = "#f" + j.ToString(); } tmpdt.Rows[j]["isorder"] = "1"; break; } } #endregion } Repeater2.DataSource = m_dt1; Repeater2.DataBind(); #endregion #region 绑定回答列表 int total = 0; if (m_qustion.CustomerSysNo == AppConst.IntNull) { m_qustion = QA_QuestionBll.GetInstance().GetModel(SysNo); } DataTable m_dt = QA_AnswerBll.GetInstance().GetListByQuestForConsult(pagesize, pageindex, SysNo, ref total); m_dt.Columns.Add("hide"); //m_dt.Columns.Add("hide1"); //m_dt.Columns.Add("orderlink"); for (int i = 0; i < m_dt.Rows.Count; i++) { if (GetSession().CustomerEntity.SysNo == m_qustion.CustomerSysNo || GetSession().CustomerEntity.SysNo == int.Parse(m_dt.Rows[i]["CustomerSysNo"].ToString())) { m_dt.Rows[i]["hide"] = "display:none;"; } else { m_dt.Rows[i]["trial"] = ""; m_dt.Rows[i]["Context"] = ""; m_dt.Rows[i]["hide"] = ""; } } Repeater1.DataSource = m_dt; Repeater1.DataBind(); Pager1.url = AppConfig.HomeUrl() + "Quest/Consult/" + SysNo + "/"; Pager1.totalrecord = total; if (total % AppConst.PageSize == 0) { this.Pager1.total = total / pagesize; } else { this.Pager1.total = total / pagesize + 1; } this.Pager1.index = pageindex; this.Pager1.numlenth = 3; if (IsPostBack) { UpdatePanel1.Update(); } #endregion }
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(); } } }