Ejemplo n.º 1
0
 //调用这个函数时,newOrder里填好5个基本信息,UserID,以及Payment即可。0为线下付款,1为支付宝
 public static void SubmitOrder(Order newOrder)
 {
     newOrder.SetStatusToNotPayed();
     string orderID = OrderRepository.AddOrder(newOrder);
     List<CartRecord> cartrecords = CartService.GetCartRecodByUserID(newOrder.UserID);
     foreach (CartRecord cr in cartrecords)
     {
         Item currentItem = ItemService.GetItemByItemID(cr.ItemID);
         OrderDetail od = new OrderDetail();
         od.OrderID = orderID;
         od.ItemID = cr.ItemID;
         od.Title = currentItem.Title;
         od.Price = currentItem.Price;
         od.Quantity = cr.Count;
         od.TotalPrice = od.Price * od.Quantity;
         od.ImageUrl = currentItem.ImageUrl;
         OrderRepository.AddOrderDetail(od);
     }
     CartService.DeletaCartRecordByUserID(newOrder.UserID);
 }
Ejemplo n.º 2
0
        public static void AddOrderDetail(OrderDetail newOrderDetail)
        {
            string connectionString = WebConfigurationManager.ConnectionStrings["defaultConnectionString"].ToString();
            SqlConnection sqlConn = new SqlConnection(connectionString);
            sqlConn.Open();

            string cmdString;
            SqlCommand sqlCmd = new SqlCommand();
            cmdString = "INSERT INTO OrderDetail (OrderID, ItemID, Title, Price, Quantity, TotalPrice, ImageUrl)" +
                "VALUES (@orderID, @itemID, @title, @price, @quantity, @totalPrice, @imageUrl)";
            sqlCmd = new SqlCommand(cmdString, sqlConn);
            string orderID = System.Guid.NewGuid().ToString();
            sqlCmd.Parameters.Add(new SqlParameter("orderID", newOrderDetail.OrderID));
            sqlCmd.Parameters.Add(new SqlParameter("itemID", newOrderDetail.ItemID));
            sqlCmd.Parameters.Add(new SqlParameter("title", newOrderDetail.Title));
            sqlCmd.Parameters.Add(new SqlParameter("price", newOrderDetail.Price));
            sqlCmd.Parameters.Add(new SqlParameter("quantity", newOrderDetail.Quantity));
            sqlCmd.Parameters.Add(new SqlParameter("totalPrice", newOrderDetail.TotalPrice));
            sqlCmd.Parameters.Add(new SqlParameter("imageUrl", newOrderDetail.ImageUrl));
            sqlCmd.ExecuteNonQuery();

            sqlConn.Close();
        }
Ejemplo n.º 3
0
        public static List<OrderDetail> FindOrderDetailsByOrderID(string orderID)
        {
            List<OrderDetail> result = new List<OrderDetail>();

            string connectionString = WebConfigurationManager.ConnectionStrings["defaultConnectionString"].ToString();
            SqlConnection sqlConn = new SqlConnection(connectionString);
            sqlConn.Open();

            string cmdString = "SELECT * FROM [OrderDetail] WHERE OrderID=@orderID";
            SqlCommand sqlCmd = new SqlCommand(cmdString, sqlConn);
            sqlCmd.Parameters.Add(new SqlParameter("orderID", orderID));

            SqlDataReader sqlDataReader = sqlCmd.ExecuteReader();
            if (sqlDataReader.HasRows)
            {
                while (sqlDataReader.Read())
                {
                    OrderDetail newOrderDetail = new OrderDetail();
                    FillOrderDetail(sqlDataReader, newOrderDetail);
                    result.Add(newOrderDetail);
                }
                sqlDataReader.Close();
            }

            return result;
        }
Ejemplo n.º 4
0
 static void FillOrderDetail(SqlDataReader sqlDataReader, OrderDetail newOrderDetail)
 {
     newOrderDetail.OrderID = (string)sqlDataReader["OrderID"];
     newOrderDetail.OrderDetailID = (int)sqlDataReader["OrderDetailID"];
     newOrderDetail.ItemID = (string)sqlDataReader["ItemID"];
     newOrderDetail.Title = (string)sqlDataReader["Title"];
     newOrderDetail.Price = (Decimal)sqlDataReader["Price"];
     newOrderDetail.Quantity = (int)sqlDataReader["Quantity"];
     newOrderDetail.TotalPrice = (Decimal)sqlDataReader["TotalPrice"];
     newOrderDetail.ImageUrl = (string)sqlDataReader["ImageUrl"];
 }