Exemplo n.º 1
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        /// <param name="model">OrderDetail对象</param>
        public int Add(ClassLibrary.Model.OrderDetail model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append(string.Format("INSERT INTO {0}(", table));
            strSql.Append("orderNumber,UserName,routeID,Number,RouteName,RoutePrice,RouteTime,StartTime,CreatedTime");
            strSql.Append(") VALUES (");
            strSql.Append("@orderNumber,@UserName,@routeID,@Number,@RouteName,@RoutePrice,@RouteTime,@StartTime,@CreatedTime)");
            SqlParameter[] parameters =
            {
                new SqlParameter("@orderNumber", SqlDbType.VarChar,   32),
                new SqlParameter("@UserName",    SqlDbType.NVarChar, 100),
                new SqlParameter("@routeID",     SqlDbType.Int,        4),
                new SqlParameter("@Number",      SqlDbType.NVarChar,  20),
                new SqlParameter("@RouteName",   SqlDbType.NVarChar, 200),
                new SqlParameter("@RoutePrice",  SqlDbType.Decimal,    9),
                new SqlParameter("@RouteTime",   SqlDbType.NVarChar,  40),
                new SqlParameter("@StartTime",   SqlDbType.NVarChar,  60),
                new SqlParameter("@CreatedTime", SqlDbType.DateTime, 8)
            };
            parameters[0].Value = model.orderNumber;
            parameters[1].Value = model.UserName;
            parameters[2].Value = model.routeID;
            parameters[3].Value = model.Number;
            parameters[4].Value = model.RouteName;
            parameters[5].Value = model.RoutePrice;
            parameters[6].Value = model.RouteTime;
            parameters[7].Value = model.StartTime;
            parameters[8].Value = model.CreatedTime;
            return(SQLHelper.Execute(strSql.ToString(), parameters));
        }
Exemplo n.º 2
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        /// <param name="ID">主键ID</param>
        /// <returns>OrderDetail对象</returns>
        public ClassLibrary.Model.OrderDetail GetModel(int ID)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("SELECT ID,orderNumber,UserName,routeID,Number,RouteName,RoutePrice,RouteTime,StartTime,CreatedTime");
            strSql.Append(" FROM ");
            strSql.Append(table);
            strSql.Append(string.Format(" WHERE {0}=@{0}", pk));
            SqlParameter[] parameters =
            {
                new SqlParameter("@" + pk, SqlDbType.Int, 4)
            };
            parameters[0].Value = ID;
            ClassLibrary.Model.OrderDetail model = new ClassLibrary.Model.OrderDetail();
            DataTable dt = SQLHelper.Query(strSql.ToString(), parameters);

            model.ID = ID;
            if (dt.Rows.Count > 0)
            {
                if (dt.Rows[0]["orderNumber"] != DBNull.Value)
                {
                    model.orderNumber = Convert.ToString(dt.Rows[0]["orderNumber"]);
                }
                if (dt.Rows[0]["UserName"] != DBNull.Value)
                {
                    model.UserName = Convert.ToString(dt.Rows[0]["UserName"]);
                }
                if (dt.Rows[0]["routeID"] != DBNull.Value)
                {
                    model.routeID = Convert.ToInt32(dt.Rows[0]["routeID"]);
                }
                if (dt.Rows[0]["Number"] != DBNull.Value)
                {
                    model.Number = Convert.ToString(dt.Rows[0]["Number"]);
                }
                if (dt.Rows[0]["RouteName"] != DBNull.Value)
                {
                    model.RouteName = Convert.ToString(dt.Rows[0]["RouteName"]);
                }
                if (dt.Rows[0]["RoutePrice"] != DBNull.Value)
                {
                    model.RoutePrice = Convert.ToDecimal(dt.Rows[0]["RoutePrice"]);
                }
                if (dt.Rows[0]["RouteTime"] != DBNull.Value)
                {
                    model.RouteTime = Convert.ToString(dt.Rows[0]["RouteTime"]);
                }
                if (dt.Rows[0]["StartTime"] != DBNull.Value)
                {
                    model.StartTime = Convert.ToString(dt.Rows[0]["StartTime"]);
                }
                if (dt.Rows[0]["CreatedTime"] != DBNull.Value)
                {
                    model.CreatedTime = Convert.ToDateTime(dt.Rows[0]["CreatedTime"]);
                }
            }
            return(model);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        /// <param name="model">OrderDetail对象</param>
        /// <returns>影响行数</returns>
        public int Update(ClassLibrary.Model.OrderDetail model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append(string.Format("UPDATE {0} SET ", table));
            strSql.Append("orderNumber=@orderNumber,");
            strSql.Append("UserName=@UserName,");
            strSql.Append("routeID=@routeID,");
            strSql.Append("Number=@Number,");
            strSql.Append("RouteName=@RouteName,");
            strSql.Append("RoutePrice=@RoutePrice,");
            strSql.Append("RouteTime=@RouteTime,");
            strSql.Append("StartTime=@StartTime,");
            strSql.Append("CreatedTime=@CreatedTime");
            strSql.Append(" WHERE ID=@ID");
            SqlParameter[] parameters =
            {
                new SqlParameter("@ID",          SqlDbType.Int,        4),
                new SqlParameter("@orderNumber", SqlDbType.VarChar,   32),
                new SqlParameter("@UserName",    SqlDbType.NVarChar, 100),
                new SqlParameter("@routeID",     SqlDbType.Int,        4),
                new SqlParameter("@Number",      SqlDbType.NVarChar,  20),
                new SqlParameter("@RouteName",   SqlDbType.NVarChar, 200),
                new SqlParameter("@RoutePrice",  SqlDbType.Decimal,    9),
                new SqlParameter("@RouteTime",   SqlDbType.NVarChar,  40),
                new SqlParameter("@StartTime",   SqlDbType.NVarChar,  60),
                new SqlParameter("@CreatedTime", SqlDbType.DateTime, 8)
            };
            parameters[0].Value = model.ID;
            parameters[1].Value = model.orderNumber;
            parameters[2].Value = model.UserName;
            parameters[3].Value = model.routeID;
            parameters[4].Value = model.Number;
            parameters[5].Value = model.RouteName;
            parameters[6].Value = model.RoutePrice;
            parameters[7].Value = model.RouteTime;
            parameters[8].Value = model.StartTime;
            parameters[9].Value = model.CreatedTime;
            return(SQLHelper.Execute(strSql.ToString(), parameters));
        }
Exemplo n.º 4
0
        //保存订单
        protected void SaveOrder()
        {
            string orderNumber = DateTime.Now.ToString("yyMMddHHssmmff");

            ClassLibrary.BLL.Orders      orderBLL  = new ClassLibrary.BLL.Orders();
            ClassLibrary.BLL.OrderDetail detailBLL = new ClassLibrary.BLL.OrderDetail();

            try
            {
                string[] products = Request.Form["productList"].Split('|');

                ClassLibrary.Model.Orders orderModel = new ClassLibrary.Model.Orders();

                orderModel.OrderNumber   = orderNumber;
                orderModel.UserName      = "";
                orderModel.proQuantity   = Request.Form["adultnum"] + "," + Request.Form["childnum"];
                orderModel.proTotalPrice = Convert.ToDecimal(Request.Form["totalPrice"]);
                orderModel.Linkman       = Request.Form["Linkman"];
                orderModel.Fax           = "";
                orderModel.Mobile        = Request.Form["Mobile"];
                orderModel.Telphone      = Request.Form["Mobile"];
                orderModel.Email         = "";
                orderModel.IdentityCard  = "";
                orderModel.ContractType  = Request.Form["ContractType"];
                orderModel.Payment       = Request.Form["Payment"];
                orderModel.Remark        = string.Empty;
                orderModel.Status        = SysConfig.OrderType.未付款待处理.ToString();
                orderModel.CreatedTime   = DateTime.Now;

                if (orderBLL.Add(orderModel) > 0)
                {
                    ClassLibrary.Model.OrderDetail detailModel;

                    //依次将订单详情信息插入表中
                    foreach (string pro in products)
                    {
                        if (pro == "")
                        {
                            continue;
                        }
                        detailModel             = new ClassLibrary.Model.OrderDetail();
                        detailModel.orderNumber = orderModel.OrderNumber;
                        detailModel.UserName    = orderModel.UserName;
                        detailModel.routeID     = Convert.ToInt32(pro.Split(',')[0]);
                        //string tempNum = pro.Split(',')[2];
                        //detailModel.Number = tempNum.Substring(0, tempNum.IndexOf("大")) + ",";
                        //tempNum = tempNum.Substring(tempNum.IndexOf("大") + 1);
                        //detailModel.Number += tempNum.Substring(0, tempNum.IndexOf("小"));
                        detailModel.Number     = Request.Form["adultnum"] + "," + Request.Form["childnum"];
                        detailModel.RouteName  = pro.Split(',')[1];
                        detailModel.RoutePrice = Convert.ToDecimal(Request.Form["totalPrice"]);
                        detailModel.RouteTime  = pro.Split(',')[4];
                        detailModel.StartTime  = pro.Split(',')[5];

                        detailBLL.Add(detailModel);
                    }

                    //扣钱
                    if (orderModel.Payment != SysConfig.Payment.支付宝.ToString())
                    {
                        Response.Redirect("/success/o" + orderModel.OrderNumber + ".html", false);
                        //Response.Redirect("/WebApp/appOrder.aspx?order=" + orderModel.OrderNumber, false);
                    }
                    else
                    {
                        //---use pay
                        string payURL = string.Format("/onlinepayment/alipay/default.aspx?order_no={0}&total_fee={1}",
                                                      orderModel.OrderNumber,
                                                      orderModel.proTotalPrice);

                        Response.Redirect(payURL, false);
                        //---
                    }
                }

                //发送短信
                ClassLibrary.BLL.MsgLinks msg = new ClassLibrary.BLL.MsgLinks();
                string customMsg   = "尊敬的用户:您的订单" + orderNumber + "已提交成功,我们将尽快联系您,或拨打400-017-5761。";
                string webRoutName = products[0].Split(',')[1].Replace("【", "").Replace("】", "").Replace("[", "").Replace("]", "")
                                     .Replace("(", "").Replace(")", "").Replace("(", "").Replace(")", "").Replace("...", "");
                string webMsg = "您有新订单" + orderNumber.Substring(10) + "!\n姓名:" + orderModel.Linkman + "\n电话:" + orderModel.Mobile + "\n日期:" + products[0].Split(',')[5]
                                + "\n线路:" + Function.Clip(webRoutName, 16, false) + "。";
                string backMsg = msg.sendMsg(orderModel.Mobile, customMsg);

                ClassLibrary.BLL.WebMeta   bll     = new ClassLibrary.BLL.WebMeta();
                ClassLibrary.Model.WebMeta webMeta = bll.GetModelList(string.Empty)[0];
                msg.sendMsg(webMeta.Telphone, webMsg);
            }
            catch (Exception ex)
            {
                //回滚数据
                orderBLL.Deletes("OrderNumber='" + orderNumber + "'");
                detailBLL.Deletes("orderNumber='" + orderNumber + "'");

                Response.Write("<script>alert('订单提交失败!');location.href='/shopcart/'</script>");
            }
        }