Пример #1
0
        public void SetOrder(QA_OrderMod order, QA_AnswerMod answer)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                int sysno = QA_AnswerBll.GetInstance().AddAnswer(answer);
                USR_CustomerBll.GetInstance().AddCount(answer.CustomerSysNo, 0, 0, 0, 0, 0, 0, 1, 0, 0);

                order.AnswerSysNo = sysno;
                Add(order);

                QA_QuestionMod m_qa = QA_QuestionBll.GetInstance().GetModel(order.QuestionSysNo);
                m_qa.OrderCount++;
                QA_QuestionBll.GetInstance().Update(m_qa);

                AppMod.User.USR_RecordMod m_record = new AppMod.User.USR_RecordMod();
                m_record.CustomerSysNo = order.CustomerSysNo;
                m_record.TargetSysNo   = sysno;
                m_record.TS            = DateTime.Now;
                m_record.Type          = (int)AppEnum.ActionType.SetOrder;
                User.USR_RecordBll.GetInstance().Add(m_record);

                scope.Complete();
            }
        }
Пример #2
0
        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);
            }
        }
Пример #3
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public int Update(QA_OrderMod model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("update QA_Order 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.AnswerSysNo != AppConst.IntNull)
            {
                strSql.Append("AnswerSysNo=@AnswerSysNo,");
                SqlParameter param = new SqlParameter("@AnswerSysNo", SqlDbType.Int, 4);
                param.Value = model.AnswerSysNo;
                cmd.Parameters.Add(param);
            }
            if (model.QuestionSysNo != AppConst.IntNull)
            {
                strSql.Append("QuestionSysNo=@QuestionSysNo,");
                SqlParameter param = new SqlParameter("@QuestionSysNo", SqlDbType.Int, 4);
                param.Value = model.QuestionSysNo;
                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.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.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.TS != AppConst.DateTimeNull)
            {
                strSql.Append("TS=@TS,");
                SqlParameter param = new SqlParameter("@TS", SqlDbType.DateTime);
                param.Value = model.TS;
                cmd.Parameters.Add(param);
            }
            if (model.Words != AppConst.IntNull)
            {
                strSql.Append("Words=@Words,");
                SqlParameter param = new SqlParameter("@Words", SqlDbType.Int, 4);
                param.Value = model.Words;
                cmd.Parameters.Add(param);
            }
            if (model.Description != AppConst.StringNull)
            {
                strSql.Append("Description=@Description,");
                SqlParameter param = new SqlParameter("@Description", SqlDbType.NVarChar, 1000);
                param.Value = model.Description;
                cmd.Parameters.Add(param);
            }
            if (model.Score != AppConst.IntNull)
            {
                strSql.Append("Score=@Score,");
                SqlParameter param = new SqlParameter("@Score", SqlDbType.Int, 4);
                param.Value = model.Score;
                cmd.Parameters.Add(param);
            }
            if (model.Trial != AppConst.StringNull)
            {
                strSql.Append("Trial=@Trial,");
                SqlParameter param = new SqlParameter("@Trial", SqlDbType.NVarChar, 1000);
                param.Value = model.Trial;
                cmd.Parameters.Add(param);
            }
            if (model.ReplyTime != AppConst.DateTimeNull)
            {
                strSql.Append("ReplyTime=@ReplyTime,");
                SqlParameter param = new SqlParameter("@ReplyTime", SqlDbType.DateTime);
                param.Value = model.ReplyTime;
                cmd.Parameters.Add(param);
            }
            strSql.Remove(strSql.Length - 1, 1);
            strSql.Append(" where SysNo=@SysNo ");
            cmd.CommandText = strSql.ToString();
            return(SqlHelper.ExecuteNonQuery(cmd, null));
        }
Пример #4
0
        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);
        }
Пример #5
0
        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);
                }
            }
        }
Пример #6
0
        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();
                }
            }
        }
Пример #7
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public int Add(QA_OrderMod model)
        {
            StringBuilder strSql = new StringBuilder();
            strSql.Append("insert into QA_Order(");
            strSql.Append("AnswerSysNo,QuestionSysNo,CustomerSysNo,Price,Status,TS,Words,Description,Score,Trial,ReplyTime)");
            strSql.Append(" values (");
            strSql.Append("@AnswerSysNo,@QuestionSysNo,@CustomerSysNo,@Price,@Status,@TS,@Words,@Description,@Score,@Trial,@ReplyTime)");
            strSql.Append(";select @@IDENTITY");
            SqlCommand cmd = new SqlCommand(strSql.ToString());
            SqlParameter[] parameters = {
                 new SqlParameter("@AnswerSysNo",SqlDbType.Int,4),
                 new SqlParameter("@QuestionSysNo",SqlDbType.Int,4),
                 new SqlParameter("@CustomerSysNo",SqlDbType.Int,4),
                 new SqlParameter("@Price",SqlDbType.Decimal,20),
                 new SqlParameter("@Status",SqlDbType.Int,4),
                 new SqlParameter("@TS",SqlDbType.DateTime),
                 new SqlParameter("@Words",SqlDbType.Int,4),
                 new SqlParameter("@Description",SqlDbType.NVarChar,1000),
                 new SqlParameter("@Score",SqlDbType.Int,4),
                 new SqlParameter("@Trial",SqlDbType.NVarChar,1000),
                 new SqlParameter("@ReplyTime",SqlDbType.DateTime),
             };
            if (model.AnswerSysNo != AppConst.IntNull)
                parameters[0].Value = model.AnswerSysNo;
            else
                parameters[0].Value = System.DBNull.Value;
            cmd.Parameters.Add(parameters[0]);
            if (model.QuestionSysNo != AppConst.IntNull)
                parameters[1].Value = model.QuestionSysNo;
            else
                parameters[1].Value = System.DBNull.Value;
            cmd.Parameters.Add(parameters[1]);
            if (model.CustomerSysNo != AppConst.IntNull)
                parameters[2].Value = model.CustomerSysNo;
            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.Status != AppConst.IntNull)
                parameters[4].Value = model.Status;
            else
                parameters[4].Value = System.DBNull.Value;
            cmd.Parameters.Add(parameters[4]);
            if (model.TS != AppConst.DateTimeNull)
                parameters[5].Value = model.TS;
            else
                parameters[5].Value = System.DBNull.Value;
            cmd.Parameters.Add(parameters[5]);
            if (model.Words != AppConst.IntNull)
                parameters[6].Value = model.Words;
            else
                parameters[6].Value = System.DBNull.Value;
            cmd.Parameters.Add(parameters[6]);
            if (model.Description != AppConst.StringNull)
                parameters[7].Value = model.Description;
            else
                parameters[7].Value = System.DBNull.Value;
            cmd.Parameters.Add(parameters[7]);
            if (model.Score != AppConst.IntNull)
                parameters[8].Value = model.Score;
            else
                parameters[8].Value = System.DBNull.Value;
            cmd.Parameters.Add(parameters[8]);
            if (model.Trial != AppConst.StringNull)
                parameters[9].Value = model.Trial;
            else
                parameters[9].Value = System.DBNull.Value;
            cmd.Parameters.Add(parameters[9]);
            if (model.ReplyTime != AppConst.DateTimeNull)
                parameters[10].Value = model.ReplyTime;
            else
                parameters[10].Value = System.DBNull.Value;
            cmd.Parameters.Add(parameters[10]);

            return Convert.ToInt32(SqlHelper.ExecuteScalar(cmd, parameters));
        }
Пример #8
0
        /// <summary>
        /// 更新一条数据
        /// </summary>

        public void Update(QA_OrderMod model)
        {
            dal.Update(model);
        }
Пример #9
0
 /// <summary>
 /// 得到一个对象实体
 /// </summary>
 public QA_OrderMod GetModel(int SysNo)
 {
     StringBuilder strSql = new StringBuilder();
     strSql.Append("select SysNo, AnswerSysNo, QuestionSysNo, CustomerSysNo, Price, Status, TS, Words, Description, Score, Trial, ReplyTime from  dbo.QA_Order");
     strSql.Append(" where SysNo=@SysNo ");
     SqlParameter[] parameters = {
     new SqlParameter("@SysNo", SqlDbType.Int,4 )
      		};
     parameters[0].Value = SysNo;
     QA_OrderMod model = new QA_OrderMod();
     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]["AnswerSysNo"].ToString() != "")
         {
             model.AnswerSysNo = int.Parse(ds.Tables[0].Rows[0]["AnswerSysNo"].ToString());
         }
         if (ds.Tables[0].Rows[0]["QuestionSysNo"].ToString() != "")
         {
             model.QuestionSysNo = int.Parse(ds.Tables[0].Rows[0]["QuestionSysNo"].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]["Price"].ToString() != "")
         {
             model.Price = decimal.Parse(ds.Tables[0].Rows[0]["Price"].ToString());
         }
         if (ds.Tables[0].Rows[0]["Status"].ToString() != "")
         {
             model.Status = int.Parse(ds.Tables[0].Rows[0]["Status"].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]["Words"].ToString() != "")
         {
             model.Words = int.Parse(ds.Tables[0].Rows[0]["Words"].ToString());
         }
         model.Description = ds.Tables[0].Rows[0]["Description"].ToString();
         if (ds.Tables[0].Rows[0]["Score"].ToString() != "")
         {
             model.Score = int.Parse(ds.Tables[0].Rows[0]["Score"].ToString());
         }
         model.Trial = ds.Tables[0].Rows[0]["Trial"].ToString();
         if (ds.Tables[0].Rows[0]["ReplyTime"].ToString() != "")
         {
             model.ReplyTime = DateTime.Parse(ds.Tables[0].Rows[0]["ReplyTime"].ToString());
         }
         return model;
     }
     else
     {
         return null;
     }
 }
Пример #10
0
 /// <summary>
 /// 增加一条数据
 /// </summary>
 public int Add(QA_OrderMod model)
 {
     return dal.Add(model);
 }
Пример #11
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 public void Update(QA_OrderMod model)
 {
     dal.Update(model);
 }
Пример #12
0
        public void SetOrder(QA_OrderMod order,QA_AnswerMod answer)
        {
            TransactionOptions options = new TransactionOptions();
            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                int sysno = QA_AnswerBll.GetInstance().AddAnswer(answer);
                USR_CustomerBll.GetInstance().AddCount(answer.CustomerSysNo, 0, 0, 0, 0, 0, 0, 1, 0, 0);

                order.AnswerSysNo = sysno;
                Add(order);

                QA_QuestionMod m_qa = QA_QuestionBll.GetInstance().GetModel(order.QuestionSysNo);
                m_qa.OrderCount++;
                QA_QuestionBll.GetInstance().Update(m_qa);

                AppMod.User.USR_RecordMod m_record = new AppMod.User.USR_RecordMod();
                m_record.CustomerSysNo = order.CustomerSysNo;
                m_record.TargetSysNo = sysno;
                m_record.TS = DateTime.Now;
                m_record.Type = (int)AppEnum.ActionType.SetOrder;
                User.USR_RecordBll.GetInstance().Add(m_record);

                scope.Complete();
            }
        }
Пример #13
0
        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);
        }
Пример #14
0
        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);
                }

            }
        }
Пример #15
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public QA_OrderMod GetModel(int SysNo)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select SysNo, AnswerSysNo, QuestionSysNo, CustomerSysNo, Price, Status, TS, Words, Description, Score, Trial, ReplyTime from  dbo.QA_Order");
            strSql.Append(" where SysNo=@SysNo ");
            SqlParameter[] parameters =
            {
                new SqlParameter("@SysNo", SqlDbType.Int, 4)
            };
            parameters[0].Value = SysNo;
            QA_OrderMod model = new QA_OrderMod();
            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]["AnswerSysNo"].ToString() != "")
                {
                    model.AnswerSysNo = int.Parse(ds.Tables[0].Rows[0]["AnswerSysNo"].ToString());
                }
                if (ds.Tables[0].Rows[0]["QuestionSysNo"].ToString() != "")
                {
                    model.QuestionSysNo = int.Parse(ds.Tables[0].Rows[0]["QuestionSysNo"].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]["Price"].ToString() != "")
                {
                    model.Price = decimal.Parse(ds.Tables[0].Rows[0]["Price"].ToString());
                }
                if (ds.Tables[0].Rows[0]["Status"].ToString() != "")
                {
                    model.Status = int.Parse(ds.Tables[0].Rows[0]["Status"].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]["Words"].ToString() != "")
                {
                    model.Words = int.Parse(ds.Tables[0].Rows[0]["Words"].ToString());
                }
                model.Description = ds.Tables[0].Rows[0]["Description"].ToString();
                if (ds.Tables[0].Rows[0]["Score"].ToString() != "")
                {
                    model.Score = int.Parse(ds.Tables[0].Rows[0]["Score"].ToString());
                }
                model.Trial = ds.Tables[0].Rows[0]["Trial"].ToString();
                if (ds.Tables[0].Rows[0]["ReplyTime"].ToString() != "")
                {
                    model.ReplyTime = DateTime.Parse(ds.Tables[0].Rows[0]["ReplyTime"].ToString());
                }
                return(model);
            }
            else
            {
                return(null);
            }
        }
Пример #16
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 public int Update(QA_OrderMod model)
 {
     StringBuilder strSql = new StringBuilder();
     strSql.Append("update QA_Order 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.AnswerSysNo != AppConst.IntNull)
     {
         strSql.Append("AnswerSysNo=@AnswerSysNo,");
         SqlParameter param = new SqlParameter("@AnswerSysNo", SqlDbType.Int, 4);
         param.Value = model.AnswerSysNo;
         cmd.Parameters.Add(param);
     }
     if (model.QuestionSysNo != AppConst.IntNull)
     {
         strSql.Append("QuestionSysNo=@QuestionSysNo,");
         SqlParameter param = new SqlParameter("@QuestionSysNo", SqlDbType.Int, 4);
         param.Value = model.QuestionSysNo;
         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.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.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.TS != AppConst.DateTimeNull)
     {
         strSql.Append("TS=@TS,");
         SqlParameter param = new SqlParameter("@TS", SqlDbType.DateTime);
         param.Value = model.TS;
         cmd.Parameters.Add(param);
     }
     if (model.Words != AppConst.IntNull)
     {
         strSql.Append("Words=@Words,");
         SqlParameter param = new SqlParameter("@Words", SqlDbType.Int, 4);
         param.Value = model.Words;
         cmd.Parameters.Add(param);
     }
     if (model.Description != AppConst.StringNull)
     {
         strSql.Append("Description=@Description,");
         SqlParameter param = new SqlParameter("@Description", SqlDbType.NVarChar, 1000);
         param.Value = model.Description;
         cmd.Parameters.Add(param);
     }
     if (model.Score != AppConst.IntNull)
     {
         strSql.Append("Score=@Score,");
         SqlParameter param = new SqlParameter("@Score", SqlDbType.Int, 4);
         param.Value = model.Score;
         cmd.Parameters.Add(param);
     }
     if (model.Trial != AppConst.StringNull)
     {
         strSql.Append("Trial=@Trial,");
         SqlParameter param = new SqlParameter("@Trial", SqlDbType.NVarChar, 1000);
         param.Value = model.Trial;
         cmd.Parameters.Add(param);
     }
     if (model.ReplyTime != AppConst.DateTimeNull)
     {
         strSql.Append("ReplyTime=@ReplyTime,");
         SqlParameter param = new SqlParameter("@ReplyTime", SqlDbType.DateTime);
         param.Value = model.ReplyTime;
         cmd.Parameters.Add(param);
     }
     strSql.Remove(strSql.Length - 1, 1);
     strSql.Append(" where SysNo=@SysNo ");
     cmd.CommandText = strSql.ToString();
     return SqlHelper.ExecuteNonQuery(cmd, null);
 }
Пример #17
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public int Add(QA_OrderMod model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into QA_Order(");
            strSql.Append("AnswerSysNo,QuestionSysNo,CustomerSysNo,Price,Status,TS,Words,Description,Score,Trial,ReplyTime)");
            strSql.Append(" values (");
            strSql.Append("@AnswerSysNo,@QuestionSysNo,@CustomerSysNo,@Price,@Status,@TS,@Words,@Description,@Score,@Trial,@ReplyTime)");
            strSql.Append(";select @@IDENTITY");
            SqlCommand cmd = new SqlCommand(strSql.ToString());

            SqlParameter[] parameters =
            {
                new SqlParameter("@AnswerSysNo",   SqlDbType.Int,          4),
                new SqlParameter("@QuestionSysNo", SqlDbType.Int,          4),
                new SqlParameter("@CustomerSysNo", SqlDbType.Int,          4),
                new SqlParameter("@Price",         SqlDbType.Decimal,     20),
                new SqlParameter("@Status",        SqlDbType.Int,          4),
                new SqlParameter("@TS",            SqlDbType.DateTime),
                new SqlParameter("@Words",         SqlDbType.Int,          4),
                new SqlParameter("@Description",   SqlDbType.NVarChar,  1000),
                new SqlParameter("@Score",         SqlDbType.Int,          4),
                new SqlParameter("@Trial",         SqlDbType.NVarChar,  1000),
                new SqlParameter("@ReplyTime",     SqlDbType.DateTime),
            };
            if (model.AnswerSysNo != AppConst.IntNull)
            {
                parameters[0].Value = model.AnswerSysNo;
            }
            else
            {
                parameters[0].Value = System.DBNull.Value;
            }
            cmd.Parameters.Add(parameters[0]);
            if (model.QuestionSysNo != AppConst.IntNull)
            {
                parameters[1].Value = model.QuestionSysNo;
            }
            else
            {
                parameters[1].Value = System.DBNull.Value;
            }
            cmd.Parameters.Add(parameters[1]);
            if (model.CustomerSysNo != AppConst.IntNull)
            {
                parameters[2].Value = model.CustomerSysNo;
            }
            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.Status != AppConst.IntNull)
            {
                parameters[4].Value = model.Status;
            }
            else
            {
                parameters[4].Value = System.DBNull.Value;
            }
            cmd.Parameters.Add(parameters[4]);
            if (model.TS != AppConst.DateTimeNull)
            {
                parameters[5].Value = model.TS;
            }
            else
            {
                parameters[5].Value = System.DBNull.Value;
            }
            cmd.Parameters.Add(parameters[5]);
            if (model.Words != AppConst.IntNull)
            {
                parameters[6].Value = model.Words;
            }
            else
            {
                parameters[6].Value = System.DBNull.Value;
            }
            cmd.Parameters.Add(parameters[6]);
            if (model.Description != AppConst.StringNull)
            {
                parameters[7].Value = model.Description;
            }
            else
            {
                parameters[7].Value = System.DBNull.Value;
            }
            cmd.Parameters.Add(parameters[7]);
            if (model.Score != AppConst.IntNull)
            {
                parameters[8].Value = model.Score;
            }
            else
            {
                parameters[8].Value = System.DBNull.Value;
            }
            cmd.Parameters.Add(parameters[8]);
            if (model.Trial != AppConst.StringNull)
            {
                parameters[9].Value = model.Trial;
            }
            else
            {
                parameters[9].Value = System.DBNull.Value;
            }
            cmd.Parameters.Add(parameters[9]);
            if (model.ReplyTime != AppConst.DateTimeNull)
            {
                parameters[10].Value = model.ReplyTime;
            }
            else
            {
                parameters[10].Value = System.DBNull.Value;
            }
            cmd.Parameters.Add(parameters[10]);

            return(Convert.ToInt32(SqlHelper.ExecuteScalar(cmd, parameters)));
        }
Пример #18
0
        /// <summary>
        /// 增加一条数据
        /// </summary>

        public int Add(QA_OrderMod model)
        {
            return(dal.Add(model));
        }