コード例 #1
0
        /// <summary>
        /// 保存购物车数据
        /// </summary>
        /// <param name="entity">购物车数据</param>
        public static void SaveShoppingCart(ShoppingCartPersistent shoppingCart)
        {
            DataCommand cmd = DataCommandManager.GetDataCommand("ShoppingPersistent_SaveShoppingCart");

            cmd.SetParameterValue("@Key", "");
            cmd.SetParameterValue("@KeyAscii", 0);
            cmd.SetParameterValue("@CustomerSysNo", shoppingCart.CustomerSysNo);
            cmd.SetParameterValue("@ShoppingCart", shoppingCart.ShoppingCart);
            cmd.SetParameterValue("@ShoppingCartMini", shoppingCart.ShoppingCartMini);
            cmd.ExecuteNonQuery();
        }
コード例 #2
0
        public static ShoppingCart GetShoppingCartByCustomer(int userSysNo)
        {
            ShoppingCart shoppingCart = GetShoppingCartFromCookieOrCreateNew();

            if (shoppingCart == null)
            {
                shoppingCart = new ShoppingCart();
            }
            string key = CookieHelper.GetCookie <string>(MY_SHOPPINGCART_SIGN_KEY);

            if (String.IsNullOrEmpty(key))
            {
                key = Guid.NewGuid().ToString("N");
                CookieHelper.SaveCookie <string>(MY_SHOPPINGCART_SIGN_KEY, key);
            }
            shoppingCart.ShoppingCartID = key;
            if (userSysNo > 0)
            {
                //获取数据库最新数据购物车
                ShoppingCartPersistent shoppingCartPersistent = ShoppingPersistentDA.GetShoppingCartByCustomer(userSysNo);
                ShoppingCart           newShoppingCart        = new ShoppingCart();
                if (shoppingCartPersistent != null && !string.IsNullOrEmpty(shoppingCartPersistent.ShoppingCart))
                {
                    newShoppingCart = SerializationUtility.JsonDeserialize2 <ShoppingCart>(shoppingCartPersistent.ShoppingCart);
                }
                //判断购物车是否发生变化
                if (newShoppingCart.ShoppingCartID != shoppingCart.ShoppingCartID)
                {
                    newShoppingCart.ShoppingCartID = shoppingCart.ShoppingCartID;
                    //合并购物车
                    MergeShoppingCart(shoppingCart, newShoppingCart);
                }
                //写入DB
                ShoppingPersistentDA.SaveShoppingCart(new ShoppingCartPersistent()
                {
                    CustomerSysNo    = userSysNo,
                    ShoppingCart     = SerializationUtility.JsonSerialize2(shoppingCart),
                    ShoppingCartMini = ""
                });
            }
            else
            {
                shoppingCart = GetShoppingCartFromCookie();
            }
            //写入Cookie
            CookieHelper.SaveCookie <ShoppingCart>(MY_SHOPPINGCART_COOKIE_NAME, shoppingCart);
            return(shoppingCart);
        }