예제 #1
0
        public static void DeleteCartRecord(CartRecord newCartRecord)
        {
            string connectionString = WebConfigurationManager.ConnectionStrings["defaultConnectionString"].ToString();
            SqlConnection sqlConn = new SqlConnection(connectionString);
            sqlConn.Open();

            string cmdString;
            SqlCommand sqlCmd = new SqlCommand();

            //             if (newCartRecord.UserID != null)
            //             {
                cmdString = "DELETE FROM CartRecord WHERE UserID=@userID AND ItemID=@itemID";
                sqlCmd = new SqlCommand(cmdString, sqlConn);
                sqlCmd.Parameters.Add(new SqlParameter("userID", newCartRecord.UserID));
                sqlCmd.Parameters.Add(new SqlParameter("itemID", newCartRecord.ItemID));
            //             }
            //             else if (newCartRecord.Ip != null)
            //             {
            //                 cmdString = "DELETE FROM CartRecord WHERE Ip=@ip AND ItemID=@itemID";
            //                 sqlCmd = new SqlCommand(cmdString, sqlConn);
            //                 sqlCmd.Parameters.Add(new SqlParameter("ip", newCartRecord.Ip));
            //                 sqlCmd.Parameters.Add(new SqlParameter("itemID", newCartRecord.ItemID));
            //             }
            sqlCmd.ExecuteNonQuery();
        }
예제 #2
0
        public static void AddCartRecord(CartRecord newCartRecord)
        {
            //判断购物车中是否已经有该物品
            string connectionString = WebConfigurationManager.ConnectionStrings["defaultConnectionString"].ToString();
            SqlConnection sqlConn = new SqlConnection(connectionString);
            sqlConn.Open();

            string cmdString;
            SqlCommand sqlCmd = new SqlCommand();
            //删除旧值
            cmdString = "DELETE FROM CartRecord WHERE UserID=@userID AND ItemID=@itemID";
            sqlCmd = new SqlCommand(cmdString, sqlConn);
            sqlCmd.Parameters.Add(new SqlParameter("userID", newCartRecord.UserID));
            sqlCmd.Parameters.Add(new SqlParameter("itemID", newCartRecord.ItemID));
            //             else if (newCartRecord.Ip != null)
            //             {
            //                 cmdString = "DELETE FROM CartRecord WHERE Ip=@ip AND ItemID=@itemID";
            //                 sqlCmd = new SqlCommand(cmdString, sqlConn);
            //                 sqlCmd.Parameters.Add(new SqlParameter("ip", newCartRecord.Ip));
            //                 sqlCmd.Parameters.Add(new SqlParameter("itemID", newCartRecord.ItemID));
            //             }
            sqlCmd.ExecuteNonQuery();
            //添加新值
            cmdString = "INSERT INTO CartRecord (UserID, ItemID, Count, ModifiedDate) VALUES (@userID, @itemID, @count, @modifiedDate)";
            sqlCmd = new SqlCommand(cmdString, sqlConn);
            sqlCmd.Parameters.Add(new SqlParameter("userID", newCartRecord.UserID));
            sqlCmd.Parameters.Add(new SqlParameter("itemID", newCartRecord.ItemID));
            sqlCmd.Parameters.Add(new SqlParameter("count", newCartRecord.Count));
            sqlCmd.Parameters.Add(new SqlParameter("modifiedDate", DateTime.Now));
            //sqlCmd.Parameters.Add(new SqlParameter("ip", newCartRecord.Ip));
            sqlCmd.ExecuteNonQuery();

            sqlConn.Close();
        }
예제 #3
0
 protected void Button3_Click(object sender, EventArgs e)
 {
     //这个按钮模拟了购物车页面上删除商品的按钮
     //只需指定UserID与ItemID即可
     CartRecord cr = new CartRecord();
     cr.UserID = 8;
     cr.ItemID = "55ddd15c-f6b7-4b2f-aa1d-ac9382510e8a";
     CartService.DeleteCartRecord(cr);
     Refresh();
 }
예제 #4
0
 protected void Button1_Click(object sender, EventArgs e)
 {
     //添加物品1,这个按钮模拟了单个商品页面上的“加入购物车”按钮
     CartRecord cr = new CartRecord();
     cr.UserID = 8;
     cr.ItemID = "55ddd15c-f6b7-4b2f-aa1d-ac9382510e8a";
     cr.Count = 1;
     CartService.AddCartRecord(cr);
     Refresh();
 }
예제 #5
0
 protected void Button2_Click(object sender, EventArgs e)
 {
     //修改物品2的数量,这个按钮模拟了购物车页面上修改商品数量的按钮
     //“从0到1的添加”与“从1到N的更新”两个操作统一使用AddCartRecord接口
     CartRecord cr = new CartRecord();
     cr.UserID = 8;
     cr.ItemID = "b0066833-211a-4f63-ad19-e43c77edae8d";
     cr.Count = Int32.Parse(TextBox1.Text);
     CartService.AddCartRecord(cr);
     Refresh();
 }
예제 #6
0
        public string AddItemToCart(string name, string password, string itemID, int itemCount)
        {
            bool success = UserService.VerifyPassword(name, password);
            if (!success) return JSONService.JsonSerializer(success);

            CartRecord newRecord = new CartRecord();
            newRecord.ItemID = itemID;
            newRecord.Count = itemCount;
            newRecord.UserID = UserService.GetUserByUsername(name).UserID;
            CartService.AddCartRecord(newRecord);
            return JSONService.JsonSerializer(success);
        }
예제 #7
0
 protected void DeleteLinkButton_Click(object sender, EventArgs e)
 {
     LinkButton deleteLinkButton = (LinkButton)sender;
     String deleteItemID = deleteLinkButton.ID.Substring("delete_".Length);
     CartRecord deleteCartRecord = new CartRecord();
     deleteCartRecord.ItemID = deleteItemID;
     deleteCartRecord.UserID = AuthenticationService.GetUser().UserID;
     CartService.DeleteCartRecord(deleteCartRecord);
     //OnUpdateProductNumInCart();
     //renderCartTable();
     Response.Redirect(Request.Url.ToString());
 }
예제 #8
0
 protected void AddCartButton_Click(object sender, EventArgs e)
 {
     if (AuthenticationService.GetUsername() == null)
     {
         Response.Redirect("/Page/index.aspx");
     }
     else
     {
         CartRecord cartRecord = new CartRecord();
         cartRecord.UserID = AuthenticationService.GetUser().UserID;
         cartRecord.ItemID = productItem.ItemID;
         cartRecord.Count = int.Parse(this.ProductNumTextBox.Text);
         CartService.AddCartRecord(cartRecord);
         Response.Redirect("/Page/Business/cart.aspx");
     }
 }
예제 #9
0
 public static bool ProductDetailAddCartButton_Click(string productID, string productNum)
 {
     if (AuthenticationService.GetUsername() != null)
     {
         CartRecord cartRecord = new CartRecord();
         cartRecord.UserID = AuthenticationService.GetUser().UserID;
         cartRecord.ItemID = productID;
         cartRecord.Count = int.Parse(productNum);
         CartService.AddCartRecord(cartRecord);
         //Response.Redirect("/Page/V2/Business/cartDetail.aspx");
         return true;
     }
     else
     {
         return false;
     }
 }
예제 #10
0
        public static List<CartRecord> FindCartRecordByUserID(int UserID)
        {
            List<CartRecord> result = new List<CartRecord>();

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

            string cmdString = "SELECT * FROM [CartRecord] WHERE UserID = @userID";
            SqlCommand sqlCmd = new SqlCommand(cmdString, sqlConn);
            sqlCmd.Parameters.Add(new SqlParameter("userID", UserID));

            SqlDataReader sqlDataReader = sqlCmd.ExecuteReader();
            if (sqlDataReader.HasRows)
            {
                while (sqlDataReader.Read())
                {
                    CartRecord newCartRecord = new CartRecord();
                    FillCartRecord(sqlDataReader, newCartRecord);
                    result.Add(newCartRecord);
                }
                sqlDataReader.Close();
            }

            return result;
        }
예제 #11
0
 static void FillCartRecord(SqlDataReader sqlDataReader, CartRecord newCardRecord)
 {
     newCardRecord.UserID = (int)sqlDataReader["UserID"];
     newCardRecord.ItemID = (string)sqlDataReader["ItemID"];
     newCardRecord.Count = (int)sqlDataReader["Count"];
     newCardRecord.ModifiedDate = (DateTime)sqlDataReader["ModifiedDate"];
     //newCardRecord.Ip = (string)sqlDataReader["Ip"];
 }
예제 #12
0
        public string RemoveItemFromCart(string name, string password, string itemID)
        {
            bool success = UserService.VerifyPassword(name, password);
            if (!success) return JSONService.JsonSerializer(success);

            CartRecord newRecord = new CartRecord();
            newRecord.ItemID = itemID;
            newRecord.UserID = UserService.GetUserByUsername(name).UserID;
            CartService.DeleteCartRecord(newRecord);
            return JSONService.JsonSerializer(success);
        }
예제 #13
0
        private Table renderProductNumSelector(CartRecord cartRecord)
        {
            Table table = new Table();
            TableRow tr = new TableRow();

            TableCell tc = new TableCell();
            Panel productDetailMinusProductIcon = new Panel();
            productDetailMinusProductIcon.CssClass = "productDetailMinusProductIcon";
            tc.Controls.Add(productDetailMinusProductIcon);
            tr.Controls.Add(tc);

            tc = new TableCell();
            Panel panel = new Panel();
            TextBox textBox = new TextBox();
            textBox.CssClass = "productDetailProductNumText";
            textBox.Text = cartRecord.Count.ToString();
            textBox.ID = "num_" + cartRecord.ItemID;
            textBox.TextChanged += new EventHandler(textBox_TextChanged);
            textBox.AutoPostBack = true;
            panel.Controls.Add(textBox);
            tc.Controls.Add(panel);
            tr.Controls.Add(tc);

            tc = new TableCell();
            Panel productDetailPlusProductIcon = new Panel();
            productDetailPlusProductIcon.CssClass = "productDetailPlusProductIcon";
            tc.Controls.Add(productDetailPlusProductIcon);
            tr.Controls.Add(tc);

            table.Controls.Add(tr);
            return table;
        }
예제 #14
0
        private TableRow renderCartTableItem(CartRecord cartRecord)
        {
            Item item = ItemService.GetItemByItemID(cartRecord.ItemID);
            TableRow tr = new TableRow();

            TableCell tc = new TableCell();
            Panel cartTableItemProductContainer = new Panel();
            cartTableItemProductContainer.CssClass = "cartTableItemProductContainer";
            Panel cartTableItemProductImageContainer = new Panel();
            cartTableItemProductImageContainer.CssClass = "cartTableItemProductImageContainer";
            Image img = new Image();
            img.ImageUrl = item.ImageUrl;
            cartTableItemProductImageContainer.Controls.Add(img);
            Panel cartTableItemProductTextContainer = new Panel();
            cartTableItemProductTextContainer.CssClass = "cartTableItemProductTextContainer";
            Label label = new Label();
            label.Text = item.Title;
            cartTableItemProductTextContainer.Controls.Add(label);
            cartTableItemProductContainer.Controls.Add(cartTableItemProductImageContainer);
            cartTableItemProductContainer.Controls.Add(cartTableItemProductTextContainer);
            tc.Controls.Add(cartTableItemProductContainer);
            tr.Controls.Add(tc);

            tc = new TableCell();
            Panel cartTableItemNumContainer = new Panel();
            cartTableItemNumContainer.CssClass = "cartTableItemNumContainer";
            if (!isReayOnly)
            {
                cartTableItemNumContainer.Controls.Add(renderProductNumSelector(cartRecord));
            }
            else
            {
                Label numLabel = new Label();
                numLabel.Text = cartRecord.Count.ToString();
                cartTableItemNumContainer.Controls.Add(numLabel);
            }
            tc.Controls.Add(cartTableItemNumContainer);
            tr.Controls.Add(tc);

            tc = new TableCell();
            Panel cartTableItemPriceContainer = new Panel();
            cartTableItemPriceContainer.CssClass = "cartTableItemPriceContainer";
            Label pricelabel = new Label();
            pricelabel.Text = "¥" + item.Price;
            cartTableItemPriceContainer.Controls.Add(pricelabel);
            tc.Controls.Add(cartTableItemPriceContainer);
            tr.Controls.Add(tc);

            tc = new TableCell();
            Panel cartTableItemOptionContainer = new Panel();
            cartTableItemOptionContainer.CssClass = "cartTableItemOptionContainer";
            if (!isReayOnly)
            {
                LinkButton deleteLink = new LinkButton();
                deleteLink.Text = "删除";
                deleteLink.ID = "delete_" + cartRecord.ItemID;
                deleteLink.Click += DeleteLinkButton_Click;
                cartTableItemOptionContainer.Controls.Add(deleteLink);
            }
            else
            {

            }
            tc.Controls.Add(cartTableItemOptionContainer);
            tr.Controls.Add(tc);

            return tr;
        }
예제 #15
0
 public static bool DeleteCartRecord(CartRecord newCartRecord)
 {
     CartRecordRepository.DeleteCartRecord(newCartRecord);
     return true;
 }
예제 #16
0
 public static bool AddCartRecord(CartRecord newCartRecord)
 {
     CartRecordRepository.AddCartRecord(newCartRecord);
     return true;
 }